July 19, 2009
Recently, Michael Torbert, developer of the popular All-In-One SEO Pack (AIOSEOP) plugin, released a major upgrade to, among various other bugfixes and feature enhancements, future-proof the plugin against scaling issues. I worked with him on beta-testing the upgrade, and found it to be flawless. I was one of many, but gauging by the reaction of a few, there were not enough of us who did the testing.
Last Saturday morning I was motivated to write a helpful, if but a tad acerbic, tutorial on what to do next after the one-click upgrade. It got plenty of views and a few thank-yous, and we did come across a few genuine cases where the meta information was not being retrieved properly. Michael addressed those issues in subsequent upgrades and bugfixes. There have been reactions of ill will: some level-headed, some absolutely histrionic, but for the most part, people seem to have moved on with their lives and either accepted that this was a hiccup, or have chosen a different SEO plugin for their sites.
I would be nothing if not the type to find a teachable moment. When I started blogging six long years ago I didn’t worry about all that “SEO crap,” and to an extent, I still don’t. After two years of hiding from search engines using robots.txt, I’ve decided to open the site up again following my growing exposure on Twitter, and rejoining the WordPress community this year through my attendance at WordCamp Mid-Atlantic. I wanted to clean up my titles really well, and pull in meta information, and I want to do it using simple WordPress code that I cooked up myself. It just wasn’t happening. I was producing some wacky stuff that would work on some views but not in others, so I took the plunge and used AIOSEOP.
Free/Libre Open Source Software (FLOSS), comes with different license flavors, from the “permissive free licenses” (BSD or MIT, for example) to the copyleft GPL. Software under these licenses power a large portion of the web. They have made development easy for new and seasoned programmers a like, and have brought people together in ways that proprietary software really has not. Free, however, comes with costs too. Sadly, this concept is beyond the grasp of some people. The largest cost for Free is time. No matter how well-studied, well-researched, and optimized the user interface is for a FLOSS product, there will always be someone, somewhere, with a question. That’s why documentation is very important for FLOSS, just as it is important for a piece of proprietary software.
The difference in user support for FLOSS vs. proprietary is that in the latter case, companies have someone on staff to do the support and documentation, and that the costs to hire this person (salary, benefits, insurance, taxes) are built into the pricing model for the product. With the former, volunteers have to offer their time and effort, with no reasonable expectation for direct compensation from the project leaders. The same applies for development, testing, and just about every phase of the software’s life cycle. If the cost of FLOSS is time and effort, or “sweat equity,” then, the more people participate in the process, the cheaper it becomes for everyone.
Let’s take as example the AIOSEOP issue. Michael did his damned best to solicit testers for the beta version of the upgrade. I was one of them, and like I said earlier, it appears there weren’t enough people who did the testing because we all did fine with the beta versions. Had more people signed up and taken the process seriously, perhaps the issues that required version 1.6.4 may have been stemmed from the start. Or not. Whether it’s FLOSS or proprietary, there will always be an aberrant outlier that will pose a challenge to a software project. There are different factors that can affect this, such as adverse synergies with some other plugins.
The success of a FLOSS project lies in the ability to grow a community from which to solicit feedback and support. In this, Linux, WordPress, and whole slew of other projects have succeeded, while a few others have not. In the case of AIOSEOP, I’ve decided that I will contribute a few hours a week to writing support articles and tutorials. This is time out of my life, just as it has been time out of Michael’s life to address an exotic bug and fix it.
Perhaps the greatest, unintended cost associated with FLOSS is that, as with anything that is given away for free, it tends to breed a culture of entitlement. Because the product is so easy to come by, because there is such an enormous community behind a project, a large number of people remain incurious about what they are using. I doubt the developers of any project set out to write a piece of software whose users cared nothing about, except of course, to meet their own ends. And yet, the sense of entitlement from users of free software rivals those of some in the political arena. People need to realize that without their active participation in the testing of FLOSS, we wouldn’t get anywhere. The costs in time for testing out permutations of plugins, or different server environments, would be astronomical were it not for the willing participation of those who have an interest in seeing a particular piece of software succeed.
And this is where I am at great odds with the loudest critics of Michael Torbert and the AIOSEOP 1.6.x upgrade cycle. Too many of them have let out the pitchforks and torches without performing their due dillegence. For those who have, far too few have been gracious enough to keep the criticism to a minimum as they waited patiently for an answer, while others ran screaming for the hills in anticipation of the end of their paltry little world. Where the hell were they when beta testing was going on? If this plugin were the lifeblood of their business, they cannot just sit back idly while others tested the fidelity of the product they so rely on. Had they been active participants during beta testing, version 1.6.4′s bugfixes may have been avoided all together.
FLOSS, like I have been stressing through this article, will be nothing without the community that grows around it. This is not so much an condemnation of current attitudes; this is my way of saying “you’re all invited.”