Announcing TubePress Pro

Some of you may have noticed that the language on this site has changed over the past few weeks to become slightly less WordPress-centric. If you’ve been watching the code evolve, you’ll also have noticed that the amount of code specific to the WordPress environment has been slowly shrinking. My goal with all of this has been to allow TubePress break free from the restriction of running inside WordPress. Today, with the formal introduction of TubePress Pro, that goal has been reached! With TubePress Pro, you can now get all of the benefits of the TubePress plugin in any PHP environment. Essentially, it’s standalone TubePress!

One thing to note is that I have decided to charge a reasonable fee for TubePress Pro. The donations to TubePress thus far haven’t been quite what I expected, and I hope that you’ll respect my decision to offer this paid product alongside the original. Both the WordPress plugin and TubePress Pro are both 100% GPL‘d, so you’ll always have the source code available to tweak if you like. The WordPress plugin will always been 100% free.

You might be thinking, “Great, another piece of software tacking ‘Pro’ on the end of its name.” I’ve actually put a good amount of thought into what to call this product. I think “Pro” sums up the goals best, as I plan to continue to add features to TubePress Pro that would be of interest to professional bloggers and site administrators (integrated ad support comes to mind).

TubePress Pro shares much of its code base with the original WordPress plugin, so if you’re happy with the TubePress as it is, you can count on me to continue to maintain the code and add features.

If you’d like to try TubePress Pro, head over to the downloads page and give it a try. The TubePress documentation has been updated to show you how easy it is to use.

Thanks, and enjoy!

TubePress 1.6.9 Released Today!

New features and bug fixes include:

  • Default thumbmail URL now uses “default.jpg” (closes ticket #47)
  • Fixed bug that resulted in inability to paginate past the first page of a multi-page gallery.
  • Version bumps
  • Under the hood
    • Huge amounts of unit/integration tests
    • Major refactoring of classes (now using dependency injection)

Download from http://tubepress.org/download and enjoy.

Stand by in the next day or two for an announcement regarding TubePress Pro, which will enable you to use TubePress anywhere that runs PHP!

TubePress 1.6.7 Released

I’m happy to announce the latest stable version of TubePress. This release includes many bug fixes, as well as the following cool new features:

  • Ability to apply random sort order to your YouTube galleries
  • Toggle the request cache on or off
  • YouTube connection test in debugging mode

Full release notes can be found here. Grab version 1.6.7 from the downloads page. Enjoy!

TubePress 1.6.6 Released - Widgetized!

I’m happy to announce the release of version 1.6.6 of TubePress. This version includes the ability to have a gallery of videos in your WordPress sidebar as a widget - a long asked for feature! (closes Ticket #12). Here are the rest of the new features:

  • Removed pass-by-reference warnings (closes Ticket #34)
  • Ability to limit length of video descriptions
  • Option to toggle relative dates/times for video upload timestamps
  • Swedish translation. Thanks to Mikael Jorhult
  • Improved error handling for PHP installations with suppressed error output
  • Removed several small bugs that affected users of PHP < 5.2.1

Grab your copy now from the download page. Enjoy!

Hilarity in the Discussion Group

TubePress is released under the GNU General Public License Version 3. Let’s start with a quote from the license (which, not conicidentally, can be found in every single source file of TubePress)

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE

Doesn’t get much clearer than that. It means that the author will try his/her best to meet the needs of the user, but this contract comes with zero expectations on either the user’s or the developer’s end.

I’m passionate about open source software. At work we use dozens of programs in our production enterprise apps. Indeed, the Department of Defense has acknowledged the huge benefits of utilizing open source software throughout the military.

In addition, TubePress is one of the thousands of programs that is almost entirely developed by a single person in his/her spare time: me. Spare time is not something that I have a lot of - who does? But I devote as much as I possibly can to TubePress. Why? Because I love writing software. I love seeing people use the apps I write. It’s fun for me to help people debug their technical problems. I’m a software development from 7:30am to 5pm, then I get home and squeeze in another hour or two of development on personal projects.

With that said, let’s examine some amusing recent activity in the TubePress forums from a user with the pseodonym of “mikey1.” A guy that goes by Mikey? You know this is gonna be good.

First, our boy Mikey starts yesterday afternoon with a common bug that affects users of version 1.6.5:

    Hi, I just started using Tube Press, and I really like it, I have just
    one problem, my thumbnals show up, but whenever I click on one, it
    always goes to the same first clip, is this a known problem. Also it
    works in my 2.6 blog but not in my 2.5.1 blog, I get the following
    error.
    Call-time pass-by-reference has been deprecated - argument passed by
    value; If you would like to pass it by reference, modify the
    declaration of [runtime function name](). If you would like to enable
    call-time pass-by-reference, you can set
    allow_call_time_pass_reference to true in your INI file. However,
    future versions may not support this any longer. in /var/www/vhosts/
    greenroomuk.com/httpdocs/wordpress/wp-content/plugins/tubepress/
    tubepress_main.php on line 22
    Any help Appreciated. Mike.

Pretty usual post. And under other circumstances I’d have been happy to point him in the right direction. Had he spent 5 seconds searching for this error message he’d have found the solution that was posted weeks ago. We’ll give him the benefit of the doubt. The next message came a mere 10 hours later:

    Its become obvious that no one answers the problems regarding tube
    press on google groups, therefore, today I have deleted this plugin,
    and will advise. any members on my different blogs, not to use it. The
    developer seems unavailable and uninterested in the plugin, and it
    doesn't work on 2.6 or 2.5.1

Ouch! I must’ve misplaced the “tube press” SLA that I signed with Mr. Mikey. Again, had he even bothered to search the 400+ messages in the discussion group, he’d have seen that I had personally and happily responded to the vast majority of them. I guess my regular commits over the past two years doesn’t meet Sgt. Mikey’s definition of “interested.”

But wait! It gets even better:

    This is totally unnecessary, making people sign in to google groups
    for no response, no help.
    Plus the fact I'm too busy running my own sites to have my members
    constantly complaining about plugins that developers obviously have no
    interest in, and yes I know the standard answers, "If you don't like
    it, don't use it".

It’s gonna be sad to see Capt. Mikey’s 3 users not use TubePress. But he’s obviously a very important, busy person, and who can blame him for not being able to wait a day or two for a response?

Anyone that knows me personally will agree that I’m a pacifist. Under no circumstances will I provoke a fight. But if you know me, you’ll also know that I have no tolerance for morons like Muttonhead Mikey who go through life bullying people around with criticism that is 1) completely non-constructive and 2) comes from someone who is in no position to offer criticism in the first place. Mikey reminds me of one those individuals that anyone who works in the tech industry knows; he has some vague understanding of technical concepts, probably has minimal education/training in the field, surrounds his/her self with sycophants, and finds it necessary to remind everyone of their intelligence and grandeur - hence the “too busy running my own sites” comment. Manly Mikey must be one hell of a system admin - he spent all day yesterday trying to track down a PHP problem that the most barely competent server administrator could fix in an instant. (Here’s a hint, Mikey, it’s called the “PHP error log”)

It’s important to stand up to these pompous pricks. Because if nobody ever confronts them, then they’ll go through the rest of their life acting like they’re hot shit at the expense of anyone who has to deal with them.

Good riddance, Mikey!

TubePress 1.6.5 Is Out

Grab your copy from the download page or checkout the latest source. This version has plenty of bug fixes, optimizations, a security fix, and these great new features:

  • i18n capability! TubePress can now be easily translated into any language. Please see the translation docs for more info
  • Upgrades from here on out will no longer reset your global TubePress settings
  • Multiple galleries on a single post/page are now possible

As always, you can see the full version history here. Many thanks to all the users who helped test the changes since previous versions. Since opening up the subversion repository, development has been a whole lot smoother and (perhaps more importantly) a lot more fun.

Finally, I’m asking anyone who speaks a language other than English to please consider contributing! It would take about 10 minutes of your time, and you can feel good about contributing to a 100% open source project.

Enjoy the new version!

TubePress 1.6.0 Final

I’m happy to announce that TubePress 1.6.0 is now available for download. Thanks to all who helped test and debug 1.6.0-beta! The documentation will be updated shortly to reflect the new features.

Please keep in mind that 1.6.0 requires PHP5 or higher; it should fail gracefully under PHP4.  For those who cannot upgrade to PHP5, I will provide maintenance releases for version 1.5.7, but supporting the 1.6.0 version and beyond will take priority.

Have fun blogging!

TubePress 1.6.0-beta Available!

It’s been several months, but a new release of TubePress is available for download. This version includes lots of new features and a significant overhaul of the code base, so it will be released as beta until we can confirm that it’s relatively bug-free. Please give it a test and report any problems over at the issues page or on the discussion forum. Here are the new features…

  • PHP5 only. This includes an overall rewrite of the code base to take advantage of PHP5-only stuff
  • Responses from YouTube are now cached
  • New galleries
    • Top favorites
    • Most recently added
    • Most discussed
    • Most linked
    • Most responded
  • New way to watch: Shadowbox.js
  • Removed “New Window” player
  • Much more control over embedded player
    • Toggle “related videos” feature after a video finishes
    • Choose from several colors
    • Toggle auto-play
    • Toggle “enhanced genie menu” when mouse enters video area (instead of user clicking the “menu” button)
    • Toggle video loop
  • Interface improvements
    • Removed border and scroll bars from gallery
    • Removed time of day from date uploaded
    • Changed upload label from “Uploaded date” to “Uploaded”
    • Pagination now supports HTTP/HTTPS and non-standard ports
    • Simplified templating (easier to customize the look of your galleries)
  • Issues/enhancements closed
  • Upgrade source to GPLv3

It also works with WordPress 2.5, though the options page doesn’t look quite as nice. Enjoy!

TubePress 1.5.6 Is Out

This version includes fixes for all the bugs filed with version 1.5.5, but perhaps more importantly, fixes a major bug with displaying video titles. If you notice that only the first letter of each title is being displayed, you should upgrade! It appears to be the result of a change in the video feed from YouTube. Download the update using the link on the right! 

TubePress 1.5.5 (RC1), Site Changes

This is the first version of TubePress that is backed by the GData API. What does that mean for you?

  • “Favorites” mode now displays up to 500 videos
  • “Search” mode now can return up to 1,000 videos
  • New mode: videos for mobile phones
  • New mode: most-viewed videos from today, this week, this month, or all time
  • Customize the order of galleries by view-count, rating, relevance, or date-updated
  • Randomize thumbnails (most videos come with 4 thumbnails, this option will mix it up for each pageload)
  • Filter “racy” videos from galleries
  • Option to show a video’s category in its metadata

There’s also tons of enhancements and a few bug fixes reported from previous versions.

I’ve also decided to change the organization of the site. Tubepress.org will remain the plugin’s main home, but the documentation, discussion forums, and development area (downloads and tickets) will move to groups.google.com and tubepress.googlecode.com. The existing forums will stay up as read-only and are available here.

Lastly, and this is important, this will be the last version of TubePress that supports PHP4. The plugin is getting quite complex and PHP4’s OOP model isn’t nearly strong enough to keep it manageable and robust.

Give 1.5.5 a try and please report any bugs that you find!