History and Philosophy of the GNU Project

Translation of a speech that was given in German
at the CLOWN (Cluster of Working Nodes—
a 512-node cluster project of Debian GNU/Linux machines) in the
University of Paderborn, Germany, on December 5th, 1998.

The
German original
is also available. Reading the original is recommended.

Author's note: In translating this speech, I have tried to stay as close as
possible to the original speech that I have given in German. Breaking
up the German structures and turning them into reasonable English has
been quite some work, and I would like to thank my roommate Doug
Chapin, a good friend and native American, who helped me with some
phrases and words. The translation will never hold the same emotions
and implications, but I think we got very close…

During the preparation of this speech, I have read several documents
and spoken to a lot of people. In doing so, I realized that even people
whose jobs have been created more or less directly by the GNU Project
did not know its true meaning. In the overall rush we are
experiencing at the moment, it seems that a basic awareness of the
roots has been lost. Tonight I hope I'll be able to uncover some of
those roots again.

The origin lies somewhere in the transition from the 70's to the 80's,
when the software industry became what we accept so willingly
today. In the initial competition, some firms took to hording code as
a survival strategy. While attempting to support this behavior's
legality, they created phrases like “software piracy”
because they suggest that something is lost when software is
copied. People were forced to yield to licenses that bound them, to
make sure that no one else had access to these programs.

When a friend asked you whether he could copy a program from you, you
immediately faced a dilemma. There are no disadvantages for you in
copying the program, and it doesn't deteriorate during the copying
process. It would be more restrictive if he asked you to pass
the salt, since you can't both use it at the same time. The politics
of the companies forced you to choose between legality and
friendship.

A lot of people were upset about this, and most of them copied the
program anyway—very often using lame excuses that were mostly
aimed at calming their own troubled consciousness (induced by the
firms' choice of words). The absolute hit was probably “If I
would use it more often I would pay it,” a phrase that
probably everyone caught himself using if he ever had to rely on
proprietary software.

One man found this situation unbearable. Used to the early days, the
(as he says himself) “paradise,” where freedom and
responsible use of the possibilities determined the situation, Richard
Stallman envisioned the concept of a completely free system. Very
quickly it became clear that this system would be Unix-compatible and
it was baptized—recursive acronyms were very popular back
then—GNU, which means “GNU's Not Unix.”
Stallman gathered some people who shared his fascination with a free
system, and founded the GNU Free Software Foundation, of which he is
still the president today.

Since first of all a Unix system requires a large set of components,
it became clear that these were the first step towards a
completely free system. The GNU FSF worked on implementing them, and
by the beginning of the 90's the GNU system was complete (with the
exception of the kernel).
The GNU kernel—project name “Hurd”—has an
extremely ambitious layout that proved to be very slow and clumsy in
development. Fortunately, at this point Linus Torvalds' first Linux
kernel was in the test phase, and when he saw the work already done by
the GNU FSF, he put his kernel under the GNU GPL and made it the kernel
of the GNU system.

There is no need to tell the rest of the story since most of us have
experienced it themselves.

A little earlier I said that Richard Stallman envisioned the concept
of free software. What I didn't tell you about was the philosophy
that stands behind it.

The word “free” in “free software” does not refer to price,
but to freedom. This is no unproblematic topic, and
recently some of the visionaries of the movement (like Eric Raymond)
have begun to talk about “open source” because
“freedom” has an uneasy sound to it for most
people. Freedom rings of “making world a better place,” and
insecurity. It rings of change, and change frightens many people. To
numb this fear, other licenses for free software have been invented in
order to make the concept digestible for more people and to avoid
scaring the industry.

That is the reason why the GNU Project dislikes the term “open
source.” We think it makes more sense to take away people's
fears of the idea instead of blurring the concept. Only if users and
firms are aware of the importance of freedom can we avoid falling back
into old patterns.

The philosophy of the GNU Project says that everyone shall have
the granted right to use a program, to copy it, and to change it to
make it fit his or her needs. The only restriction the GNU
General Public License makes, is that NO ONE has the right to
take away this freedom from anyone else.

When an author puts his code under the GNU GPL, the freedom is an
inseparable part of his program. Of course, this is a thorn in the
side of a lot of business'es eyes because it stops them from taking the
code, modifying it, and then selling it as a proprietary program. As
long as there are people who try to live the dream of instant wealth,
it is this freedom that stops firms like Microsoft from corrupting the
future development of our system.

The most used argument against the GNU philosophy is probably that
software is the “intellectual property” of the programmer,
and it is only right if he can decide the price for which the program
is distributed. This argument is easy to understand for everyone, since
it is exactly what we have been told to believe during the last 20
years.

Reality is a little different, though. Private programmers who can
live off selling self-written software are the exception. Usually they
give their rights to the firm they work at, and this firm earns the
money by restricting access to that program. Effectively, the
firm has the rights for that program and decides it's price,
not the programmer.

A lawyer who invents an especially brilliant strategy has no right to
claim it as his “intellectual property.” The method is
freely available to anyone. Why do we so willingly accept the concept
that every line of code—no matter how poorly written or
uninspired it may be—is so unique and incredibly personal? The
zeal for control has taken over in a way that even human genes are
subject to patents… although usually not by the people who
“use” them. Should really everything be allowed to
be patented and licensed?

This is the question that is one of the core thoughts of the GNU
Project. Let us just imagine there would be no such concept as
patented software, or patenting software would be unusual because
everyone published his programs under the GNU GPL.

Solutions for standard problems that had to be solved over and over
again can be accessed easily. No one has to waste his time ever again
to work on the same problem dozens of times—programmers could
search for new ways and approach new problems. If a group of users
needs a certain feature in a program, they just hire a programmer and
let him implement it. Freed of the limitations of licenses and money,
only two criteria would determine the development of programs: demand
and quality.

Speaking of quality—nowadays more and more firms realize that
allowing the users to access the source code gives them a huge
advantage. To say it in a simple way: more eyes can see
more. Solutions that are unimaginable for one person are painfully
obvious for someone else. Due to this advantage, free software is very
often so much better than its proprietary counterpart. The train of
thought that now appears to be establishing itself within some firms
is to give users access to the source code but not grant any other
rights. Improvements are obediently being sent back to the firm, which
advances its product with them. Basically a gigantic gratis
development division. If we do not pay attention to these
things now, it might happen that in 5 years we will have to pay
for a version that has been produced by applying our own patch.

The concept of software as “intellectual property” carries
the seed of doom inside itself (please forgive me for the pathos
here). As long as we accept this concept, we accept the danger that
another firm will attempt to take control. Microsoft is
not evil incarnated, as some people seem to perceive. Microsoft
is the natural consequence of the widely accepted system.

The fear of sawing the branch you're sitting on is also commonly
spread, but completely irrational. Better programs lead to more users
that have other needs and new ideas, creating more demand. The
structure will change to fit the new situation but work will increase
rather than decrease, and it will become less routine, hence
more interesting.

The last common fear that remains is the fear over lack of
recognition. Well, the respect held for the frontmen of the different
philosophies speaks for itself. I on my part would prefer to be as
respected as Linus Torvalds or Richard Stallman than to have the
reputation of Bill Gates.

Admittedly, this does sound like bettering the world and idealism, but
a lot of the really great ideas were driven by the wish to make the
world a little better.

And to settle one point very clearly: no, the GNU Project is not
against capitalism or firms in general, and it is not against software
firms in particular. We do not want to diminish the potential for
profit, quite the contrary. Every firm is being told to make
as much money as they can off the sale of software, documentation
and service—as long as they stick to the basic principles of
Free Software.
The more these firms earn, the more they can invest into the
development of new software. We do not want to destroy the market, we
just want to fit it to the times.

One short note about the basic principles: of course free software
also requires free documentation. It doesn't make any sense to free
the successor of the book—software—while accepting control
of the direct digital equivalent. Free documentation is as important
as free software itself.

Maybe someone discarded my statement about seeking to “fit the
market to the times” as a rhetorical statement, but it is an
important point in the GNU Philosophy:
the time when software was only relevant for a few freaks and some
firms is long gone. Nowadays, software is the pathway to information. A
system that blocks the pathways to information, and in doing so the
access to information itself, must be reconsidered.

When Eric Raymond published the so called “Halloween
Document,” it triggered emotions from euphoria to paranoia. For
those of you who did not read it: it is a Microsoft internal study in
which the strengths and weaknesses of free software in general, and
Linux in particular, are analyzed. The author basically concluded that
Microsoft has two possibilities to counter the threat.

The first is the creation of new or modification of old protocols,
documenting them only poorly or not at all, so that only Windows-based
machines will have a working implementation.

One example of this tactic is the protocol used by HP
“Cxi” printers, which have entered the market as extremely
cheap “Windows-Printers.” The specifications have only
been given to Microsoft, so these printers are not usable by any other
system.

I have been told by a “professionally trained” computer
salesperson that the “for Windows” sticker means the
printer needs a very special kind of RAM, which only Windows machines
have; this is why it cannot be used under Linux. Something like
this confuses the typical user, which brings me directly to the second
described tactic.

These tactics are usually gathered under the acronym “FUD”
(Fear Uncertainty Doubt), and were used by IBM long before Microsoft
uncovered them. The idea is clear: if you make someone uncertain
enough, he or she will not dare make any decision,
effectively remaining in his or her current position. That is the
thought.

For all times, education has been the arch-enemy of superstition.
We must not allow education to be hindered by allowing ourselves to
become split.

The most recognizable split in the recent history has been the
already noted distinction between “open source” and
“free software.” Telling both concepts apart is not an
easy task, even for most insiders, and it is only understandable if
viewed in a historical context. Since this is a central point, I'd like
to say a few words about it.

With the completion of the GNU system with the Linux kernel, there was
suddenly a complete, powerful, free system available. This inevitably
had to raise the public's attention sooner or later.

When this attention came, a lot of firms were disconcerted by the word
“free.” The first association was “no money,”
which immediately meant “no profit” for them. When people
then tried to tell them that “free” truly stands for
“freedom,” they were completely shaken.

Infected by this insecurity and doubt, the idea arose to avoid words
like “free” and “freedom” at all costs. The
term “open source” was born.

Admittedly it is easier to sell the idea if you use the term
“open source” instead of “free
software.”
But the consequence is that the “newbies” have no
knowledge or understanding of the original idea. This splits the
movement, and leads to incredibly unproductive trench wars, which waste a
huge amount of creative energy.

A larger interested audience does not mean we should talk less about
the underlying philosophy. Quite the contrary: the more people and
firms do not understand that this freedom is also in their interest,
the more we need to talk about it. The freedom of software offers a
huge potential for all of us—firms and users.

The plan is not to remove capitalism or destroy firms. We want to
change the understanding of software for the benefit of all
participants, to fit the needs of the 21th century. This is the core of
the GNU Project.

Each of us can do his share—be it in form of a program or
documentation, or just by spreading the word that there is another way
of handling things.

It is crucial to explain to the firms that free software is not a
threat, but an opportunity. Of course this doesn't happen
overnight, but when all participants realize the possibilities and
perspectives, all of us will win. So, if you are working in the
software business, make yourself at home with the topic, talk about it
with friends and colleagues. And please refrain from trying to
“missionize” them—I know most of us have this
tendency—the arguments speak for themselves. Give them the time and
peace to think it over, and to befriend themselves with the
concept. Show them that the concept of freedom is nothing to be
feared.

I hope I was able to convey the philosophy or at least stimulate
consideration of some new ideas. If you have questions or would like
to discuss some things, I'll be here all night and all questions are
welcome. I wish everyone a very interesting night. Thank you.