By Richard Stallman: When we call software “free,” we mean that it respects the users’ essential freedoms: the freedom to run it, to study and change it, and to redistribute copies with or without changes. This is a matter of freedom, not price, so think of “free speech,” not “free beer.”
These freedoms are vitally important. They are essential, not just for the individual users’ sake, but because they promote social solidarity—that is, sharing and cooperation. They become even more important as more and more of our culture and life activities are digitized. In a world of digital sounds, images and words, free software comes increasingly to equate with freedom in general.
Tens of millions of people around the world now use free software; the schools of regions of India and Spain now teach all students to use the free GNU/Linux operating system. But most of these users have never heard of the ethical reasons for which we developed this system and built the free software community, because today this system and community are more often described as “open source,” and attributed to a different philosophy in which these freedoms are hardly mentioned.
The free software movement has campaigned for computer users’ freedom since 1983. In 1984 we launched the development of the free operating system GNU, so we could avoid the non-free operating systems that deny freedom to their users. During the 80s, we developed most of the essential components of such a system, as well as the GNU General Public License, a license designed specifically to protect freedom for all users of a program.
However, not all of the users and developers of free software agreed with the goals of the free software movement. In 1998, a part of the free software community splintered off and began campaigning in the name of “open source.” The term was originally proposed to avoid a possible misunderstanding of the term “free software,” but it soon became associated with philosophical views quite different from those of the free software movement.
Some of the proponents of “open source” considered it a “marketing campaign for free software,” which would appeal to business executives by citing practical benefits, while avoiding ideas of right and wrong that they might not like to hear. Other proponents flatly rejected the free software movement’s ethical and social values. Whichever their views, when campaigning for “open source” they did not cite or advocate those values. The term “open source” quickly became associated with the practice of citing only practical values, such as making powerful, reliable software. Most of the supporters of “open source” have come to it since then, and that practice is what they take it to mean.
Nearly all open source software is free software; the two terms describe almost the same category of software. But they stand for views based on fundamentally different values. Open source is a development methodology; free software is a social movement. For the free software movement, free software is an ethical imperative, because only free software respects the users’ freedom. By contrast, the philosophy of open source considers issues in terms of how to make software “better”—in a practical sense only. It says that non-free software is a suboptimal solution. For the free software movement, however, non-free software is a social problem, and moving to free software is the solution.
Free software. Open source. If it’s the same software, does it matter which name you use? Yes, because different words convey different ideas. While a free program by any other name would give you the same freedom today, establishing freedom in a lasting way depends above all on teaching people to value freedom. If you want to help do this, it is essential to speak about “free software.”
We in the free software movement don’t think of the open source camp as an enemy; the enemy is proprietary (non-free) software. But we want people to know we stand for freedom, so we do not accept being misidentified as open source supporters.
Common misunderstandings of “free software” and “open source”
The term “free software” has a problem of misinterpretation: an unintended meaning, “software you can get for zero price,” fits the term just as well as the intended meaning, “software which gives the user certain freedoms.” We address this problem by publishing the definition of free software, and by saying “Think of free speech, not free beer.” This is not a perfect solution; it cannot completely eliminate the problem. An unambiguous, correct term would be better, if it didn’t have other problems.
Unfortunately, all the alternatives in English have problems of their own. We’ve looked at many alternatives that people have suggested, but none is so clearly “right” that switching to it would be a good idea. (For instance, in some contexts the French/Spanish word “libre” can be used, but people in India do not recognize the word at all.) Every proposed replacement for “free software” has some kind of semantic problem—and this includes “open source software.”
The official definition of “open source software” (which is published by the Open Source Initiative and too long to cite here) was derived indirectly from our criteria for free software. It is not the same; it is a little looser in some respects, so open source supporters have accepted a few licenses that we consider unacceptably restrictive of the users. Nonetheless, it is fairly close to our definition in practice.
However, the obvious meaning for the expression “open source software” is “You can look at the source code,” and most people seem to think that’s what it means. That is a much weaker criterion than free software, and much weaker than the official definition of open source. It includes many programs that are neither free nor open source.
Since that obvious meaning for “open source” is not the meaning that its advocates intend, the result is that most people misunderstand the term. Here is how writer Neal Stephenson defined “open source”:
Linux is “open source” software meaning, simply, that anyone can get copies of its source code files.
I don’t think he deliberately sought to reject or dispute the “official” definition. I think he simply applied the conventions of the English language to come up with a meaning for the term. The state of Kansas published a similar definition:
Make use of open-source software (OSS). OSS is software for which the source code is freely and publicly available, though the specific licensing agreements vary as to what one is allowed to do with that code.
The New York Times has stretched the term to refer to user beta testing — letting a few users try an early version and give confidential feedback — which proprietary software developers have practiced for decades.