Open Source - Is it really value for money?

How many times do you read that free software, in the long run, costs money? Is that even true? This was one of many questions addressed by the European Open Source Convention organised by O'Reilly Media in Brussels last week.

Traditionally, closed source applications and operating systems (for example Microsoft's Windows XP and soon to be released Windows Vista) has been the only route to purchase software systems for large companies. One company writes the code, sells it, supports it, updates it, and keeps it secure. But putting all your eggs in one basket is no longer the only option. Open source applications such as the Firefox web browser and the Linux based Ubuntu operating system are generally considered to be ready for use by the non-technical consumer.

So why should going down the route of open source be something that every organisation should consider?

First of all, there is the financial argument - there is no initial cost in getting started, and with a large user base of people feeding back information, the applications tend to be more stable - and of course if a problem occurs you are not restricted to going through a single company for all your support issues, although as with any competitive industry not all open source support companies are equal.

Some of the major open source projects are co-ordinated by single for-profit firms. MySQL is a prime example. MySQL is a multithreaded and multi-user SQL database management system, available freely. MySQL make their profit in charging for support calls, with a promised 30 minute response time - but there is a huge user base so you have multiple sources to find help on the internet, from the MySQL hosted forums and mailing lists, to IRC channels and other support networks. Even a quick search through Google (which itself uses MySQL to power their AdWords service) will show a wealth of information available online.

So you are not tied to one monopolistic support contract - there is a capitalist market to choose from. Naturally the more popular open source applications will have more to choose from, but the simple benefit of being able to look at the source code yourself means that, in theory, you could simply hire a competent programming team and tweak the application to your own needs.

Open Source - not a guarantee

What is important to stress here is just because an application is open source isn't a 100 per cent guarantee that your data is going to be transportable. For that you'll need to make sure that the application uses an open standard (the format the data is saved in is specified and anyone can use it). The OpenOffice.org suite of apps for example use the Open Document Format, which is available on the web for other office applications to use. So if you do decide to switch away from Open Office, you'll be able to take all your documents with you. Contrast that to an open source application where no other application uses their format.

Open source still requires the same investigation and assessment as closed source - but everything should be in plain sight, so you can make a genuine decision with all the information. One benefit may be that, if a project decides to stop, holding the source code means you are not left high and dry - contrast this to what would happen in your company if, for example, Microsoft decided to withdraw support for Exchange.

It is also constantly evolving - as individuals and organisations decide to use the code, they make their own changes to the code, be it bug-fixes, tweaks to the code, or wholesale changes to add in new functionality. This can be a double edged sword for a business adopting open source. While it is great to know that development will not stop, it means that any changes you make will also have to be made open source (that's part of some of the licences) and handed back to the project.

Open source creates open source

This is a good thing. While you are going to have to make some changes to your employee contracts (typically the contracts will have an 'everything you write while you work for us belongs to us' clause that is going to require amendment) so that any code changes can be fed back into the source code, consider what happens when that coder's fixed contract ends and he moves onto another company in the same field. That's right, any changes he makes in his favourite open source application will be fed back into the source code, and you continue to gain benefit from his skill.

It should be noted that some open source licences (such as the Lesser General Public Licence, LGPG) only require you to publish changes you make to the code when you re-distribute the code. If you are using it for an internal project, then there is no supply your changes back to the project. Unless you want to, that is.

Finally, there is the knock-on effect of being seen to be supporters of open source. It's no surprise that when a company gets behind a project, the supporters of that project are going to be ready to blog about it, and get the word out that company X loves application Y enough to invest some time in it. And that means people in the area you work in talking highly about your company - the sort of viral marketing that your press team will love.

Open source is not a magic wand that will instantly wipe out half your software budget. Over time, I personally suspect that open source will be marginally cheaper over a few years, and show cost benefits out past five years compared to a similar closed source. But what it does offer is a much greater degree of flexibility - if you want something changed, nothing stops you doing it yourself. And there is a huge safety net in having that access. Open source is ready for prime time, and you'll be doing yourself no favours if you ignore it.