Open Source Failures
There are numerous examples of successful Open Source projects, however, little is said about the failures. Well, I have one to talk about: Game Launcher. The project itself isn’t really a failure. It’s actually quite a popular project, currently averaging 750-1000 downloads per month on SourceForge. And there hasn’t even been a release in the last year and a half. But it’s an Open Source failure. I am still the only developer, after almost 3 years of being available on SourceForge. I have received 1 patch, and only 1 developer has even tried to contribute. So what happened? I think the main issue is who the end users are. In Game Launcher’s (GL’s) case, the audience is usually someone involved in the emulation community. But they are just that: end-users who want to play games. Not programmers. So the whole “scratch an itch” phenomenon just cannot happen. Most GL user’s just cannot contribute code. Ok, well, I hear it now… why don’t the contribute in other ways like documentation? And in some ways they do. When someone asks a question on the mailing list, others do pipe in and answer questions, and this is great. But is it really unique to Open Source? Couldn’t this user community have been cultivated on a closed source app? Sure… it can, and does happen.
So where does Open Source excel? Infrastructure. From programs, like Linux, Apache, and Postfix, to languages like Perl, Python, and Ruby, to libraries like Jakarta Commons, Boost, and expat, Open Source flourishes in infrastucture. Why? I think because the end users are programmers, or at least try to be. The chances of finding other code contributors increases immensely when 80%-100% of your users can code and send you patches.
I’ll use GL as more proof of this. GL relies on many Open Source projects for the main graphics and sound API plus add-ons for playing MP3s, displaying PNGs, using TrueType fonts, and a C++ compiler, even under DOS and Windows. Again these are all infrastructure projects. And not only am I a user of these projects, I’ve actually contributed source code patches back to a number of them, some bug fixes and some new features. If these projects didn’t exist, not only would GL have taken much longer to write, but I would have written tons generic code that was not the core focus of GL.
Sure, there are the occasional successful end user apps, like Mozilla, OpenOffice, and Eclipse. But these tend to start under different circumstances than all the infrastructure examples listed above. They were not scratching an itch. Rather they were started by large companies with large amounts of funding, often from failed closed source apps.
So what does this bode for the future of Game Launcher? Not sure. I’ve been seriously thinking about releasing a commercial version of it. I figure if I’m not getting the benefit of Open Souce (other contributors), why should everyone else (free as in beer)? Perhaps that’s selfish, but sometimes it’s better to be less altruistic. At least if there’s an income stream, I will be more likely to spend time coding on it. Time, which has been increasingly difficult to find. And it’s not that I don’t want to code GL, but there’s just other stuff to do. Also, the original itch that started GL doesn’t need scratching much anymore. GL pretty much does what I set out to do.