Note too that open source doesn’t necessarily mean that source has to be released on the internet, or made available to all and sundry – just that the users, or more properly the purchasers, have a way of gaining access to the source for their own uses.
Of course, this isn’t the common interpretation, which would include public release of the source and along with it a lack of copyright and patents and the availability of free licences to all-comers. This interpretation carries with it the concept of the open source community – the public, all and sundry.
The open source community is well represented on the internet. Most of Sun’s Java technologies are open source, under the Java Community Process. IBM is now a big player too, having recently dropped its very popular and successful Visual Age for Java development platform and instead started an open source Java development environment called Eclipse. Then there’s Apache, maker of the most powerful and popular web server in the world, with its sub-projects, Jakarta and XML. And of course there’s SourceForge.Net – the home of literally thousands of open source projects.
The open source community interpretation is interesting in that it implicitly challenges the idea that open source is costless. The basic economics are obvious – if nobody develops the software, then there is no source to be open. And you have to pay a developer to build something to put back, hence there is a cost.
If you’re a home user, the cost of using open source is low, though a small donation to the team wouldn’t go amiss. But if your business is profiting from the community – and why else would you use open source in business? – you should support the community. Every time you take something out, you should put something back in.
If you’re using Java servlets and JSPs, or perhaps Tomcat, Xerces and JUnit, then your entire project and all of its technology is based on open source and you have absolutely no excuse.
As for the "buy rather than build" argument, if you choose to use open source you’re still buying – the costs are less, the risks are fewer, but you’re still buying. It’s up to you how much you spend. You don’t have to pay the extortionate fees that big software vendors charge, but you do have a responsibility to pay something. It’s an honour system, so you decide what the software is worth to you and then pay it in kind – develop some software, extend an existing open source product, write some documentation, find some bugs, suggest some features, just help out.
There is another side to open source too -- DIY. You can release your own software’s source into the community. This is exactly the model adopted by Christchurch’s open source evangelist David Lane. His company, Effusion, is attracting some very prominent customers, all of whom are willing to pay him to develop software for them and then give it away to the rest of the world for free.
The benefit to Lane's customers is that if he ever goes broke, heads overseas or becomes incompetent (all of which are unlikely), they can just take the source and get someone else to carry on with it. They may even be in the lucky position of having other community members interested in the software, in which case they get upgrades for free.
Lane also tries to reuse as much existing code as possible. Sometimes this means enhancing existing code. When this happens existing customers get the upgrade for free. Because he’s reusing community code as well as his own it means that his customers get their code a bit quicker than they would if they’d had it developed from scratch – sans open source.
If companies as different in size as IBM and Lane's Effusion can profit from open source, then so can you. It’s easy to take the first step – go to SourceForge.Net (that’s the web-address, as well as the name), register (it’s free), set up a source repository (they use CVS), and put all of your source code in it. If you’ve never done it before and don’t know much about CVS, then it’ll take you a day. If you’ve used CVS before, and understand open source, then it’ll only take an hour or two.
Lane's business model is to profit from creating open source software for third parties. IBM’s business model is to profit from providing consultancy and services. What would your model be if you gave your software away?