Why OpenSource is great - Part 1

Opensource rocks. Here's one of the reasons why:

I've recently been appointed to a job as System Administrator with Catalyst IT. Catalyst is a company that totally gets Free and Open Source Software (FOSS); in fact, it's right there in their mission statement, and promoting OpenSource is their reason for existence. It was only when I saw the job, saw the company, and stopped to think, that I truly realised how much I love FOSS. It's been something that's grown over the last few years. When I was working administering both Windows and FOSS (but mostly FOSS)I knew I preferred the latter. Then I got a job where my responsibility was totally FOSS, but the company wasn't necessarily choosing it for philosophical reasons. That was ok, but after working in that environment for a while, I came to understand that what I really want to do is to work with FOSS all the time, for philosophical and technical reasons, not just because the price is attractive to my employer.

I've got a lot of detail on those philosophical reasons, which I'll share in the future as I can marshal my thoughts coherently for publication. But first, there was a rather in-your-face one that I was party to today. I'm using reprepro to implement an internal APT repository, and ran into a snag with a small limitation in the current functionality. I e-mailed the author before I left for the day, explaining what I couldn't do, and asking for pointers as to where in the code I should make certain enhancements, or to see if he had any other suggestions. Back comes an e-mail not more than 6 hours later, saying that one of the ways of achieving what I wanted had been on the todo list for a while, and that he'd just implemented it. I grabbed the latest code from the git repository, compiled it and tested it, and it worked perfectly.

Granted, it was a fairly small change, but the responsiveness is just amazing. Short of paying fairly large amounts of money, there's no way you'd ever get this level of 'service' for a closed source product. More to the point, there would be no option other than to ask, wait, and hope. In this case, if I'd not gotten a response and my need had grown too great, I would have been free to implement the change myself. And to be fair, for a lot of FOSS projects that would be the way I'd have to go. But at least I had the choice. And I now can choose if I want to backport the change to the code version I'm already using, or jump to the latest code.

There's just nothing comparable to the flexibility and agility of an FOSS project.