Free, as in Freedom!
Just imagine if you’d spent years writing a program that was your pride and joy, and you’d given it freely as your gift to the world, only to find out that it had been ripped off by a proprietary software vendor and turned into SuperDeLuxeProgram 2.0. The original authors couldn’t even get access to the source code of the new version for which people were now paying. Without having source code, you can’t learn how the insides of a program work, and you can’t fix it when it breaks down. Not having access to the code is like buying a new car and then finding out that the hood is welded shut. If the car broke down in the middle of the desert, you’d have no choice but to call the guy who sold you the vehicle, and hope that he’d send out a tow truck.
With these issues in mind, Richard Stallman developed the GNU General Public License for the GNU project, a Free Software, mass collaboration project, started in 1983 by Stallman at MIT. The GPL stated that all GNU software would grant its users four freedoms:
- The freedom to run the program for any purpose.
- The freedom to study how the program works and adapt it to your needs. (You can’t do this without source code.)
- The freedom to redistribute copies so you can help your neighbor.
- The freedom to improve the program and release your improvements to the public, so that the whole community benefits. (You need source code for that, too.)
The GPL was different from more permissive Free Software licenses, like the one used by the University of California for UNIX software written at its campus in Berkley. A clause in the GNU license means that people who distribute GPL software have to make the current, matching version of the source code available with the binary. It may seem like a minor distinction, but it makes all the difference to the software and the hackers that work on it. The GPL creates a positive feedback loop, or virtuous circle, which means that useful programs are maintained and updated over the years, even when the original author is no longer interested or available to do the work.
If a company rips off a piece of software released under the GNU GPL, by presenting it as the company’s own work, or hiding the source code from users, the company can be sued for copyright infringement by the original author. (Most GPL violations are settled out of court, because the terms of the license are very clear.) This legal enforcement is possible because GPL software is Free Software, but isn’t in the public domain. Some people call public-domain software 'freeware', which causes confusion with Free Software, but it’s not the same thing at all. Many computer programs are offered gratis but without the four freedoms of the GPL, usually as part of a marketing ploy. Now you know why I keep typing Free Software with capital letters, so you don’t make the same mistake.