summaryrefslogtreecommitdiff
path: root/talermerchantdemos/blog/articles/scrap1_22.html
diff options
context:
space:
mode:
Diffstat (limited to 'talermerchantdemos/blog/articles/scrap1_22.html')
-rw-r--r--talermerchantdemos/blog/articles/scrap1_22.html253
1 files changed, 253 insertions, 0 deletions
diff --git a/talermerchantdemos/blog/articles/scrap1_22.html b/talermerchantdemos/blog/articles/scrap1_22.html
new file mode 100644
index 0000000..bd14787
--- /dev/null
+++ b/talermerchantdemos/blog/articles/scrap1_22.html
@@ -0,0 +1,253 @@
+<!-- This is the second edition of Free Software, Free Society: Selected Essays of Richard M. Stallman.
+
+Free Software Foundation
+
+51 Franklin Street, Fifth Floor
+
+Boston, MA 02110-1335
+Copyright C 2002, 2010 Free Software Foundation, Inc.
+Verbatim copying and distribution of this entire book are permitted
+worldwide, without royalty, in any medium, provided this notice is
+preserved. Permission is granted to copy and distribute translations
+of this book from the original English into another language provided
+the translation has been approved by the Free Software Foundation and
+the copyright notice and this permission notice are preserved on all
+copies.
+
+ISBN 978-0-9831592-0-9
+Cover design by Rob Myers.
+
+Cover photograph by Peter Hinely.
+ -->
+
+
+ <a name="Copyleft_003a-Pragmatic-Idealism">
+ </a>
+ <h1 class="chapter">
+ 22. Copyleft: Pragmatic Idealism
+ </h1>
+ <a name="index-copyleft-_0028see-also-copyright_0029-5">
+ </a>
+ <p>
+ Every decision a person makes stems from the person’s values and
+goals. People can have many different goals and values; fame, profit,
+love, survival, fun, and freedom, are just some of the goals that a
+good person might have. When the goal is a matter of principle, we
+call that idealism.
+ </p>
+ <p>
+ My work on free software is motivated by an idealistic goal: spreading
+freedom and cooperation. I want
+to encourage free software to
+spread, replacing proprietary software that forbids cooperation,
+and thus make our society better.
+ </p>
+ <p>
+ That’s the basic reason why the GNU General Public License is written
+the way it is—as a copyleft.
+All code added to a GPL-covered program
+must be free software, even if it is put in a separate file. I make
+my code available for use in free software, and not for use in
+proprietary software, in order to encourage other people who write
+software to make it free as well. I figure that since proprietary
+software developers use copyright to stop us from sharing, we
+cooperators can use copyright to give other cooperators an advantage
+of their own: they can use our code.
+ </p>
+ <p>
+ Not everyone who uses the GNU GPL has this goal. Many years ago, a
+friend of mine was asked to rerelease a copylefted program under
+noncopyleft terms, and he responded more or less like this: “Sometimes I work on free software, and sometimes I work on proprietary software—but when I work on proprietary software, I expect to get
+ <em>
+ paid.
+ </em>
+ ”
+ </p>
+ <p>
+ He was willing to share his work with a community that shares
+software, but saw no reason to give a handout to a business making
+products that would be off-limits to our community. His goal was
+different from mine, but he decided that the GNU GPL was useful for
+his goal too.
+ </p>
+ <p>
+ If you want to accomplish something in the world, idealism is not
+enough—you need to choose a method that works to achieve the
+goal. In other words, you need to be “pragmatic.” Is the
+GPL pragmatic? Let’s look at its results.
+ </p>
+ <a name="index-GNU_002c-GCC-3">
+ </a>
+ <a name="index-GNU_002c-GNU-C_002b_002b-compiler-1">
+ </a>
+ <p>
+ Consider GNU C++. Why do we have a free C++ compiler? Only because
+the GNU GPL said it had to be free. GNU C++ was developed by an
+industry consortium,
+ <a name="index-MCC">
+ </a>
+ MCC, starting from the
+ <a name="index-GNU_002c-GNU-C-compiler-_0028see-also-GNU_002c-GCC_0029-4">
+ </a>
+ GNU C compiler. MCC
+normally makes its work as proprietary as can be. But they made the
+C++ front end free software, because the GNU GPL said that was the
+only way they could release it. The C++ front end included many new
+files, but since they were meant to be linked with GCC, the GPL
+did apply to them. The benefit to our community is evident.
+ </p>
+ <a name="index-GNU_002c-GNU-Objective-C">
+ </a>
+ <p>
+ Consider GNU Objective C.
+ <a name="index-NeXT">
+ </a>
+ NeXT initially wanted to make this front
+end proprietary; they proposed to release it as ‘
+ <tt>
+ .o
+ </tt>
+ ’ files,
+and let users link them with the rest of GCC, thinking this might be a
+way around the GPL’s requirements. But our lawyer said that this
+would not evade the requirements, that it was not allowed. And so
+they made the Objective C front end free software.
+ </p>
+ <p>
+ Those examples happened years ago, but the GNU GPL continues
+to bring us more free software.
+ </p>
+ <a name="index-LGPL_002c-and-GNU-libraries-1">
+ </a>
+ <a name="index-GNU_002c-GNU-libraries-1">
+ </a>
+ <a name="index-libraries-_0028comp_002e_0029_002c-GNU-2">
+ </a>
+ <p>
+ Many GNU libraries are covered by the GNU Lesser General Public
+License, but not all. One GNU library which is covered by the
+ordinary GNU GPL is
+ <a name="index-GNU_002c-GNU-Readline-1">
+ </a>
+ <a name="index-Readline-_0028see-also-both-libraries-_0028comp_002e_0029-and-GNU_0029">
+ </a>
+ Readline, which implements command-line editing.
+I once found out about a nonfree program which was designed
+to use Readline, and told the developer this was not allowed. He
+could have taken command-line editing out of the program, but what he
+actually did was rerelease it under the GPL. Now it is free software.
+ </p>
+ <p>
+ The programmers who write improvements to GCC (or
+ <a name="index-Emacs_002c-GNU-6">
+ </a>
+ <a name="index-GNU_002c-GNU-Emacs-6">
+ </a>
+ Emacs, or
+ <a name="index-BASH-_0028Bourne-Again-Shell_0029_002c-GNU-3">
+ </a>
+ <a name="index-GNU_002c-GNU-BASH-_0028Bourne-Again-Shell_0029-3">
+ </a>
+ Bash, or
+Linux, or any GPL-covered program) are often employed by companies or
+universities. When the programmer wants to return his improvements to
+the community, and see his code in the next release, the boss may say,
+“Hold on there—your code belongs to us! We don’t want to
+share it; we have decided to turn your improved version into a
+proprietary software product.”
+ <a name="index-GNU_002c-GCC-4">
+ </a>
+ </p>
+ <p>
+ Here the GNU GPL comes to the rescue. The programmer shows the boss
+that this proprietary software product would be copyright
+infringement, and the boss realizes that he has only two choices:
+release the new code as free software, or not at all. Almost always
+he lets the programmer do as he intended all along, and the code goes
+into the next release.
+ </p>
+ <a name="index-GPL-4">
+ </a>
+ <p>
+ The GNU GPL is not Mr. Nice Guy. It says no to some of
+the things that people sometimes want to do. There are users who say
+that this is a bad thing—that the GPL “excludes”
+some proprietary software developers who “need to be brought
+into the free software community.”
+ </p>
+ <p>
+ But we are not excluding them from our community; they are choosing
+not to enter. Their decision to make software proprietary is a
+decision to stay out of our community. Being in our community means
+joining in cooperation with us; we cannot “bring them into our
+community” if they don’t want to join.
+ </p>
+ <p>
+ What we
+ <em>
+ can
+ </em>
+ do is offer them an inducement to join. The GNU
+GPL is designed to make an inducement from our existing software:
+“If you will make your software free, you can use this
+code.” Of course, it won’t win ’em all, but it wins some of the
+time.
+ </p>
+ <p>
+ Proprietary software development does not contribute to our community,
+but its developers often want handouts from us. Free software users
+can offer free software developers strokes for the
+ego—recognition and gratitude—but it can be very tempting
+when a business tells you, “Just let us put your package in our
+proprietary program, and your program will be used by many thousands
+of people!” The temptation can be powerful, but in the long run
+we are all better off if we resist it.
+ </p>
+ <p>
+ The temptation and pressure are harder to recognize when they come
+indirectly, through free software organizations that have adopted a
+policy of catering to proprietary software. The
+ <a name="index-X-Consortium-_0028see-also-Open-Group_002c-its-successor_0029-2">
+ </a>
+ X Consortium (and its
+successor, the
+ <a name="index-Open-Group-_0028see-also-X-Consortium_002c-its-precursor_0029">
+ </a>
+ Open Group) offers an example: funded by companies that
+made proprietary software, they strived for a decade to persuade
+programmers not to use copyleft. When the Open Group tried to make
+ <a name="index-X11R6_002e4">
+ </a>
+ X11R6.4 nonfree software, those
+of us who had resisted that pressure were glad that we did.
+ </p>
+ <p>
+ In September 1998, several months after X11R6.4 was released with
+nonfree distribution terms, the Open Group reversed its decision and
+rereleased it under the same noncopyleft free software license that
+was used for X11R6.3. Thank you, Open Group—but this subsequent
+reversal does not invalidate the conclusions we draw from the fact
+that adding the restrictions was
+ <em>
+ possible.
+ </em>
+ <a name="index-Open-Group-_0028see-also-X-Consortium_002c-its-precursor_0029-1">
+ </a>
+ </p>
+ <a name="index-call-to-action_002c-use-copyleft">
+ </a>
+ <p>
+ Pragmatically speaking, thinking about greater long-term goals will
+strengthen your will to resist this pressure. If you focus your mind
+on the freedom and community that you can build by staying firm, you
+will find the strength to do it. “Stand for something, or you
+will fall for anything.”
+ </p>
+ <p>
+ And if cynics ridicule freedom, ridicule community…if
+“hard-nosed realists” say that profit is the only
+ideal…just ignore them, and use copyleft all the same.
+ <a name="index-copyleft-_0028see-also-copyright_0029-6">
+ </a>
+ </p>
+