Thus, the Free Software Foundation makes compromises—even major ones. For instance, we made compromises in the patent provisions of version 3 of the GNU General Public License (GNU GPL) so that major companies would contribute to and distribute GPLv3-covered software and thus bring some patents under the effect of these provisions.
The Lesser GPL’s purpose is a compromise: we use it on certain chosen free libraries to permit their use in nonfree programs because we think that legally prohibiting this would only drive developers to proprietary libraries instead. We accept and install code in GNU programs to make them work together with common nonfree programs, and we document and publicize this in ways that encourage users of the latter to install the former, but not vice versa. We support specific campaigns we agree with, even when we don’t fully agree with the groups behind them.
But we reject certain compromises even though many others in our community are willing to make them. For instance, we endorse only the GNU/Linux distributions that have policies not to include nonfree software or lead users to install it. To endorse nonfree distributions would be a ruinous compromise.
Compromises are ruinous if they would work against our aims in the long term. That can occur either at the level of ideas or at the level of actions.
At the level of ideas, ruinous compromises are those that reinforce the premises we seek to change. Our goal is a world in which software users are free, but as yet most computer users do not even recognize freedom as an issue. They have taken up “consumer” values, which means they judge any program only on practical characteristics such as price and convenience.
Dale Carnegie’s classic self-help book,
If getting more people to use some free programs is as far as you aim to go, you might decide to keep quiet about the concept of freedom, and focus only on the practical advantages that make sense in terms of consumer values. That’s what the term “open source” and its associated rhetoric do.
That approach can get us only part way to the goal of freedom. People who use free software only because it is convenient will stick with it only as long as it is convenient. And they will see no reason not to use convenient proprietary programs along with it.
The philosophy of open source presupposes and appeals to consumer values, and this affirms and reinforces them. That’s why we do not support open source.
To establish a free community fully and lastingly, we need to do more than get people to use some free software. We need to spread the idea of judging software (and other things) on “citizen values,” based on whether it respects users’ freedom and community, not just in terms of convenience. Then people will not fall into the trap of a proprietary program baited by an attractive, convenient feature.
To promote citizen values, we have to talk about them and show how they are the basis of our actions. We must reject the Dale Carnegie compromise that would influence their actions by endorsing their consumer values.
This is not to say we cannot cite practical advantage at all—we can and we do. It becomes a problem only when the practical advantage steals the scene and pushes freedom into the background. Therefore, when we cite the practical advantages of free software, we reiterate frequently that those are just additional, secondary reasons to prefer it.
It’s not enough to make our words accord with our ideals; our actions have to accord with them too. So we must also avoid compromises that involve doing or legitimizing the things we aim to stamp out.
For instance, experience shows that you can attract some users to GNU/Linux if you include some nonfree programs. This could mean a cute nonfree application that will catch some user’s eye, or a nonfree programming platform such as Java (formerly) or the Flash runtime (still), or a nonfree device driver that enables support for certain hardware models.
These compromises are tempting, but they undermine the goal. If you distribute nonfree software, or steer people towards it, you will find it hard to say, “Nonfree software is an injustice, a social problem, and we must put an end to it.” And even if you do continue to say those words, your actions will undermine them.