The competition between open-source projects and retail applications is a never-ending struggle. Even when two products aren't in direct competition -- like Adobe's Photoshop versus the GNU Image Manipulation Program -- there's still an underlying push and pull for your attention and resources. The struggle only deepens when the retail version of the two programs approaches an inexpensive or free pricing model. Open-source is an alternative, but when is it the better alternative?
Open-source software developer Patrick McKenzie wrote a post recently about the various ways retail software developers can out-develop open-source alternatives to their products. While it was geared toward the perspective of an open-source creator, he nevertheless gave some good insight as to what differentiates quality open-source projects from the muck. And a number of his points apply to some of the very applications I've recommended in these weekly freeware/open-source roundups.
What does the program do?
To start, McKenzie suggests that a number of open-source projects navel gaze on the specifics of the software and the licensing behind its creation rather than the solution said software provides for a user. For this, look no further than a project like FreeNAS. FreeNAS is a wonderful open-source alternative to pre-installed software setups on network-attached storage devices. But if you check out the project's Web site, you will have no indication as to why you would ever want to install the app. What's the benefit? There's a ton of information about the program's features, requirements, and updates... but comparisons of FreeNAS versus common open-source and retail equivalents are sorely lacking. What problem does FreeNAS solve? What makes it better than the standard? Why should I turn to open-source?
McKenzie's second point concerns the design of open-source projects, and this one hits especially close to home. I discover a number of interesting applications in my search across the Web for new projects to highlight. Invariably, I have to kick some out of the pile--not because they're poor implementations, but because they're ugly enough to distract from the application's powerful functionality. This proved especially heinous when I was going through finance-related open-source applications for Maximum PC's tax-time feature. Hint to open-source developers: If your program doesn't look at least as smooth as Excel, people aren't going to want to use it.
User Experience is Full-Circle
The user experience presented by an application--or SourceForge itself, in McKenzie's example--is another determining factor that separates quality open-source from questionable applications. It's difficult to parse out specific example in this case, but there are a number of open-source programs that look as if they were created using a 7-year-old installation mechanism. Worse, these programs won't even leave a means for uninstalling the application, save for whatever you might be able to accomplish in the Windows Control Panel.
I never used to use Revo Uninstaller before I started running these open-source roundups; I now consider it a critical component of my work. Invariably, of the five open-source applications I install each week, two to three will leave junk on my hard drive or, worse, spare folders in critical system areas (My Documents, an uber pet peeve). A quality user experience doesn't begin and end with the actual running of the application--the entire process is as important as the actual program itself, and this is an area where retail applications can shine over their open-source friends.
Help! I Need Somebody! Help!
Finally, there are the support mechanisms. Nothing's more frustrating than having to wade through Google-searched forum posts or those damnable Wikis just to find the answer to a simple question about lost features or a confusing user interface. When possible, open-source software needs to walk users by the hand through every facet of its operation. I'd love to see a common video encoding application actually bundle half of the information found across the Internet about encoding types and mechanisms. Better yet, I'd love for a video encoding app to recognize what file I slap into its "Input" field and give me a step-by-step overlay as to how I can go about converting that video to any format the encoder supports.
Simplifying this concept, quality open-source projects are more than just scatter houses of user-built information across the Internet. They are apps like Pidgin, which integrate comprehensive search listings of potential problems, mailing list support, IRC queries, and large user guides right on the big-and-bold help section off of the main site's homepage. Making the support system as easy as possible for the user to interact with is the mark of a solid open-source project. Querying hundreds of Internet forums to find answers is the surest way to turn a person back to the retail alternative.
One of the greatest advantages of open-source software--for consumers, at least--is that it provides a free method for accomplishing tasks that would otherwise require you to purchase expensive software. But just because a program is priced to nothing doesn't mean that it's automatically going to attract user interest regardless of its design, user experience, or marketing. Free software isn't a free pass to ignore the basic qualifications that retail software has to entertain to attract customers.