If there is no free lunch why should we have free software??
I have always been skeptical of open source software, if Microsoft and all of their highly paid programmers can’t get it right, how can a bunch of guys who work on projects for free in their spare time do any better? As a recent convert to Linux I now realize how wrong I was. In fact I now have absolutely no use for any Microsoft products.
As an economist I believe that there will always be a role for propriety software though. To see why I think it is useful to examine what proponents of free software are striving for. With that in mind I have pulled the definition of “free” software off of the Free Software Foundation website:
-
The freedom to run the program, for any purpose (freedom 0).
-
The freedom to study how the program works, and adapt it to your needs (freedom 1). Access to the source code is a precondition for this.
-
The freedom to redistribute copies so you can help your neighbor (freedom 2).
- The freedom to improve the program, and release your improvements to the public, so that the whole community benefits (freedom 3). Access to the source code is a precondition for this.
As you can see they are referring to free as in freedom to modify and redistribute rather than free as in price. However this implicitly means that the software will be available for free as even if a price is charged for the software, the person who buys it is free to give it to all his friends for free and they can give it to their friends and so on.
When I put my economist hat on (let’s be honest, I never take it off) I think that if all software was free the quality of software would suffer. What does a developer of free software get for the time he puts into writing a new piece of software? Not really much more than kudos from the community. So there is a big trade off here, with free software the people are working on software use it themselves so they are able to detect problems and add new features very easily, but at the same time if there is no financial reward from developing software then people have the incentive to put their effort elsewhere. This problem is particularly bad for software that is extremely complicated or requires a lot of time to develop. In this case we either get a software that is no where near as good as the proprietary version or the amount of time required to develop the software means progress is very slow.
As an example I use a mathematical program called Mathematica for a lot of my work and haven’t been able to find anything anywhere near as good that is “free”. I am also an avid gamer and have noticed that the standard of open source games is pretty terrible which makes sense given the amount of time required to develop a game.
So while I am huge fan of Linux and open source software , I think that aiming for all software to be free isn’t a good idea as there are certain cases where this provides the wrong incentives.