Why Open Source Misses the Point of Free Software – GNU Project – Free Software Foundation
Mục lục bài viết
Why Open Source Misses the Point of Free Software
The terms “free software” and “open
source” stand for almost the same range of programs. However,
they say deeply different things about those programs, based on
different values. The free software movement campaigns for freedom
for the users of computing; it is a movement for freedom and justice.
By contrast, the open source idea values mainly practical advantage
and does not campaign for principles. This is why we do not agree
with open source, and do not use that term.
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 for society as a whole because they
promote social solidarity—that is, sharing and cooperation. They
become even more important as our culture and life activities are
increasingly digitized. In a world of digital sounds, images, and words,
free software becomes increasingly essential for freedom in general.
Tens of millions of people around the world now use free software;
the public schools of some regions of India and Spain now teach all
students to use the free GNU/Linux
operating system. Most of these users, however, have never heard of
the ethical reasons for which we developed this system and built the free
software community, because nowadays this system and community are more
often spoken of as “open source,” attributing them 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 that we could avoid the nonfree operating systems
that deny freedom to their users. During the 1980s, we developed most
of the essential components of the system and designed
the GNU General Public License (GNU GPL)
to release them under—a license designed specifically to protect
freedom for all users of a program.
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 supporters of open source considered the term a
“marketing campaign for free software,” which would appeal
to business executives by highlighting the software’s practical
benefits, while not raising issues of right and wrong that they might
not like to hear. Other supporters flatly rejected the free software
movement’s ethical and social values. Whichever their views, when
campaigning for open source, they neither cited nor advocated those
values. The term “open source” quickly became associated
with ideas and arguments based only on practical values, such as
making or having powerful, reliable software. Most of the supporters
of open source have come to it since then, and they make the same
association. Most discussion of “open source” pays no
attention to right and wrong, only to popularity and success; here’s
a
typical example. A minority of supporters of open source do
nowadays say freedom is part of the issue, but they are not very visible
among the many that don’t.
The two now
describe almost the same category of software, but they stand for
views based on fundamentally different values. For the
free software movement, free software is an ethical imperative,
essential respect for 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 nonfree software is an inferior solution to the practical
problem at hand.
For the free software movement, however, nonfree software is a
social problem, and the solution is to stop using it and move to free
software.
“Free software.” “Open source.” If it’s the same
software (or nearly so),
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 of “free software.”
We in the free software movement don’t think of the open source
camp as an enemy; the enemy is proprietary (nonfree) software. But we
want people to know we stand for freedom, so we do not accept being
mislabeled as open source supporters. What we advocate is not
“open source,” and what we oppose is not “closed
source.” To make this clear, we avoid using those terms.
Practical Differences between Free Software and Open Source
In practice, open source stands for criteria a little looser than
those of free software. As far as we know, all existing released free
software source code would qualify as open source. Nearly all open
source software is free software, but there are exceptions.
First, some open source licenses are too restrictive, so they do
not qualify as free licenses. For example, Open Watcom is nonfree
because its license does not allow making a modified version and using
it privately. Fortunately, few programs use such licenses.
Second, the criteria for open source are concerned solely with the
licensing of the source code. However, people often describe an
executable as “open source,” because its source code is
available that way. That causes confusion in paradoxical situations
where the source code is open source (and free) but the executable
itself is nonfree.
The trivial case of this paradox is when a program’s source code
carries a weak free license, one without copyleft, but its executables
carry additional nonfree conditions. Supposing the executables
correspond exactly to the released sources—which may or may not
be so—users can compile the source code to make and distribute
free executables. That’s why this case is trivial; it is no grave
problem.
The nontrivial case is harmful and important. Many products
containing computers check signatures on their executable programs to
block users from effectively using different executables; only one
privileged company can make executables that can run in the device and
use its full capabilities. We call these devices
“tyrants,” and the practice is called
“tivoization” after the product (Tivo) where we first saw
it. Even if the executable is made from free source code, and
nominally carries a free license, the users cannot usefully run
modified versions of it, so the executable is de-facto nonfree.
Many Android products contain nonfree tivoized executables of
Linux, even though its source code is under GNU GPL version 2. (We
designed GNU GPL version 3 to prohibit this practice; too bad Linux
did not adopt it.) These executables, made from source code that is
open source and free, are generally spoken of as “open
source,” but they are not free software.
Common Misunderstandings of “Free Software” and
“Open Source”
The term “free software” is prone to 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 and correct term would be better, if
it didn’t present other problems.
Unfortunately, all the alternatives in English have problems of
their own. We’ve looked at many 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 and Spanish word “libre” works well, but people in India
do not recognize it 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 is too long to include here) was derived
indirectly from our criteria for free software. It is not the same;
it is a little looser in some respects. Nonetheless, their definition
agrees with our definition in most cases.
However, the obvious meaning for the expression “open source
software” is “You can look at the source code.”
Indeed, most people seem to misunderstand “open source
software” that way. (The clear term for that meaning is
“source available.”) That criterion is much weaker than
the free software definition, much weaker also than the official
definition of open source. It includes many programs that are neither
free nor open source.
Why do people misunderstand it that way? Because that is the
natural meaning of the words “open source.” But the
concept for which the open source advocates sought another name was
a variant of that of free software.
Since the obvious meaning for “open source” is not the
meaning that its advocates intend, the result is that most people
misunderstand the term. According to writer Neal Stephenson,
“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
ran an article that stretched the meaning of 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.
The term has even been stretched to include designs for equipment
that
are published
without a patent. Patent-free equipment designs can be laudable
contributions to society, but the term “source code” does
not pertain to them.
Open source supporters try to deal with this by pointing to their
official definition, but that corrective approach is less effective
for them than it is for us. The term “free software” has
two natural meanings, one of which is the intended meaning, so a
person who has grasped the idea of “free speech, not free
beer” will not get it wrong again. But the term “open
source” has only one natural meaning, which is different from
the meaning its supporters intend. So there is no succinct way to
explain and justify its official definition. That makes for worse
confusion.
Another misunderstanding of “open source” is the idea
that it means “not using the GNU GPL.” This tends to
accompany another misunderstanding that “free software”
means “GPL-covered software.” These are both mistaken,
since the GNU GPL qualifies as an open source license and most of the
open source licenses qualify as free software licenses. There
are many free software
licenses aside from the GNU GPL.
The term “open source” has been further stretched by
its application to other activities, such as government, education,
and science, where there is no such thing as source code, and where
criteria for software licensing are simply not pertinent. The only
thing these activities have in common is that they somehow invite
people to participate. They stretch the term so far that it only
means “participatory” or “transparent,” or
less than that. At worst, it
has
become a vacuous buzzword.
Different Values Can Lead to Similar Conclusions—but Not Always
Radical groups in the 1960s had a reputation for factionalism: some
organizations split because of disagreements on details of strategy,
and the two daughter groups treated each other as enemies despite
having similar basic goals and values. The right wing made much of
this and used it to criticize the entire left.
Some try to disparage the free software movement by comparing our
disagreement with open source to the disagreements of those radical
groups. They have it backwards. We disagree with the open source
camp on the basic goals and values, but their views and ours lead in
many cases to the same practical behavior—such as developing
free software.
As a result, people from the free software movement and the open
source camp often work together on practical projects such as software
development. It is remarkable that such different philosophical views
can so often motivate different people to participate in the same
projects. Nonetheless, there are situations where these fundamentally
different views lead to very different actions.
The idea of open source is that allowing users to change and
redistribute the software will make it more powerful and reliable.
But this is not guaranteed. Developers of proprietary software are
not necessarily incompetent. Sometimes they produce a program that
is powerful and reliable, even though it does not respect the users’
freedom. Free software activists and open source enthusiasts will
react very differently to that.
A pure open source enthusiast, one that is not at all influenced by
the ideals of free software, will say, “I am surprised you were able
to make the program work so well without using our development model,
but you did. How can I get a copy?” This attitude will reward
schemes that take away our freedom, leading to its loss.
The free software activist will say, “Your program is very
attractive, but I value my freedom more. So I reject your program. I
will get my work done some other way, and support a project to develop
a free replacement.” If we value our freedom, we can act to
maintain and defend it.
Powerful, Reliable Software Can Be Bad
The idea that we want software to be powerful and reliable comes
from the supposition that the software is designed to serve its users.
If it is powerful and reliable, that means it serves them better.
But software can be said to serve its users only if it respects
their freedom. What if the software is designed to put chains on its
users? Then powerfulness means the chains are more constricting,
and reliability that they are harder to remove. Malicious features,
such as spying on the users, restricting the users, back doors, and
imposed upgrades are common in proprietary software, and some open
source supporters want to implement them in open source programs.
Under pressure from the movie and record companies, software for
individuals to use is increasingly designed specifically to restrict
them. This malicious feature is known as Digital Restrictions
Management (DRM) (see DefectiveByDesign.org) and is
the antithesis in spirit of the freedom that free software aims
to provide. And not just in spirit: since the goal of DRM is to
trample your freedom, DRM developers try to make it hard, impossible,
or even illegal for you to change the software that implements the DRM.
Yet some open source supporters have proposed “open source
DRM” software. Their idea is that, by publishing the source code
of programs designed to restrict your access to encrypted media and by
allowing others to change it, they will produce more powerful and
reliable software for restricting users like you. The software would then
be delivered to you in devices that do not allow you to change it.
This software might be open source and use the open
source development model, but it won’t be free software since it
won’t respect the freedom of the users that actually run it. If the
open source development model succeeds in making this software more
powerful and reliable for restricting you, that will make it even
worse.
Fear of Freedom
The main initial motivation of those who split off the open source
camp from the free software movement was that the ethical ideas of
free software made some people uneasy. That’s true: raising
ethical issues such as freedom, talking about responsibilities as well as
convenience, is asking people to think about things they might prefer
to ignore, such as whether their conduct is ethical. This can trigger
discomfort, and some people may simply close their minds to it. It
does not follow that we ought to stop talking about these issues.
That is, however, what the leaders of open source
decided to do. They figured that by keeping quiet about ethics and
freedom, and talking only about the immediate practical benefits of
certain free software, they might be able to “sell” the
software more effectively to certain users, especially business.
When open source proponents talk about anything deeper than that,
it is usually the idea of making a “gift” of source code
to humanity. Presenting this as a special good deed, beyond what is
morally required, presumes that distributing proprietary software
without source code is morally legitimate.
This approach has proved effective, in its own terms. The rhetoric
of open source has convinced many businesses and individuals to use,
and even develop, free software, which has extended our
community—but only at the superficial, practical level. The
philosophy of open source, with its purely practical values, impedes
understanding of the deeper ideas of free software; it brings many
people into our community, but does not teach them to defend it. That
is good, as far as it goes, but it is not enough to make freedom
secure. Attracting users to free software takes them just part of the
way to becoming defenders of their own freedom.
Sooner or later these users will be invited to switch back to
proprietary software for some practical advantage. Countless
companies seek to offer such temptation, some even offering copies
gratis. Why would users decline? Only if they have learned to value
the freedom free software gives them, to value freedom in and of itself
rather than the technical and practical convenience of specific free
software. To spread this idea, we have to talk about freedom. A
certain amount of the “keep quiet” approach to business can be
useful for the community, but it is dangerous if it becomes so common
that the love of freedom comes to seem like an eccentricity.
That dangerous situation is exactly what we have. Most people
involved with free software, especially its distributors, say little about
freedom—usually because they seek to be “more acceptable to
business.” Nearly all GNU/Linux operating system distributions add
proprietary packages to the basic free system, and they invite users to
consider this an advantage rather than a flaw.
Proprietary add-on software and partially nonfree GNU/Linux
distributions find fertile ground because most of our community does
not insist on freedom with its software. This is no coincidence.
Most GNU/Linux users were introduced to the system through “open
source” discussion, which doesn’t say that freedom is a goal.
The practices that don’t uphold freedom and the words that don’t talk
about freedom go hand in hand, each promoting the other. To overcome
this tendency, we need more, not less, talk about freedom.
“FLOSS” and “FOSS”
The terms “FLOSS” and “FOSS” are used to
be neutral between free
software and open source. If neutrality is your goal,
“FLOSS” is the better of the two, since it really is
neutral. But if you want to stand up for freedom, using a neutral
term isn’t the way. Standing up for freedom entails showing people
your support for freedom.
Rivals for Mindshare
“Free” and “open” are rivals for mindshare.
Free software and open source are
different ideas but, in most people’s way of looking at software, they
compete for the same conceptual slot. When people become habituated
to saying and thinking “open source,” that is an obstacle
to their grasping the free software movement’s philosophy and thinking
about it. If they have already come to associate us and our software
with the word “open,” we may need to shock them intellectually
before they recognize that we stand for something else.
Any activity that promotes the word “open” tends to
extend the curtain that hides the ideas of the free software
movement.
Thus, free software activists are well advised to decline to work
on an activity that calls itself “open.” Even if the
activity is good in and of itself, each contribution you make does a
little harm on the side by promoting the open source idea. There are
plenty of other good activities which call themselves
“free” or “libre.” Each contribution to those
projects does a little extra good on the side. With so many useful
projects to choose from, why not choose one which does extra good?
Conclusion
As the advocates of open source draw new users into our community,
we free software activists must shoulder the task of bringing the issue
of freedom to their attention. We have to say, “It’s
free software and it gives you freedom!”—more and louder
than ever. Every time you say “free software” rather than
“open source,” you help our cause.
Lakhani and Wolf’s
paper on the motivation of free software developers says that a
considerable fraction are motivated by the view that software should be
free. This is despite the fact that they surveyed the developers on
SourceForge, a site that does not support the view that this is an ethical
issue.