www-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

www/server/staging/gnu gnu.html thegnuproject.html


From: Therese Godefroy
Subject: www/server/staging/gnu gnu.html thegnuproject.html
Date: Thu, 21 Oct 2021 10:45:01 -0400 (EDT)

CVSROOT:        /webcvs/www
Module name:    www
Changes by:     Therese Godefroy <th_g> 21/10/21 10:45:01

Added files:
        server/staging/gnu: gnu.html thegnuproject.html 

Log message:
        Update to boilerplate 1.96; weed out uncopyrightable years.
        * gnu.html: add dates as in essays-and-articles;
          rename about-gnu 'GNU in a Nutshell'.
        * thegnuproject.html: add breadcrumbs; move notes to the bottom;
          link to copyleft-sticker.html.

CVSWeb URLs:
http://web.cvs.savannah.gnu.org/viewcvs/www/server/staging/gnu/gnu.html?cvsroot=www&rev=1.1
http://web.cvs.savannah.gnu.org/viewcvs/www/server/staging/gnu/thegnuproject.html?cvsroot=www&rev=1.1

Patches:
Index: gnu.html
===================================================================
RCS file: gnu.html
diff -N gnu.html
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ gnu.html    21 Oct 2021 14:45:00 -0000      1.1
@@ -0,0 +1,239 @@
+<!--#include virtual="/server/header.html" -->
+<!-- Parent-Version: 1.96-->
+<!-- This page is derived from /server/standards/boilerplate.html -->
+<title>About the GNU Operating System
+- GNU project - Free Software Foundation</title>
+<style type="text/css" media="print,screen"><!--
+#dynamic-duo { display: none; }
+@media (min-width: 45em) {
+   .short-lines { width: 48em; max-width: 100%; }
+   #dynamic-duo {
+      display: block;
+      padding: .9em;
+      background: #f9f9f9;
+      border: .3em solid #acc890;
+      margin-top: 5.5em;
+   }
+   #dynamic-duo p strong {
+      font-size: 1.3em;
+   }
+   #dynamic-duo img { width: 100%; }
+}
+--></style>
+<!--#include virtual="/gnu/po/gnu.translist" -->
+<!--#include virtual="/server/banner.html" -->
+<h2>About the GNU Operating System</h2>
+<div class="thin"></div>
+
+<div class="short-lines"><ul>
+  <li><a href="/gnu/about-gnu.html">GNU in a Nutshell</a></li>
+</ul></div>
+
+<div id="dynamic-duo" class="pict narrow">
+<p><strong>Download distributions</strong></p>
+<p><a href="/distros/free-distros.html">
+<img src="/graphics/gnu-and-penguin-color-300x276.jpg" alt="&nbsp;[GNU and 
Linux]&nbsp;" /></a></p>
+<p><em>If you're looking for a whole system to
+install, see our <a href="/distros/free-distros.html">list of
+GNU/Linux distributions which are entirely free software</a>.</em></p>
+</div>
+
+<div class="short-lines">
+<h3 id="gnu-history">GNU History</h3>
+<ul>
+  <li><!--#set var='DATE' value='<span class="date-tag">*[1996]</span>'
+  --><!--#echo encoding='none' var='DATE' -->
+    <a href="/gnu/gnu-history.html">
+      Overview of the GNU System</a></li>
+  <li><!--#set var='DATE' value='<span class="date-tag">*[1998]</span>'
+  --><!--#echo encoding='none' var='DATE' -->
+    <a href="/gnu/thegnuproject.html">
+      The GNU Project</a>
+      (by Richard Stallman)
+      &mdash; A more detailed history of GNU</li>
+  <li><!--#set var='DATE' value='<span class="date-tag">*[1985]</span>'
+  --><!--#echo encoding='none' var='DATE' -->
+    <a href="/gnu/manifesto.html">
+      The GNU Manifesto</a></li>
+  <li><!--#set var='DATE' value='<span class="date-tag">*[1983]</span>'
+  --><!--#echo encoding='none' var='DATE' -->
+    <a href="/gnu/initial-announcement.html">
+      Initial Announcement</a> of the GNU Project</li>
+  <li><!--#set var='DATE' value='<span class="date-tag">[2003]</span>'
+  --><!--#echo encoding='none' var='DATE' -->
+    <a href="/gnu/rms-lisp.html">
+      My Lisp Experiences and the Development of GNU Emacs</a>
+      (by Richard Stallman)</li>
+  <li><!--#set var='DATE' value='<span class="date-tag">[1999]</span>'
+  --><!--#echo encoding='none' var='DATE' -->
+    <a href="/philosophy/15-years-of-free-software.html">
+      15 Years of Free Software</a>
+      (by Richard Stallman)</li>
+  <li><!--#set var='DATE' value='<span class="date-tag">[1999]</span>'
+  --><!--#echo encoding='none' var='DATE' -->
+    <a href="/gnu/byte-interview.html">
+      BYTE interview with Richard Stallman</a></li>
+  <li><!--#set var='DATE' value='<span class="date-tag">[1989]</span>'
+  --><!--#echo encoding='none' var='DATE' -->
+    <a 
href="https://www.nytimes.com/1989/01/11/business/business-technology-one-man-s-fight-for-free-software.html";>
+      One Man's Fight for Free Software</a>
+      (by John Markoff)
+      &mdash; An article about Richard
+      Stallman and the early GNU development, published at <cite>The
+      New York Times</cite> on January 11, 1989. One problem with the
+      article is that it uses the propaganda term &ldquo;intellectual
+      property&rdquo; as if that referred to something coherent.  The
+      term is such a confusion that talking about it <a
+      href="/philosophy/not-ipr.html">makes no sense</a>. The article
+      is also somewhat confused in regard to Symbolics.  What Stallman
+      did, while still working at MIT, was to write, independently,
+      replacement improvements comparable to the improvements that
+      Symbolics made in its version of the MIT Lisp Machine
+      System.</li>
+</ul>
+
+<p>Here are two postings that Stallman wrote for a bulletin board at
+Stanford while he was visiting there in May, 1983.  They show some of
+his thinking on the way towards launching the development of the GNU
+system.  They don't use the term &ldquo;free software&rdquo;;
+apparently he had not yet started to put those two words together.</p>
+
+<ul>
+  <li><!--#set var='DATE' value='<span class="date-tag">[1983]</span>'
+  --><!--#echo encoding='none' var='DATE' -->
+    <a href="/gnu/why-programs-should-be-shared.html">
+      Why Programs Should be Shared</a></li>
+  <li><!--#set var='DATE' value='<span class="date-tag">[1983]</span>'
+  --><!--#echo encoding='none' var='DATE' -->
+    <a href="/gnu/yes-give-it-away.html">
+      Yes, Give It Away</a></li>
+</ul>
+
+<h3 id="gnu-structure">GNU Structure</h3>
+
+<ul>
+  <li><!--#set var='DATE' value='<span class="date-tag">[2020]</span>'
+  --><!--#echo encoding='none' var='DATE' -->
+    <a href="/gnu/gnu-structure.html">
+      The Structure and Administration of the GNU Project</a>
+      (by Brandon Invergo and Richard Stallman)</li>
+</ul>
+
+<h3 id="gnulinux">GNU and Linux</h3>
+
+<ul>
+  <li><!--#set var='DATE' value='<span class="date-tag">*[2000-2007]</span>'
+  --><!--#echo encoding='none' var='DATE' -->
+    <a href="/gnu/why-gnu-linux.html">
+      What's in a Name?</a>
+      (by Richard Stallman)
+      &mdash; Why the &lsquo;Linux system&rsquo; should be called 
GNU/Linux</li>
+  <li><!--#set var='DATE' value='<span class="date-tag">[2001-2020]</span>'
+  --><!--#echo encoding='none' var='DATE' -->
+    <a href="/gnu/gnu-linux-faq.html">
+      A GNU/Linux FAQ</a>
+      (by Richard Stallman)</li>
+  <li><!--#set var='DATE' value='<span class="date-tag">[1997-2019]</span>'
+  --><!--#echo encoding='none' var='DATE' -->
+    <a href="/gnu/linux-and-gnu.html">
+      Linux and the GNU System</a>
+      (by Richard Stallman)
+      &mdash; The relationship between GNU and Linux</li>
+  <li><!--#set var='DATE' value='<span class="date-tag">[2018]</span>'
+  --><!--#echo encoding='none' var='DATE' -->
+    <a href="/gnu/incorrect-quotation.html">
+      Incorrect Quotation</a>
+      (by Richard Stallman)</li>
+  <li><!--#set var='DATE' value='<span class="date-tag">[2006]</span>'
+  --><!--#echo encoding='none' var='DATE' -->
+    <a href="/gnu/gnu-users-never-heard-of-gnu.html">
+      GNU Users Who Have Never Heard of GNU</a>
+      (by Richard Stallman)</li>
+</ul>
+
+
+<h3 id="misc">Other GNU-related resources</h3>
+
+<ul>
+  <li><a href="http://libreplanet.org/wiki/Group_list";>GNU/Linux,
+      GNU/Hurd, and free software user groups</a></li>
+</ul>
+
+<h3 id="elsewhere">GNU elsewhere</h3>
+
+<h4 id="asteroid">(9965) GNU</h4>
+
+<p>Main-belt
+asteroid <a 
href="https://www.minorplanetcenter.net/db_search/show_object?object_id=9965";>(9965)
+GNU</a>, provisionally designated as 1992 EF<sub>2</sub>, was named
+after the GNU project in
+the <a 
href="https://www.minorplanetcenter.net/iau/ECS/MPCArchive/2000/MPC_20001111.pdf";>Minor
+Planet Circular 41571</a>. The asteroid was discovered at Kitt Peak by
+Spacewatch on the 5<sup>th</sup> March 1992.</p>
+</div>
+
+</div><!-- for id="content", starts in the include above -->
+<!--#include virtual="/server/footer.html" -->
+<div id="footer" role="contentinfo">
+<div class="unprintable">
+
+<p>Please send general FSF &amp; GNU inquiries to
+<a href="mailto:gnu@gnu.org";>&lt;gnu@gnu.org&gt;</a>.
+There are also <a href="/contact/">other ways to contact</a>
+the FSF.  Broken links and other corrections or suggestions can be sent
+to <a href="mailto:webmasters@gnu.org";>&lt;webmasters@gnu.org&gt;</a>.</p>
+
+<p><!-- TRANSLATORS: Ignore the original text in this paragraph,
+        replace it with the translation of these two:
+
+        We work hard and do our best to provide accurate, good quality
+        translations.  However, we are not exempt from imperfection.
+        Please send your comments and general suggestions in this regard
+        to <a href="mailto:web-translators@gnu.org";>
+        &lt;web-translators@gnu.org&gt;</a>.</p>
+
+        <p>For information on coordinating and contributing translations of
+        our web pages, see <a
+        href="/server/standards/README.translations.html">Translations
+        README</a>. -->
+Please see the <a
+href="/server/standards/README.translations.html">Translations
+README</a> for information on coordinating and contributing translations
+of this article.</p>
+</div>
+
+<!-- Regarding copyright, in general, standalone pages (as opposed to
+     files generated as part of manuals) on the GNU web server should
+     be under CC BY-ND 4.0.  Please do NOT change or remove this
+     without talking with the webmasters or licensing team first.
+     Please make sure the copyright date is consistent with the
+     document.  For web pages, it is ok to list just the latest year the
+     document was modified, or published.
+     
+     If you wish to list earlier years, that is ok too.
+     Either "2001, 2002, 2003" or "2001-2003" are ok for specifying
+     years, as long as each year in the range is in fact a copyrightable
+     year, i.e., a year in which the document was published (including
+     being publicly visible on the web or in a revision control system).
+     
+     There is more detail about copyright years in the GNU Maintainers
+     Information document, www.gnu.org/prep/maintain. -->
+
+<p>Copyright &copy; 2002, 2006-2008, 2011, 2014, 2016, 2020 Free
+Software Foundation, Inc.</p>
+
+<p>This page is licensed under a <a rel="license"
+href="http://creativecommons.org/licenses/by-nd/4.0/";>Creative
+Commons Attribution-NoDerivatives 4.0 International License</a>.</p>
+
+<!--#include virtual="/server/bottom-notes.html" -->
+
+<p class="unprintable">Updated:
+<!-- timestamp start -->
+$Date: 2021/10/21 14:45:00 $
+<!-- timestamp end -->
+</p>
+</div>
+</div><!-- for class="inner", starts in the banner include -->
+</body>
+</html>

Index: thegnuproject.html
===================================================================
RCS file: thegnuproject.html
diff -N thegnuproject.html
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ thegnuproject.html  21 Oct 2021 14:45:00 -0000      1.1
@@ -0,0 +1,1102 @@
+<!--#include virtual="/server/header.html" -->
+<!-- Parent-Version: 1.96 -->
+<!-- This page is derived from /server/standards/boilerplate.html -->
+<!--#set var="TAGS" value="gnu-history" -->
+<!--#set var="DISABLE_TOP_ADDENDUM" value="yes" -->
+<title>About the GNU Project
+- GNU Project - Free Software Foundation</title>
+<meta http-equiv="Keywords" content="GNU, GNU Project, FSF, Free Software, 
Free Software Foundation, History" />
+<!--#include virtual="/gnu/po/thegnuproject.translist" -->
+<!--#include virtual="/server/banner.html" -->
+<div class="breadcrumb" role="navigation">
+<a href="/"><img src="/graphics/icons/home.png" height="26" width="26"
+     alt="GNU Home" title="GNU Home" /><span
+ class="gnun-split"></span></a>&nbsp;/<span class="gnun-split"></span>
+<a href="/server/staging/gnu/gnu.html#content">About&nbsp;GNU<span
+ class="gnun-split"></span></a>&nbsp;/<span class="gnun-split"></span>
+<a href="/server/staging/gnu/gnu.html#gnu-history">GNU&nbsp;history<span
+ class="gnun-split"></span></a>&nbsp;/<span class="gnun-split"></span>
+</div>
+<!--GNUN: OUT-OF-DATE NOTICE-->
+<!--#include virtual="/server/top-addendum.html" -->
+<div class="article reduced-width">
+<h2>The GNU Project</h2>
+
+<address class="byline">by <a href="https://www.stallman.org/";>Richard
+Stallman</a></address>
+
+<h3>The first software-sharing community</h3>
+<p>
+When I started working at the 
+<abbr title="Massachusetts Institute of Technology">MIT</abbr>
+Artificial Intelligence Lab in 1971, I became part of a
+software-sharing community that had existed for many years.  Sharing
+of software was not limited to our particular community; it is as old
+as computers, just as sharing of recipes is as old as cooking.  But we
+did it more than most.</p>
+<p>
+The AI Lab used a timesharing operating system called
+<abbr title="Incompatible Timesharing System">ITS</abbr> (the
+Incompatible Timesharing System) that the lab's staff hackers&nbsp;<a 
href="#ft1">[1]</a> had
+designed and written in assembler language for the Digital
+<abbr title="Programmed Data Processor">PDP</abbr>-10, one of
+the large computers of the era.  As a member of this community, an AI
+Lab staff system hacker, my job was to improve this system.</p>
+<p>
+We did not call our software &ldquo;free software,&rdquo; because that
+term did not yet exist; but that is what it was.  Whenever people from
+another university or a company wanted to port and use a program, we
+gladly let them.  If you saw someone using an unfamiliar and
+interesting program, you could always ask to see the source code, so
+that you could read it, change it, or cannibalize parts of it to make
+a new program.</p>
+
+<div class="announcement comment" role="complementary">
+<hr class="no-display" />
+<p>
+Why it is even more important than ever
+<a href="/philosophy/free-software-even-more-important.html">to insist
+that the software we use be free</a>.
+</p>
+<hr class="no-display" />
+</div>
+
+<h3>The collapse of the community</h3>
+<p>
+The situation changed drastically in the early 1980s when Digital
+discontinued the PDP-10 series.  Its architecture, elegant and
+powerful in the 60s, could not extend naturally to the larger address
+spaces that were becoming feasible in the 80s.  This meant that nearly
+all of the programs composing ITS were obsolete.</p>
+<p>
+The AI Lab hacker community had already collapsed, not long before.
+In 1981, the spin-off company Symbolics had hired away nearly all of
+the hackers from the AI Lab, and the depopulated community was unable
+to maintain itself.  (The book <cite>Hackers</cite>, by Steve Levy, describes 
these
+events, as well as giving a clear picture of this community in its
+prime.)  When the AI Lab bought a new PDP-10 in 1982, its
+administrators decided to use Digital's nonfree timesharing system
+instead of ITS.</p>
+<p>
+The modern computers of the era, such as the VAX or the 68020, had
+their own operating systems, but none of them were free software: you
+had to sign a nondisclosure agreement even to get an executable copy.</p>
+<p>
+This meant that the first step in using a computer was to promise not
+to help your neighbor.  A cooperating community was forbidden.  The
+rule made by the owners of proprietary software was, &ldquo;If you
+share with your neighbor, you are a pirate.  If you want any changes,
+beg us to make them.&rdquo;</p>
+<p>
+The idea that the proprietary software social system&mdash;the system
+that says you are not allowed to share or change software&mdash;is
+antisocial, that it is unethical, that it is simply wrong, may come as
+a surprise to some readers.  But what else could we say about a system
+based on dividing the public and keeping users helpless?  Readers who
+find the idea surprising may have taken the proprietary software
+social system as a given, or judged it on the terms suggested by
+proprietary software businesses.  Software publishers have worked long
+and hard to convince people that there is only one way to look at the
+issue.</p>
+<p>
+When software publishers talk about &ldquo;enforcing&rdquo; their
+&ldquo;rights&rdquo; or &ldquo;stopping <a
+href="/philosophy/words-to-avoid.html#Piracy">piracy</a>,&rdquo; what they
+actually <em>say</em> is secondary.  The real message of these statements is
+in the unstated assumptions they take for granted, which the public is
+asked to accept without examination.  Let's therefore examine them.</p>
+<p>
+One assumption is that software companies have an unquestionable natural
+right to own software and thus have power over all its users.  (If
+this were a natural right, then no matter how much harm it does to the
+public, we could not object.)  Interestingly, the US Constitution and
+legal tradition reject this view; copyright is not a natural right,
+but an artificial government-imposed monopoly that limits the users'
+natural right to copy.</p>
+<p>
+Another unstated assumption is that the only important thing about
+software is what jobs it allows you to do&mdash;that we computer users
+should not care what kind of society we are allowed to have.</p>
+<p>
+A third assumption is that we would have no usable software (or would
+never have a program to do this or that particular job) if we did not
+offer a company power over the users of the program.  This assumption
+may have seemed plausible, before the free software movement
+demonstrated that we can make plenty of useful software without
+putting chains on it.</p>
+<p>
+If we decline to accept these assumptions, and judge these issues
+based on ordinary commonsense morality while placing the users first,
+we arrive at very different conclusions.  Computer users should be
+free to modify programs to fit their needs, and free to share
+software, because helping other people is the basis of society.</p>
+<p>
+There is no room here for an extensive statement of the reasoning
+behind this conclusion, so I refer the reader to &ldquo;<a
+href="/philosophy/why-free.html">Why Software Should Not Have
+Owners</a>,&rdquo; and &ldquo;<a
+href="/philosophy/free-software-even-more-important.html">Free
+Software Is Even More Important Now</a>.&rdquo;
+</p>
+
+<h3>A stark moral choice</h3>
+<p>
+With my community gone, to continue as before was impossible.
+Instead, I faced a stark moral choice.</p>
+<p>
+The easy choice was to join the proprietary software world, signing
+nondisclosure agreements and promising not to help my fellow hacker.
+Most likely I would also be developing software that was released
+under nondisclosure agreements, thus adding to the pressure on other
+people to betray their fellows too.</p>
+<p>
+I could have made money this way, and perhaps amused myself writing
+code.  But I knew that at the end of my career, I would look back on
+years of building walls to divide people, and feel I had spent my life
+making the world a worse place.</p>
+<p>
+I had already experienced being on the receiving end of a
+nondisclosure agreement, when someone refused to give me and the MIT
+AI Lab the source code for the control program for our printer.  (The
+lack of certain features in this program made use of the printer
+extremely frustrating.)  So I could not tell myself that nondisclosure
+agreements were innocent.  I was very angry when he refused to share
+with us; I could not turn around and do the same thing to everyone
+else.</p>
+<p>
+Another choice, straightforward but unpleasant, was to leave the
+computer field.  That way my skills would not be misused, but they
+would still be wasted.  I would not be culpable for dividing and
+restricting computer users, but it would happen nonetheless.</p>
+<p>
+So I looked for a way that a programmer could do something for the
+good.  I asked myself, was there a program or programs that I could
+write, so as to make a community possible once again?</p>
+<p>
+The answer was clear: what was needed first was an operating system.
+That is the crucial software for starting to use a computer.  With an
+operating system, you can do many things; without one, you cannot run
+the computer at all.  With a free operating system, we could again
+have a community of cooperating hackers&mdash;and invite anyone to join.
+And anyone would be able to use a computer without starting out by
+conspiring to deprive his or her friends.</p>
+<p>
+As an operating system developer, I had the right skills for this job.
+So even though I could not take success for granted, I realized that I
+was elected to do the job.  I chose to make the system compatible with
+Unix so that it would be portable, and so that Unix users could easily
+switch to it.  The name GNU was chosen, following a hacker tradition, as
+a recursive acronym for &ldquo;GNU's Not Unix.&rdquo; It is pronounced
+as <a href="/gnu/pronunciation.html">one syllable with a 
hard&nbsp;<i>g</i></a>.</p>
+<p>
+An operating system does not mean just a kernel, barely enough to run
+other programs.  In the 1970s, every operating system worthy of the
+name included command processors, assemblers, compilers, interpreters,
+debuggers, text editors, mailers, and much more.  ITS had them,
+Multics had them, VMS had them, and Unix had them.  The GNU operating
+system would include them too.</p>
+<p>
+Later I heard these words, attributed to Hillel&nbsp;<a 
href="#ft2">[2]</a>:</p>
+
+<blockquote><p>
+     If I am not for myself, who will be for me?<br />
+     If I am only for myself, what am I?<br />
+     If not now, when?
+</p></blockquote>
+<p>
+The decision to start the GNU Project was based on a similar spirit.</p>
+
+<h3>Free as in freedom</h3>
+<p>
+The term &ldquo;free software&rdquo; is sometimes misunderstood&mdash;it
+has nothing to do with price.  It is about freedom.  Here, therefore,
+is the definition of free software.</p>
+
+<p>A program is free software, for you, a particular user, if:</p>
+
+<ul>
+  <li>You have the freedom to run the program as you wish, for any 
purpose.</li>
+
+  <li>You have the freedom to modify the program to suit your needs.
+     (To make this freedom effective in practice, you must have access
+     to the source code, since making changes in a program without
+     having the source code is exceedingly difficult.)</li>
+
+  <li>You have the freedom to redistribute copies, either gratis
+     or for a fee.</li>
+
+  <li>You have the freedom to distribute modified versions of the program,
+     so that the community can benefit from your improvements.</li>
+</ul>
+<p>
+Since &ldquo;free&rdquo; refers to freedom, not to price, there is no
+contradiction between selling copies and free software.  In fact, the
+freedom to sell copies is crucial: collections of free software sold
+on CD-ROMs are important for the community, and selling them is an
+important way to raise funds for free software development.
+Therefore, a program which people are not free to include on these
+collections is not free software.</p>
+<p>
+Because of the ambiguity of &ldquo;free,&rdquo; people have long
+looked for alternatives, but no one has found a better term.
+The English language has more words and nuances than any other, but it
+lacks a simple, unambiguous, word that means &ldquo;free,&rdquo; as in
+freedom&mdash;&ldquo;unfettered&rdquo; being the word that comes closest in
+meaning.  Such alternatives as &ldquo;liberated,&rdquo;
+&ldquo;freedom,&rdquo; and &ldquo;open&rdquo; have either the wrong
+meaning or some other disadvantage.</p>
+
+<h3>GNU software and the GNU system</h3>
+<p>
+Developing a whole system is a very large project.  To bring it into
+reach, I decided to adapt and use existing pieces of free software
+wherever that was possible.  For example, I decided at the very
+beginning to use TeX as the principal text formatter; a few years
+later, I decided to use the X Window System rather than writing
+another window system for GNU.</p>
+<p>
+Because of these decisions, and others like them,
+the GNU system is not the same as the collection of all
+GNU software.  The GNU system includes programs that are not GNU
+software, programs that were developed by other people and projects
+for their own purposes, but which we can use because they are free
+software.</p>
+
+<h3>Commencing the project</h3>
+<p>
+In January 1984 I quit my job at MIT and began writing GNU software.
+Leaving MIT was necessary so that MIT would not be able to interfere
+with distributing GNU as free software.  If I had remained on the
+staff, MIT could have claimed to own the work, and could have imposed
+their own distribution terms, or even turned the work into a
+proprietary software package.  I had no intention of doing a large
+amount of work only to see it become useless for its intended purpose:
+creating a new software-sharing community.</p>
+<p>
+However, Professor Winston, then the head of the MIT AI Lab, kindly
+invited me to keep using the lab's facilities.</p>
+
+<h3>The first steps</h3>
+<p>
+Shortly before beginning the GNU Project, I heard about the Free
+University Compiler Kit, also known as VUCK.  (The Dutch word for
+&ldquo;free&rdquo; is written with a <i>v</i>.)  This was a compiler
+designed to handle multiple languages, including C and Pascal, and to
+support multiple target machines.  I wrote to its author asking if GNU
+could use it.</p>
+<p>
+He responded derisively, stating that the university was free but the
+compiler was not.  I therefore decided that my first program for the
+GNU Project would be a multilanguage, multiplatform compiler.</p>
+<p>
+Hoping to avoid the need to write the whole compiler myself, I
+obtained the source code for the Pastel compiler, which was a
+multiplatform compiler developed at Lawrence Livermore Lab.  It
+supported, and was written in, an extended version of Pascal, designed
+to be a system-programming language.  I added a C front end, and began
+porting it to the Motorola 68000 computer.  But I had to give that
+up when I discovered that the compiler needed many megabytes of stack
+space, and the available 68000 Unix system would only allow 64k.</p>
+<p>
+I then realized that the Pastel compiler functioned by parsing the
+entire input file into a syntax tree, converting the whole syntax tree
+into a chain of &ldquo;instructions,&rdquo; and then generating the
+whole output file, without ever freeing any storage.  At this point, I
+concluded I would have to write a new compiler from scratch.  That new
+compiler is now known as <abbr title="GNU Compiler Collection">GCC</abbr>;
+none of the Pastel compiler is used in it, but I managed to adapt and
+use the C front end that I had written.  But that was some years
+later; first, I worked on GNU Emacs.</p>
+
+<h3>GNU Emacs</h3>
+<p>
+I began work on GNU Emacs in September 1984, and in early 1985 it was
+beginning to be usable.  This enabled me to begin using Unix systems
+to do editing; having no interest in learning to use vi or ed, I had
+done my editing on other kinds of machines until then.</p>
+<p>
+At this point, people began wanting to use GNU Emacs, which raised the
+question of how to distribute it.  Of course, I put it on the
+anonymous ftp server on the MIT computer that I used.  (This computer,
+prep.ai.mit.edu, thus became the principal GNU ftp distribution site;
+when it was decommissioned a few years later, we transferred the name
+to our new ftp server.)  But at that time, many of the interested
+people were not on the Internet and could not get a copy by ftp.  So
+the question was, what would I say to them?</p>
+<p>
+I could have said, &ldquo;Find a friend who is on the net and who will make
+a copy for you.&rdquo;  Or I could have done what I did with the original
+PDP-10 Emacs: tell them, &ldquo;Mail me a tape and a
+<abbr title="Self-addressed Stamped Envelope">SASE</abbr>, and I
+will mail it back with Emacs on it.&rdquo; But I had no job, and I was
+looking for ways to make money from free software.  So I announced
+that I would mail a tape to whoever wanted one, for a fee of $150.  In
+this way, I started a free software distribution business, the
+precursor of the companies that today distribute entire GNU/Linux
+system distributions.</p>
+
+<h3>Is a program free for every user?</h3>
+<p>
+If a program is free software when it leaves the hands of its author,
+this does not necessarily mean it will be free software for everyone
+who has a copy of it.  For example,
+<a href="/philosophy/categories.html#PublicDomainSoftware"> public domain
+software</a> (software that is not copyrighted) is free software; but
+anyone can make a proprietary modified version of it.  Likewise, many
+free programs are copyrighted but distributed under simple permissive
+licenses which allow proprietary modified versions.</p>
+<p>
+The paradigmatic example of this problem is the X Window System.
+Developed at MIT, and released as free software with a permissive
+license, it was soon adopted by various computer companies.  They
+added X to their proprietary Unix systems, in binary form only, and
+covered by the same nondisclosure agreement.  These copies of X were
+no more free software than Unix was.</p>
+<p>
+The developers of the X Window System did not consider this a
+problem&mdash;they expected and intended this to happen.  Their goal was
+not freedom, just &ldquo;success,&rdquo; defined as &ldquo;having many
+users.&rdquo; They did not care whether these users had freedom, only
+that they should be numerous.</p>
+<p>
+This led to a paradoxical situation where two different ways of
+counting the amount of freedom gave different answers to the question,
+&ldquo;Is this program free?&rdquo; If you judged based on the freedom
+provided by the distribution terms of the MIT release, you would say
+that X was free software.  But if you measured the freedom of the
+average user of X, you would have to say it was proprietary software.
+Most X users were running the proprietary versions that came with Unix
+systems, not the free version.</p>
+
+<h3>Copyleft and the GNU GPL</h3>
+<p>
+The goal of GNU was to give users freedom, not just to be popular.  So
+we needed to use distribution terms that would prevent GNU software
+from being turned into proprietary software.  The method we use is
+called &ldquo;copyleft.&rdquo;<a href="#ft3">[3]</a></p>
+<p>
+Copyleft uses copyright law, but flips it over to serve the opposite
+of its usual purpose: instead of a means for restricting a program, it
+becomes a means for keeping the program free.</p>
+<p>
+The central idea of copyleft is that we give everyone permission to
+run the program, copy the program, modify the program, and distribute
+modified versions&mdash;but not permission to add restrictions of their
+own.  Thus, the crucial freedoms that define &ldquo;free
+software&rdquo; are guaranteed to everyone who has a copy; they become
+inalienable rights.</p>
+<p>
+For an effective copyleft, modified versions must also be free.  This
+ensures that work based on ours becomes available to our community if
+it is published.  When programmers who have jobs as programmers
+volunteer to improve GNU software, it is copyleft that prevents their
+employers from saying, &ldquo;You can't share those changes, because
+we are going to use them to make our proprietary version of the
+program.&rdquo;</p>
+<p>
+The requirement that changes must be free is essential if we want to
+ensure freedom for every user of the program.  The companies that
+privatized the X Window System usually made some changes to port it to
+their systems and hardware.  These changes were small compared with
+the great extent of X, but they were not trivial.  If making changes
+were an excuse to deny the users freedom, it would be easy for anyone
+to take advantage of the excuse.</p>
+<p>
+A related issue concerns combining a free program with nonfree code.
+Such a combination would inevitably be nonfree; whichever freedoms
+are lacking for the nonfree part would be lacking for the whole as
+well.  To permit such combinations would open a hole big enough to
+sink a ship.  Therefore, a crucial requirement for copyleft is to plug
+this hole: anything added to or combined with a copylefted program
+must be such that the larger combined version is also free and
+copylefted.</p>
+<p>
+The specific implementation of copyleft that we use for most GNU
+software is the GNU General Public License, or GNU GPL for short.  We
+have other kinds of copyleft that are used in specific circumstances.
+GNU manuals are copylefted also, but use a much simpler kind of
+copyleft, because the complexity of the GNU GPL is not necessary
+for manuals.<a href="#ft4">[4]</a></p>
+
+<h3>The Free Software Foundation</h3>
+
+<p>As interest in using Emacs was growing, other people became
+involved in the GNU project, and we decided that it was time to seek
+funding once again.  So in 1985 we created
+the <a href="https://www.fsf.org/";>Free Software Foundation</a> (FSF),
+a tax-exempt charity for free software development.  The
+<abbr title="Free Software Foundation">FSF</abbr> also took over
+the Emacs tape distribution business; later it extended this by adding
+other free software (both GNU and non-GNU) to the tape, and by selling
+free manuals as well.</p>
+
+<p>Most of the FSF's income used to come from sales of copies of free
+software and of other related services (CD-ROMs of source code,
+CD-ROMs with binaries, nicely printed manuals, all with the freedom to
+redistribute and modify), and Deluxe Distributions (distributions for
+which we built the whole collection of software for the customer's
+choice of platform).  Today the FSF
+still <a href="https://shop.fsf.org/";> sells manuals and other
+gear</a>, but it gets the bulk of its funding from members' dues.  You
+can join the FSF at <a href="https://my.fsf.org/join";>fsf.org</a>.</p>
+
+<p>Free Software Foundation employees have written and maintained a
+number of GNU software packages.  Two notable ones are the C library
+and the shell.  The GNU C library is what every program running on a
+GNU/Linux system uses to communicate with Linux.  It was developed by
+a member of the Free Software Foundation staff, Roland McGrath.  The
+shell used on most GNU/Linux systems is
+<abbr title="Bourne Again Shell">BASH</abbr>, the Bourne Again
+SHell,<a href="#ft5">[5]</a> which was developed by FSF employee Brian Fox.</p>
+
+<p>We funded development of these programs because the GNU Project was
+not just about tools or a development environment.  Our goal was a
+complete operating system, and these programs were needed for that
+goal.</p>
+
+<h3>Free software support</h3>
+
+<p>The free software philosophy rejects a specific widespread business
+practice, but it is not against business.  When businesses respect the
+users' freedom, we wish them success.</p>
+
+<p>Selling copies of Emacs demonstrates one kind of free software
+business.  When the FSF took over that business, I needed another way
+to make a living.  I found it in selling services relating to the free
+software I had developed.  This included teaching, for subjects such
+as how to program GNU Emacs and how to customize GCC, and software
+development, mostly porting GCC to new platforms.</p>
+
+<p>Today each of these kinds of free software business is practiced by a
+number of corporations.  Some distribute free software collections on
+CD-ROM; others sell support at levels ranging from answering user
+questions, to fixing bugs, to adding major new features.  We are even
+beginning to see free software companies based on launching new free
+software products.</p>
+
+<p>Watch out, though&mdash;a number of companies that associate themselves
+with the term &ldquo;open source&rdquo; actually base their business
+on nonfree software that works with free software.  These are not
+free software companies, they are proprietary software companies whose
+products tempt users away from freedom.  They call these programs
+&ldquo;value-added packages,&rdquo; which shows the values they
+would like us to adopt: convenience above freedom.  If we value freedom
+more, we should call them &ldquo;freedom-subtracted&rdquo; packages.</p>
+
+<h3>Technical goals</h3>
+
+<p>The principal goal of GNU is to be free software.  Even if GNU had no
+technical advantage over Unix, it would have a social advantage,
+allowing users to cooperate, and an ethical advantage, respecting the
+user's freedom.</p>
+
+<p>But it was natural to apply the known standards of good practice to
+the work&mdash;for example, dynamically allocating data structures to avoid
+arbitrary fixed size limits, and handling all the possible 8-bit codes
+wherever that made sense.</p>
+
+<p>In addition, we rejected the Unix focus on small memory size, by
+deciding not to support 16-bit machines (it was clear that 32-bit
+machines would be the norm by the time the GNU system was finished),
+and to make no effort to reduce memory usage unless it exceeded a
+megabyte.  In programs for which handling very large files was not
+crucial, we encouraged programmers to read an entire input file into
+core, then scan its contents without having to worry about I/O.</p>
+
+<p>These decisions enabled many GNU programs to surpass their Unix
+counterparts in reliability and speed.</p>
+
+<h3>Donated computers</h3>
+
+<p>As the GNU Project's reputation grew, people began offering to donate
+machines running Unix to the project.  These were very useful, because
+the easiest way to develop components of GNU was to do it on a Unix
+system, and replace the components of that system one by one.  But
+they raised an ethical issue: whether it was right for us to have a
+copy of Unix at all.</p>
+
+<p>Unix was (and is) proprietary software, and the GNU Project's
+philosophy said that we should not use proprietary software.  But,
+applying the same reasoning that leads to the conclusion that violence
+in self defense is justified, I concluded that it was legitimate to
+use a proprietary package when that was crucial for developing a free
+replacement that would help others stop using the proprietary package.</p>
+
+<p>But, even if this was a justifiable evil, it was still an evil.  Today
+we no longer have any copies of Unix, because we have replaced them
+with free operating systems.  If we could not replace a machine's
+operating system with a free one, we replaced the machine instead.</p>
+
+<h3>The GNU Task List</h3>
+
+<p>As the GNU Project proceeded, and increasing numbers of system
+components were found or developed, eventually it became useful to
+make a list of the remaining gaps.  We used it to recruit developers
+to write the missing pieces.  This list became known as the GNU Task
+List.  In addition to missing Unix components, we listed various
+other useful software and documentation projects that, we thought, a
+truly complete system ought to have.</p>
+
+<p>Today,<a href="#ft6">[6]</a> hardly any Unix components are left in the GNU 
Task
+List&mdash;those jobs had been done, aside from a few inessential
+ones.  But the list is full of projects that some might call
+&ldquo;applications.&rdquo;  Any program that appeals to more than a
+narrow class of users would be a useful thing to add to an operating
+system.</p>
+
+<p>Even games are included in the task list&mdash;and have been since the
+beginning.  Unix included games, so naturally GNU should too.  But
+compatibility was not an issue for games, so we did not follow the
+list of games that Unix had.  Instead, we listed a spectrum of
+different kinds of games that users might like.</p>
+
+<h3>The GNU Library GPL</h3>
+
+<p>The GNU C library uses a special kind of copyleft called the GNU
+Library General Public License,<a href="#ft7">[7]</a> which gives permission 
to link
+proprietary software with the library.  Why make this exception?</p>
+
+<p>It is not a matter of principle; there is no principle that says
+proprietary software products are entitled to include our code.  (Why
+contribute to a project predicated on refusing to share with us?)
+Using the LGPL for the C library, or for any library, is a matter of
+strategy.</p>
+
+<p>The C library does a generic job; every proprietary system or compiler
+comes with a C library.  Therefore, to make our C library available
+only to free software would not have given free software any
+advantage&mdash;it would only have discouraged use of our library.</p>
+
+<p>One system is an exception to this: on the GNU system (and this
+includes GNU/Linux), the GNU C library is the only C library.  So the
+distribution terms of the GNU C library determine whether it is
+possible to compile a proprietary program for the GNU system.  There
+is no ethical reason to allow proprietary applications on the GNU
+system, but strategically it seems that disallowing them would do more
+to discourage use of the GNU system than to encourage development of
+free applications.  That is why using the Library GPL is a good
+strategy for the C library.</p>
+
+<p>For other libraries, the strategic decision needs to be
+considered on a case-by-case basis.  When a library does a special job
+that can help write certain kinds of programs, then releasing it under
+the GPL, limiting it to free programs only, is a way of helping other
+free software developers, giving them an advantage against proprietary
+software.</p>
+
+<p>Consider GNU Readline, a library that was developed to provide
+command-line editing for BASH.  Readline is released under the
+ordinary GNU GPL, not the Library GPL.  This probably does reduce the
+amount Readline is used, but that is no loss for us.  Meanwhile, at
+least one useful application has been made free software specifically
+so it could use Readline, and that is a real gain for the
+community.</p>
+
+<p>Proprietary software developers have the advantages money provides;
+free software developers need to make advantages for each other.  I
+hope some day we will have a large collection of GPL-covered libraries
+that have no parallel available to proprietary software, providing
+useful modules to serve as building blocks in new free software, and
+adding up to a major advantage for further free software development.</p>
+
+<h3>Scratching an itch?</h3>
+<p>
+Eric Raymond says that &ldquo;Every good work of software starts by
+scratching a developer's personal itch.&rdquo;  Maybe that happens
+sometimes, but many essential pieces of GNU software were developed in
+order to have a complete free operating system.  They come from a
+vision and a plan, not from impulse.</p>
+<p>
+For example, we developed the GNU C library because a Unix-like system
+needs a C library, BASH because a Unix-like
+system needs a shell, and GNU tar because a Unix-like system needs a
+tar program.  The same is true for my own programs&mdash;the GNU C
+compiler, GNU Emacs, GDB and GNU Make.</p>
+<p>
+Some GNU programs were developed to cope with specific threats to our
+freedom.  Thus, we developed gzip to replace the Compress program,
+which had been lost to the community because of
+the <abbr title="Lempel-Ziv-Welch">LZW</abbr> patents.  We found
+people to develop LessTif, and more recently started
+<abbr title="GNU Network Object Model Environment">GNOME</abbr>
+and Harmony, to address the problems caused by certain proprietary
+libraries (see below).  We are developing the GNU Privacy Guard to
+replace popular nonfree encryption software, because users should not
+have to choose between privacy and freedom.</p>
+<p>
+Of course, the people writing these programs became interested in the
+work, and many features were added to them by various people for the
+sake of their own needs and interests.  But that is not why the
+programs exist.</p>
+
+<h3>Unexpected developments</h3>
+<p>
+At the beginning of the GNU Project, I imagined that we would develop
+the whole GNU system, then release it as a whole.  That is not how it
+happened.</p>
+<p>
+Since each component of the GNU system was implemented on a Unix
+system, each component could run on Unix systems long before a
+complete GNU system existed.  Some of these programs became popular,
+and users began extending them and porting them&mdash;to the various
+incompatible versions of Unix, and sometimes to other systems as well.</p>
+<p>
+The process made these programs much more powerful, and attracted both
+funds and contributors to the GNU Project.  But it probably also
+delayed completion of a minimal working system by several years, as
+GNU developers' time was put into maintaining these ports and adding
+features to the existing components, rather than moving on to write
+one missing component after another.</p>
+
+<h3>The GNU Hurd</h3>
+<p>
+By 1990, the GNU system was almost complete; the only major missing
+component was the kernel.  We had decided to implement our kernel as a
+collection of server processes running on top of Mach.  Mach is a
+microkernel developed at Carnegie Mellon University and then at the
+University of Utah; the GNU Hurd is a collection of servers (i.e., a
+herd of GNUs) that run on top of Mach, and do the
+various jobs of the Unix kernel.  The start of development was delayed
+as we waited for Mach to be released as free software, as had been
+promised.</p>
+<p>
+One reason for choosing this design was to avoid what seemed to be the
+hardest part of the job: debugging a kernel program without a
+source-level debugger to do it with.  This part of the job had been
+done already, in Mach, and we expected to debug the Hurd servers as
+user programs, with GDB.  But it took a long time to make that possible,
+and the multithreaded servers that send messages to each other have
+turned out to be very hard to debug.  Making the Hurd work solidly has
+stretched on for many years.</p>
+
+<h3>Alix</h3>
+<p>
+The GNU kernel was not originally supposed to be called the Hurd.  Its
+original name was Alix&mdash;named after the woman who was my sweetheart at
+the time.  She, a Unix system administrator, had pointed out how her
+name would fit a common naming pattern for Unix system versions; as a
+joke, she told her friends, &ldquo;Someone should name a kernel after
+me.&rdquo; I said nothing, but decided to surprise her with a kernel
+named Alix.</p>
+<p>
+It did not stay that way.  Michael (now Thomas) Bushnell, the main
+developer of the kernel, preferred the name Hurd, and redefined Alix
+to refer to a certain part of the kernel&mdash;the part that would trap
+system calls and handle them by sending messages to Hurd servers.</p>
+<p>
+Later, Alix and I broke up, and she changed her name;
+independently, the Hurd design was changed so that the C library would
+send messages directly to servers, and this made the Alix component
+disappear from the design.</p>
+<p>
+But before these things happened, a friend of hers came across the
+name Alix in the Hurd source code, and mentioned it to her.  So
+she did have the chance to find a kernel named after her.</p>
+
+<h3>Linux and GNU/Linux</h3>
+<p>
+The GNU Hurd is not suitable for production use, and we don't know
+if it ever will be.  The capability-based design has problems that
+result directly from the flexibility of the design, and it is not
+clear whether solutions exist.</p>
+
+<p>
+Fortunately, another kernel is available.  In 1991, Linus Torvalds
+developed a Unix-compatible kernel and called it Linux.  It was
+proprietary at first, but in 1992, he made it free software; combining
+Linux with the not-quite-complete GNU system resulted in a complete
+free operating system.  (Combining them was a substantial job in
+itself, of course.)  It is due to Linux that we can actually run a
+version of the GNU system today.</p>
+<p>
+We call this system version <a href="/gnu/linux-and-gnu.html">
+GNU/Linux</a>, to express its composition as a combination of the GNU
+system with Linux as the kernel.  Please don't fall into the practice
+of calling the whole system &ldquo;Linux,&rdquo; since that means
+attributing our work to someone else.
+Please <a href="/gnu/gnu-linux-faq.html"> give us equal
+mention</a>.</p>
+
+<h3>Challenges in our future</h3>
+<p>
+We have proved our ability to develop a broad spectrum of free
+software.  This does not mean we are invincible and unstoppable.
+Several challenges make the future of free software uncertain; meeting
+them will require steadfast effort and endurance, sometimes lasting
+for years.  It will require the kind of determination that people
+display when they value their freedom and will not let anyone take it
+away.</p>
+<p>
+The following four sections discuss these challenges.</p>
+
+<h3>Secret hardware</h3>
+<p>
+Hardware manufacturers increasingly tend to keep hardware
+specifications secret.  This makes it difficult to write free drivers
+so that Linux and XFree86 can support new hardware.  We have complete
+free systems today, but we will not have them tomorrow if we cannot
+support tomorrow's computers.</p>
+<p>
+There are two ways to cope with this problem.  Programmers can do
+reverse engineering to figure out how to support the hardware.  The
+rest of us can choose the hardware that is supported by free software;
+as our numbers increase, secrecy of specifications will become a
+self-defeating policy.</p>
+<p>
+Reverse engineering is a big job; will we have programmers with
+sufficient determination to undertake it?  Yes&mdash;if we have built up a
+strong feeling that free software is a matter of principle, and
+nonfree drivers are intolerable.  And will large numbers of us spend
+extra money, or even a little extra time, so we can use free drivers?
+Yes, if the determination to have freedom is widespread.<a 
href="#ft8">[8]</a></p>
+
+
+<h3>Nonfree libraries</h3>
+<p>
+A nonfree library that runs on free operating systems acts as a trap
+for free software developers.  The library's attractive features are
+the bait; if you use the library, you fall into the trap, because your
+program cannot usefully be part of a free operating system.  (Strictly
+speaking, we could include your program, but it
+won't <em>run</em> with the library missing.)  Even worse, if
+a program that uses the proprietary library becomes popular, it can
+lure other unsuspecting programmers into the trap.</p>
+<p>
+The first instance of this problem was the Motif toolkit, back in the
+80s.  Although there were as yet no free operating systems, it was
+clear what problem Motif would cause for them later on.  The GNU
+Project responded in two ways: by asking individual free software
+projects to support the free X Toolkit widgets as well as Motif, and
+by asking for someone to write a free replacement for Motif.  The job
+took many years; LessTif, developed by the Hungry Programmers, became
+powerful enough to support most Motif applications only in 1997.</p>
+<p>
+Between 1996 and 1998, another nonfree 
+<abbr title="Graphical User Interface">GUI</abbr> toolkit
+library, called Qt, was used in a substantial collection of free
+software, the desktop
+<abbr title="K Desktop Environment">KDE</abbr>.</p>
+<p>
+Free GNU/Linux systems were unable to use KDE, because we could not
+use the library.  However, some commercial distributors of GNU/Linux
+systems who were not strict about sticking with free software added
+KDE to their systems&mdash;producing a system with more capabilities,
+but less freedom.  The KDE group was actively encouraging more
+programmers to use Qt, and millions of new &ldquo;Linux users&rdquo;
+had never been exposed to the idea that there was a problem in this.
+The situation appeared grim.</p>
+<p>
+The free software community responded to the problem in two ways:
+GNOME and Harmony.</p>
+<p>
+GNOME, the GNU Network Object Model Environment, is GNU's desktop
+project.  Started in 1997 by Miguel de Icaza, and developed with the
+support of Red Hat Software, GNOME set out to provide similar desktop
+facilities, but using free software exclusively.  It has technical
+advantages as well, such as supporting a variety of languages, not
+just C++.  But its main purpose was freedom: not to require the use of
+any nonfree software.</p>
+<p>
+Harmony is a compatible replacement library, designed to make it
+possible to run KDE software without using Qt.</p>
+<p>
+In November 1998, the developers of Qt announced a change of license
+which, when carried out, should make Qt free software.  There is no
+way to be sure, but I think that this was partly due to the
+community's firm response to the problem that Qt posed when it was
+nonfree.  (The new license is inconvenient and inequitable, so it
+remains desirable to avoid using Qt.)&nbsp;<a href="#ft9">[9]</a></p>
+<p>
+How will we respond to the next tempting nonfree library?  Will the
+whole community understand the need to stay out of the trap?  Or will
+many of us give up freedom for convenience, and produce a major
+problem?  Our future depends on our philosophy.</p>
+
+<h3>Software patents</h3>
+<p>
+The worst threat we face comes from software patents, which can put
+algorithms and features off limits to free software for up to twenty
+years.  The LZW compression algorithm patents were applied for in
+1983, and we still cannot release free software to produce proper
+compressed <abbr title="Graphics Interchange Format">GIF</abbr>s.<a 
href="#ft10">[10]</a>
+In 1998, a free program to produce
+<abbr title="MPEG-1 Audio Layer 3">MP3</abbr> compressed audio
+was removed from distribution under threat of a patent suit.<a 
href="#ft11">[11]</a>
+</p>
+<p>
+There are ways to cope with patents: we can search for evidence that a
+patent is invalid, and we can look for alternative ways to do a job.
+But each of these methods works only sometimes; when both fail, a
+patent may force all free software to lack some feature that users
+want.  After a long wait, the patents expire, but what will we do
+until then?</p>
+<p>
+Those of us who value free software for freedom's sake will stay with
+free software anyway.  We will manage to get work done without the
+patented features.  But those who value free software because they
+expect it to be technically superior are likely to call it a failure
+when a patent holds it back.  Thus, while it is useful to talk about
+the practical effectiveness of the &ldquo;bazaar&rdquo; model of
+development, and the reliability and power of some free software,
+we must not stop there.  We must talk about freedom and principle.</p>
+
+<h3>Free documentation</h3>
+<p>
+The biggest deficiency in our free operating systems is not in the
+software&mdash;it is the lack of good free manuals that we can include in
+our systems.  Documentation is an essential part of any software
+package; when an important free software package does not come with a
+good free manual, that is a major gap.  We have many such gaps today.</p>
+<p>
+Free documentation, like free software, is a matter of freedom, not
+price.  The criterion for a free manual is pretty much the same as for
+free software: it is a matter of giving all users certain freedoms.
+Redistribution (including commercial sale) must be permitted, online
+and on paper, so that the manual can accompany every copy of the
+program.</p>
+<p>
+Permission for modification is crucial too.  As a general rule, I
+don't believe that it is essential for people to have permission to
+modify all sorts of articles and books.  For example, I don't think
+you or I are obliged to give permission to modify articles like this
+one, which describe our actions and our views.</p>
+<p>
+But there is a particular reason why the freedom to modify is crucial
+for documentation for free software.  When people exercise their right
+to modify the software, and add or change its features, if they are
+conscientious they will change the manual, too&mdash;so they can
+provide accurate and usable documentation with the modified program.
+A nonfree manual, which does not allow programmers to be conscientious
+and finish the job, does not fill our community's needs.</p>
+<p>
+Some kinds of limits on how modifications are done pose no problem.
+For example, requirements to preserve the original author's copyright
+notice, the distribution terms, or the list of authors, are OK.  It is
+also no problem to require modified versions to include notice that
+they were modified, even to have entire sections that may not be
+deleted or changed, as long as these sections deal with nontechnical
+topics.  These kinds of restrictions are not a problem because they
+don't stop the conscientious programmer from adapting the manual to
+fit the modified program.  In other words, they don't block the free
+software community from making full use of the manual.</p>
+<p>
+However, it must be possible to modify all the <em>technical</em> content of
+the manual, and then distribute the result in all the usual media,
+through all the usual channels; otherwise, the restrictions do
+obstruct the community, the manual is not free, and we need another
+manual.</p>
+<p>
+Will free software developers have the awareness and determination to
+produce a full spectrum of free manuals?  Once again, our future
+depends on philosophy.</p>
+
+<h3>We must talk about freedom</h3>
+<p>
+Estimates today are that there are ten million users of GNU/Linux
+systems such as Debian GNU/Linux and Red Hat &ldquo;Linux.&rdquo;
+Free software has developed such practical advantages that users are
+flocking to it for purely practical reasons.</p>
+<p>
+The good consequences of this are evident: more interest in developing
+free software, more customers for free software businesses, and more
+ability to encourage companies to develop commercial free software
+instead of proprietary software products.</p>
+<p>
+But interest in the software is growing faster than awareness of the
+philosophy it is based on, and this leads to trouble.  Our ability to
+meet the challenges and threats described above depends on the will to
+stand firm for freedom.  To make sure our community has this will, we
+need to spread the idea to the new users as they come into the
+community.</p>
+<p>
+But we are failing to do so: the efforts to attract new users into our
+community are far outstripping the efforts to teach them the civics of
+our community.  We need to do both, and we need to keep the two
+efforts in balance.</p>
+
+<h3>&ldquo;Open Source&rdquo;</h3>
+<p>
+Teaching new users about freedom became more difficult in 1998, when a
+part of the community decided to stop using the term &ldquo;free
+software&rdquo; and say &ldquo;open source software&rdquo;
+instead.</p>
+<p>
+Some who favored this term aimed to avoid the confusion of
+&ldquo;free&rdquo; with &ldquo;gratis&rdquo;&mdash;a valid goal.  Others,
+however, aimed to set aside the spirit of principle that had motivated
+the free software movement and the GNU Project, and to appeal instead
+to executives and business users, many of whom hold an ideology that
+places profit above freedom, above community, above principle.  Thus,
+the rhetoric of &ldquo;open source&rdquo; focuses on the potential to
+make high-quality, powerful software, but shuns the ideas of freedom,
+community, and principle.</p>
+<p>
+The &ldquo;Linux&rdquo; magazines are a clear example of this&mdash;they
+are filled with advertisements for proprietary software that works
+with GNU/Linux.  When the next Motif or Qt appears, will these
+magazines warn programmers to stay away from it, or will they run ads
+for it?</p>
+<p>
+The support of business can contribute to the community in many ways;
+all else being equal, it is useful.  But winning their support by
+speaking even less about freedom and principle can be disastrous; it
+makes the previous imbalance between outreach and civics education
+even worse.</p>
+<p>
+&ldquo;Free software&rdquo; and &ldquo;open source&rdquo; describe the
+same category of software, more or less, but say different things
+about the software, and about values.  The GNU Project continues to
+use the term &ldquo;free software,&rdquo; to express the idea that
+freedom, not just technology, is important.</p>
+
+<h3>Try!</h3>
+<p>
+Yoda's aphorism (&ldquo;There is no &lsquo;try&rsquo;&rdquo;) sounds
+neat, but it doesn't work for me.  I have done most of my work while
+anxious about whether I could do the job, and unsure that it would be
+enough to achieve the goal if I did.  But I tried anyway, because
+there was no one but me between the enemy and my city.  Surprising
+myself, I have sometimes succeeded.</p>
+<p>
+Sometimes I failed; some of my cities have fallen.  Then I found
+another threatened city, and got ready for another battle.  Over time,
+I've learned to look for threats and put myself between them and my
+city, calling on other hackers to come and join me.</p>
+<p>
+Nowadays, often I'm not the only one.  It is a relief and a joy when I
+see a regiment of hackers digging in to hold the line, and I realize,
+this city may survive&mdash;for now.  But the dangers are greater each
+year, and now Microsoft has explicitly targeted our community.  We
+can't take the future of freedom for granted.  Don't take it for
+granted!  If you want to keep your freedom, you must be prepared to
+defend it.</p>
+<div class="column-limit"></div>
+
+<h3 class="footnote">Footnotes</h3>
+<ol>
+<li id="ft1">The use of &ldquo;hacker&rdquo; to mean &ldquo;security
+breaker&rdquo; is a confusion on the part of the mass media.  We
+hackers refuse to recognize that meaning, and continue using the word
+to mean someone who loves to program, someone who enjoys playful
+cleverness, or the combination of the two.  See my
+article, &ldquo;<a href="https://stallman.org/articles/on-hacking.html";>On
+Hacking</a>.&rdquo;</li>
+
+<li id="ft2">As an Atheist, I don't follow any religious leaders, but I
+sometimes find I admire something one of them has said.</li>
+
+<li id="ft3">In 1984 or 1985, Don Hopkins (a very imaginative fellow) mailed me
+a letter.  <a href="/graphics/copyleft-sticker.html">On the envelope</a> he
+had written several amusing sayings,
+including this one: &ldquo;Copyleft&mdash;all rights reversed.&rdquo; I
+used the word &ldquo;copyleft&rdquo; to name the distribution concept
+I was developing at the time.</li>
+
+<li id="ft4">We now use the <a href="/licenses/fdl.html">GNU Free
+Documentation License</a> for documentation.</li>
+
+<li id="ft5">&ldquo;Bourne Again Shell&rdquo; is a play on the name
+&ldquo;Bourne Shell,&rdquo; which was the usual shell on Unix.</li>
+
+<li id="ft6">That was written in 1998.  In 2009 we no longer maintain a long
+task list.  The community develops free software so fast that we can't
+even keep track of it all.  Instead, we have a list of High Priority
+Projects, a much shorter list of projects we really want to encourage
+people to write.</li>
+
+<li id="ft7">This license is now called the GNU Lesser General Public License,
+to avoid giving the idea that all libraries ought to use it. 
+See <a href="/philosophy/why-not-lgpl.html">Why you shouldn't use the
+Lesser GPL for your next library</a> for more information.</li>
+
+<li id="ft8">2008 note: this issue extends to the BIOS as well.  There is a 
free
+BIOS, <a href="https://libreboot.org/";>LibreBoot</a> (a distribution of
+coreboot); the problem is getting specs for machines so that
+LibreBoot can support them without nonfree &ldquo;blobs.&rdquo;</li>
+
+<li id="ft9">In September 2000, Qt was rereleased under the GNU GPL,
+which essentially solved this problem.</li>
+
+<li id="ft10">As of 2009, the GIF patents have expired.</li>
+
+<li id="ft11">As of 2017, the MP3 patents have expired.  Look how
+long we had to wait.</li>
+</ol>
+
+<div class="infobox extra" role="complementary">
+<hr />
+<p>
+Originally published in the book <cite>Open Sources</cite>.  Richard
+Stallman was <a href="/philosophy/open-source-misses-the-point.html">
+never a supporter of &ldquo;open source&rdquo;</a>, but contributed
+this article so that the ideas of the free software movement would not
+be entirely absent from that book.
+</p>
+</div>
+</div>
+
+</div><!-- for id="content", starts in the include above -->
+<!--#include virtual="/server/footer.html" -->
+<div id="footer" role="contentinfo">
+<div class="unprintable">
+
+<p>Please send general FSF &amp; GNU inquiries to
+<a href="mailto:gnu@gnu.org";>&lt;gnu@gnu.org&gt;</a>.
+There are also <a href="/contact/">other ways to contact</a>
+the FSF.  Broken links and other corrections or suggestions can be sent
+to <a href="mailto:webmasters@gnu.org";>&lt;webmasters@gnu.org&gt;</a>.</p>
+
+<p><!-- TRANSLATORS: Ignore the original text in this paragraph,
+        replace it with the translation of these two:
+
+        We work hard and do our best to provide accurate, good quality
+        translations.  However, we are not exempt from imperfection.
+        Please send your comments and general suggestions in this regard
+        to <a href="mailto:web-translators@gnu.org";>
+        &lt;web-translators@gnu.org&gt;</a>.</p>
+
+        <p>For information on coordinating and contributing translations of
+        our web pages, see <a
+        href="/server/standards/README.translations.html">Translations
+        README</a>. -->
+Please see the <a
+href="/server/standards/README.translations.html">Translations
+README</a> for information on coordinating and contributing translations
+of this article.</p>
+</div>
+
+<!-- Regarding copyright, in general, standalone pages (as opposed to
+     files generated as part of manuals) on the GNU web server should
+     be under CC BY-ND 4.0.  Please do NOT change or remove this
+     without talking with the webmasters or licensing team first.
+     Please make sure the copyright date is consistent with the
+     document.  For web pages, it is ok to list just the latest year the
+     document was modified, or published.
+     
+     If you wish to list earlier years, that is ok too.
+     Either "2001, 2002, 2003" or "2001-2003" are ok for specifying
+     years, as long as each year in the range is in fact a copyrightable
+     year, i.e., a year in which the document was published (including
+     being publicly visible on the web or in a revision control system).
+     
+     There is more detail about copyright years in the GNU Maintainers
+     Information document, www.gnu.org/prep/maintain. -->
+
+<p>Copyright &copy; 1998, 2005, 2008, 2010, 2012, 2015, 2017, 2018
+Richard Stallman</p>
+
+<p>This page is licensed under a <a rel="license"
+href="http://creativecommons.org/licenses/by-nd/4.0/";>Creative
+Commons Attribution-NoDerivatives 4.0 International License</a>.</p>
+
+<!--#include virtual="/server/bottom-notes.html" -->
+
+<p class="unprintable">Updated:
+<!-- timestamp start -->
+$Date: 2021/10/21 14:45:00 $
+<!-- timestamp end -->
+</p>
+</div>
+</div><!-- for class="inner", starts in the banner include -->
+</body>
+</html>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]