The Free Software Movement is 32 years old. In 1983, Dr. Richard Matthew Stallman, also known as rms, his computer user name, invited the world to write a sufficient body of free software to restore users’ freedom, and for not having to use proprietary software ever. In his original announcement of the GNU system, on Thanksgiving, 1983, Stallman stated his reasons for building a complete operating system that would be entirely free software: sharing with others the programs you like, and to continue using computers without violating this, and other ethical principles.
Stallman was then working at the Artificial Intelligence laboratory of MIT, center of a substantial software-sharing community in the decades before. Hackers on PDP-10 computers there and in other places would write software and share it among themselves, as naturally as cooks share recipes. But in the early 1980s, the PDP-10 line of computers on which they had been writing software was discontinued. New architectures had appeared, such as VAX and 68020, that made most of their software obsolete. The operating systems on these new architectures, VMS and BSD UNIX, were encumbered with non-disclosure agreements. A program is like a recipe. A nonfree program is like a binary recipe that only your kitchen robot could make, but you couldn’t reproduce yourself, nor share it with anyone else. Imagine going to a friend’s house and enjoying a fantastic chocolate cake; when you’d ask for the recipe, they would tell you: “sorry dear, but I can’t give it to you, only I am allowed to make it.” How antisocial would that sound? That sounds exactly like nonfree software.
The software-sharing community at MIT’s AI lab had collapsed the year before his decision, as most hackers went away to work at a new spin-off company. Stallman was faced with a stark moral choice: he could join the emerging proprietary software social system and close his eyes to the digital divide between developers and users; or he could leave the software industry altogether, but that would not prevent it from becoming antisocial; or he could, as his profession was to write operating systems, develop a new one that would protect the freedom to use, share, and improve software for all. He chose the latter, embarking onto the enormous project of creating an ethical world of software, starting with the GNU operating system, a system that would respect users’ essential freedoms.
In an age of instant gratification, rarely the mind is put to measure the consequences of passing time. Hackers love to automate away the burden of repetition. To spread a political message, we need to repeat it; that’s what rms has done for three decades. To establish freedom, we must teach many people to appreciate freedom. The tremendous achievements of software freedom to date don’t end the need to remind people year after year that the struggle continues, even more importantly today.
The analysis has developed, but the original intent remains the same. In hindsight, free software advocates easily distinguish between individual and collective freedoms, to insist on the interdependence required to achieve our goal. But it took years to formalize the four essential freedoms and the free software definition.
The first two freedoms granted by free software to the user enable to run the software for any purpose, and to study how the software works to be able to adapt the source code to one’s own needs. These freedoms enable each user to exert individual control over their computing. A programmer can learn from the source code. But not everyone is a developer and able to program software. Therefore, it was necessary to implement collective control of software, in the same way as for science and culture: to turn software into a commons. The other two freedoms enable sharing the code, that is the knowledge and know-how, with anyone so that you can help your neighbor, and being free to distribute modified versions of the software so that non-programmers can benefit from free software as well.
The four freedoms encourage synergies between users and developers for the benefit of all: a group of users can decide what to do; the programmers among them can implement it; If something scandalous is found in a free program, such as the malicious functionality commonly discovered in proprietary software, programmer-users will fix it and then distribute the corrected version widely to the other users.
Making changes though, is not always easy. All software is governed by copyright law, like many other creations such as text, photography, or video. When you distribute such works, the law grants you exclusive property over it, whether you like it or not: thus, if you release a program without taking a step to make it free, it is automatically nonfree. Copyright denies users the four freedoms by default. The step required to make a program free is to attach a legal statement, from the copyright holders, giving users the four freedoms. Such a statement is called a “free software license”.
Free software licenses existed before 1983. Stallman’s innovative legal hack, called “copyleft”, was to write a copyright license, that required all copies redistributed, even modified, to come with the same freedoms. The GNU General Public License grants the four essential freedoms to everyone that gets a copy of the code, including any additions or changes, iteratively ad infinitem. It creates a community in which everyone gets freedom.
The essence of software freedom is control of your own technology: the technology that you make, and the technology that you use. In a world dominated by software powerhouses, technology is often understood as the product created by inaccessible engineers and sold by their employing corporations. Whereas the users of a proprietary program are forcibly limited to being consumers, the users of free software are citizens of their software community and take part in the collective invention of technology. This prompts an incentive for cooperative research in computing, for the benefit of all humans, similarly to science, and culture.
Software, science, and culture have been under attack by promoters of so-called “Intellectual Property”, a bag-word covering many different legal concepts with varying scopes, conveniently put together under a seemingly innocent umbrella that hides how different these laws are, and claims that human intellectual work comes solely from the mind of the person expressing it. It takes no effort to understand the deception here. A brief look into Greek mythology and the history of literature can easily demonstrate that, as Sir Isaac Newton famously wrote: even a genius sits on the shoulders of giants.
What are the issues with non-copyleft, or lax licenses, such the 3-clause BSD license?
Companies such as Apple want to convince you not to use copyleft on your software, because they would like to convert it into nonfree software and subjugate users with it. If you give them what they want, you may “have millions of users” but you will not have advanced their freedom at all. On the contrary, you would have chosen popularity over freedom, and lost technological sovereignty in the process.
Mac OS X is based on a BSD architecture. But FreeBSD hackers can’t use what Apple built on top of their code that would benefit all their users. This is in essence the difference between copyleft and non-copyleft: the former insists the code remains free as it develops, including larger programs, while the latter encourages cannibalization of the source code by defectors.
How does that contrast with the GPL?
If Mac OS X was based on the GNU operating system, it would remain free. Copyleft is a cooperation enforcer, that respects their freedom to use our software, as part of our community; what it denies them is the chance to convert our software into an instrument to dominate others. The GPL is an institution to enable cooperation.
Defectors do not want to cooperate. They want to dominate others. Although they can use modified GPL software for their own interest in private, they refuse to become part of the community. The GPL requires that If they choose to distribute their modified version of the software, they must accept to become contributors to the software, like any previous contributors who enabled them to benefit from the program in the first place. They claim a (moral) right to abuse the work of others to make users divided and helpless.
It took Stallman a few years to clearly separate the two meanings of the English word “free”. Free software is a matter of freedom, not price. Copies do not have to be gratis: you’re free to offer copies in exchange for pay. But if the copies don’t carry the four essential freedoms, they are not free software. The Latin root for liberty found in Roman languages gives a synonym to overcome the ambiguity of the English “free”: libre. This allows us not to enter into a false debate regarding the alleged incompatibility of free software with commercial applications. If proprietary software vendors sell license rights to their users, free software vendors cannot do this; nevertheless they can still sell copies of the software, development itself, and services related to the it: distribution, support, education, etc.
There is a misleading simplification that consists in arguing that if the software source code is available, people won’t pay to obtain it. But not everyone is a developer, and most people will prefer paying a company to take responsibility for their software: they do it all the time with proprietary software. The main difference with copyleft is that they don’t pay copyleft free software vendors for a restrictive license: instead the license is there to protect them from abusive vendors!
In the USA, You can put a program explicitly in public domain. But that’s equivalent to releasing it under a weak, pushover license. Doing so, however, falls back to the earlier case of a non-copyleft license: defectors can abuse your work and claim it for themselves. Making a program proprietary declares that anyone who goes there is under your power. Releasing it under a lax license declares that people there are free as long as they don’t surrender that freedom to anyone else; the software is in the commons, precariously, as long as nobody privatizes it by making it nonfree. The choice of a copyleft free software license such as the GPL makes a stronger political claim: it tells the world you’re willing to give away your work for others to build upon, as long as it irrevocably remains part of the commons, resisting others’ attempts to pull it out.