Joomla is open source software. Just like most of the software that powers the internet. So it's free then right? Well yes it is but it does need to be supported. Much of the software is written by people outside of their paid work but much is also written to 'scratch an itch' as part of some work for a client.
Here is a hypothetical scenario:
Billy Gatesopen is a freelance web designer and programmer who is pretty conversant with Joomla and has a client, let's call him Joe Cattlegrid.
Joe wants a web site that will help him sell his farm products direct to the public and help him cut out Fred Middleman. Joe also wants a special piece of software that connects up with his milking machines which measure how much milk is being produced by his herd. He know that if they are producing milk he will have cheese for sale by mail order six months down the road and this will give him a rough idea of how much cheese he will have in stock.
Billy goes off and designs a handy component for Joomla that does the calculation and displays the number of cheeses that are in stock in the farm shop on-line.
Joe is happy and pays Billy. Billy then publishes the component on the Joomla Extensions Directory. Many web designers notice that there is a Milk to Cheese component and some of them think they will offer it to their local farmer as part of a new web site deal. They also notice a few bugs and want a few modifications done and they ask Billy if he can sort them out.
He can and they are happy. Some of the money they charge for the web sites they sell they donate to Billy as a way of paying him for the extra work of supporting his Milk to Cheese component.
They is obviously a fictional scenario but it is the way it can happen. Sometimes the details differ and sometimes people don't pay back where and when they should. The big advantage of the system is that everyone who is involved in the development process has an interest in making the product work and work well with all the other parts of the system.
This is very different to all commercial software which is bogged down with licensing systems that tie the user in or even worse, propriety data formats that will only work with one software system. At the very least, your data needs to be open. If you can't find a way to export and import easily from the software you are using you are really sunk.
There are other ways to pay back for all the 'free' software that you have had the use of. One way is just develop something really useful to the world and just don't ask for any return. Thanks the Tim Burners-Lee, the world wide web is built on software code that was released for nothing and look where that got us...






