Some time ago, I posted my thoughts on Steve Jobs and his legacy, and linked to a definition of “free” on the website of the Free Software Foundation. In case that gets misconstrued as my full endorsement of that definition, and to talk about the things about that definition that don’t sit very well with me, I am writing this post.
I agree with the fact that you should be able to buy a copy of software, not merely a “license” to use it — if you’re thinking, “but wait, I did buy Windows 7 (or MS Office or something else)”, you should really read this post. And before you chime in with, “I agree pal, Microsoft and Apple should be destroyed,” let me add that I also believe creators should be free to decide whether or not to sell a copy of their software outright or merely license it out.
Having said that, I wouldn’t want to deal with those who don’t sell it to me outright for my personal (or professional) use. And my reason for taking this stand is simple: If I buy some software, I typically want to use it as long as there is a better alternative available and within my budget. Given that, why would I choose to have only limited ownership of the said application? After all, would you rent a car if you plan to use it regularly for the next 2 to 3 years?
I also want to be able to use the software I buy on every computer I own and have the freedom to change it (the software) to suit my requirements — to use it to fit my workflow rather than it being the other way around. Even if I’m not capable of changing it, I want the option of being able to do it; because if I have the money, I could get someone else to do it for me.
This choice necessitates that the source code of the application be available to me for download (or purchase at a price that is reasonably comparable to the price of the software itself) when I buy the application. Unless the source code is available, the freedom to modify the application becomes nearly meaningless.
Until this point, I’m on board with the principles espoused by the Free Software Foundation. Here are the first two freedoms those principles highlight as taken from the page, What is Free Software:
Freedom 0: The freedom to run the program, for any purpose [mind you, you may use it for "any purpose", but if your purpose is illegal, this definition will not, and should not, save you from the law]
Freedom 1: The freedom to study how the program works, and change it so it does your computing as you wish. Access to the source code is a precondition for this
The third point — or Freedom 2 — however, is where they lose me. Here it is:
The freedom to redistribute copies so you can help your neighbor.
What is a “freedom” to help others? The developers aren’t stopping anyone from buying more copies of a software to help their neighbors. If you can afford to do that, feel free to do so. But to say that users should be able to help others without having to buy the means to help them is wishful thinking at best, and willful hypocrisy at worst. I cannot be on board with that. If the software’s creator wishes to allow it, that’s his privilege; but to say that not allowing it means your software doesn’t respect users’ freedom is just downright wrong.
The fact that software can be copied by a single command doesn’t mean it should be OK to do so, especially not to the financial detriment of the creator. I know that software is not physical property and making copies of it doesn’t cost any money to its creator, however, I find that fact irrelevant to my argument. The privilege of copyright and patents is meant provide creators with sufficient incentive to spend long hours working on developing something — the incentive that when they do invent something of value after all that effort, they are granted exclusive right to sell it on the open market. Whether it costs them to create copies of their inventions or if they even wish to exercise that right to exclusivity has no relevance to the value of their effort in developing it. If we are to use their work for our purposes, altruistic or otherwise, we should pay the price the market forces have allowed them to set for it. Any quest to circumvent this principle represents a desire to appropriate something that isn’t yours without paying for it.
Freedom is a worthwhile goal, but that freedom cannot, and should not, allow you to distribute the fruit of someone else’s labour just to satisfy your desire to be a good Samaritan.
Furthermore, if we want to encourage commercial software developers to make their products more free, the legal definition of “free” needs to explicitly protect their financial interests while at the same time respecting users’ freedom. Therefore, what I’m calling for here is not the giving up of GPL or other such licenses that allow redistribution; instead, I’m suggesting developing a new license that allows commercially-motivated creators the right to control redistribution of their software while leaving users free to use, study, and modify it.
The license should also maintain a condition — as I believe GPL already does this more or less — that if someone can modify the source code to the point that the resulting functionality or underlying algorithm differs from the original one by more than 75% (or any other democratically established percentage), it becomes an entirely new application owned by the person who made those modifications and can be distributed under a different brand name. Not only would this allow continuous development and innovation on that application, but also ensure that the rights of the original creator aren’t trampled in the name of user freedom.