Thursday, July 10

Why Open Source Software Sucks

Most of us should have used open source software by now. Firefox, for example, is pretty huge and used by loads of people, most possibly not even aware that it's OSS. And I'd say that a great deal of software I use has been downloaded from SourceForge, one of the biggest (if not the biggest) repositories of OSS. It's not about it being free either - Internet Explorer is just as free as Firefox and yet it's the latter that's proving to be comparably popular. It's clear that OSS is a good thing for obvious reasons.

Or so I thought. Around 60% of my time on this project so far has been wrestling with the quirks of the major bits of OSS that I've been trying to use and I like to believe that this isn't just because I'm not accustomed to it ("you just need to get used to it" is the top reason given for my pain). Although most of my troubles have been with MySQL (enough to warrant a whole new post after this one), I've also had some issues with Ubuntu.

First up, it's all so poorly supported. I've found that the "community" that people often rave about to be a bit of a myth. The community doesn't "just" answer your questions for a variety of reasons: either they're too easy, too obscure or not sexy enough. Either way it's a bit of a struggle to get a direct solution to any problem you may have - you have to find your own answer by piecing together scraps you find all over the place. Still, I've found newsgroups to be more helpful than web forums, although only just.

Related to this is the poor documentation. So much knowledge, often basic, seems to be assumed. This means you can't even get started since you're unable to equip yourself with the fundamentals. For example, even after installing quite a few applications on to my Ubuntu build I'm still buggered if I know where a particular application has been installed, keeps its config, or what the heck the etc folder is for. And I can't even find these things out.

Other things seem to be hallmarks of some OSS. Its incomplete (you sometimes have to resort to a text file to edit something because a config screen hasn't been updated), inconsistent (file and configuration locations) and arbitrary (for the same application some things will be in a start menu while others will have to be sudo'd in a terminal).

On the other hand Ubuntu and MySQL at least seem to be just as stable and responsive as anything commercial I've used, sometimes even less so - for all its criticisms I've had to reboot my Vista install less than my Ubuntu, while applications take just as long to start up on each.

Okay, I'll admit that a lot of this does indeed have to do with my not being familiar with the tools I'm trying to use. Maybe I've forgotten the pain I went through learning to use Windows or MySQL. But then on the other hand I have to learn something new each time I use a new application - there was no esoteric quirkiness when using Firefox for the first time, for example. And learning isn't free, it costs time, and I expect some kind of return for that time. So far I've not seen any with Ubuntu or MySQL.

No, the only real benefit I see is with cost - the lack of commercial licences for OSS makes it a very appealing base on which to build a technology business. It's just a shame that the general principle of getting what you pay for seems to hold fully with OSS too.

No comments:

Post a Comment