Mercurial > emacs
annotate etc/WHY-FREE @ 105813:df4934f25eef
* textmodes/two-column.el (2C-split):
* textmodes/texnfo-upd.el (texinfo-multi-file-included-list):
* textmodes/tex-mode.el (tex-set-buffer-directory):
* textmodes/spell.el (spell-region, spell-string):
* textmodes/reftex.el (reftex-erase-buffer):
(reftex-get-file-buffer-force, reftex-kill-temporary-buffers):
* textmodes/reftex-toc.el (reftex-toc-promote-action):
* textmodes/reftex-sel.el (reftex-get-offset, reftex-insert-docstruct)
(reftex-select-item):
* textmodes/reftex-ref.el (reftex-label-info-update)
(reftex-offer-label-menu):
* textmodes/reftex-index.el (reftex-index-change-entry)
(reftex-index-phrases-info):
* textmodes/reftex-global.el (reftex-create-tags-file)
(reftex-save-all-document-buffers, reftex-ensure-write-access):
* textmodes/reftex-dcr.el (reftex-echo-ref, reftex-echo-cite)
(reftex-view-crossref-from-bibtex):
* textmodes/reftex-cite.el (reftex-bibtex-selection-callback)
(reftex-extract-bib-entries-from-thebibliography)
(reftex-all-used-citation-keys, reftex-create-bibtex-file):
* textmodes/refbib.el (r2b-capitalize-title):
(r2b-convert-buffer, r2b-help):
* textmodes/page-ext.el (pages-directory)
(pages-directory-goto-with-mouse):
* textmodes/bibtex.el (bibtex-validate-globally):
* textmodes/bib-mode.el (bib-capitalize-title):
* textmodes/artist.el (artist-clear-buffer, artist-system):
* progmodes/xscheme.el (global-set-scheme-interaction-buffer):
(local-set-scheme-interaction-buffer, xscheme-process-filter)
(verify-xscheme-buffer, xscheme-enter-interaction-mode)
(xscheme-enter-debugger-mode, xscheme-debugger-mode-p)
(xscheme-send-control-g-interrupt, xscheme-start-process)
(xscheme-process-sentinel, xscheme-cd):
* progmodes/verilog-mode.el (verilog-read-always-signals)
(verilog-set-define, verilog-getopt-file)
(verilog-module-inside-filename-p):
* progmodes/sh-script.el:
* progmodes/python.el (python-pdbtrack-get-source-buffer)
(python-pdbtrack-grub-for-buffer, python-execute-file):
* progmodes/octave-inf.el (inferior-octave):
* progmodes/idlwave.el (idlwave-scan-user-lib-files)
(idlwave-shell-compile-helper-routines, idlwave-set-local)
(idlwave-display-completion-list-xemacs, idlwave-list-abbrevs)
(idlwave-display-completion-list-emacs, idlwave-list-load-path-shadows)
(idlwave-completion-fontify-classes, idlwave-display-calling-sequence):
* progmodes/idlw-shell.el (idlwave-shell-examine-display-clear)
(idlwave-shell-filter, idlwave-shell-examine-highlight)
(idlwave-shell-sentinel, idlwave-shell-filter-directory)
(idlwave-shell-display-line, idlwave-shell-set-bp-in-module)
(idlwave-shell-examine-display, idlwave-shell-run-region)
(idlwave-shell-filter-bp, idlwave-shell-save-and-action)
(idlwave-shell-sources-filter, idlwave-shell-goto-next-error):
* progmodes/idlw-help.el (idlwave-help-get-special-help)
(idlwave-help-get-help-buffer):
* progmodes/gud.el (gud-basic-call, gud-find-class)
(gud-tooltip-activate-mouse-motions-if-enabled):
* progmodes/gdb-mi.el (gdb-mouse-toggle-breakpoint-fringe):
* progmodes/ebrowse.el (ebrowse-member-table, ebrowse-save-tree-as)
(ebrowse-view-exit-fn, ebrowse-tags-list-members-in-file)
(ebrowse-tags-next-file):
* progmodes/ebnf2ps.el (ebnf-generate-eps, ebnf-generate-eps)
(ebnf-eps-production-list, ebnf-begin-file, ebnf-log)
(ebnf-eps-finish-and-write):
* progmodes/cpp.el (cpp-edit-save):
* progmodes/cperl-mode.el (cperl-pod-to-manpage):
* progmodes/cc-defs.el (c-emacs-features):
* progmodes/antlr-mode.el (antlr-invalidate-context-cache)
(antlr-directory-dependencies):
* progmodes/ada-xref.el (ada-gnat-parse-gpr, ada-get-ali-file-name)
(ada-run-application, ada-find-in-src-path, ada-goto-parent)
(ada-find-any-references, ada-make-filename-from-adaname)
(ada-make-body-gnatstub):
* obsolete/rnews.el (news-list-news-groups):
* obsolete/resume.el (resume-suspend-hook,resume-write-buffer-to-file):
* obsolete/iso-acc.el (iso-acc-minibuf-setup):
* net/rcirc.el (rcirc-debug):
* net/newst-treeview.el (newsticker--treeview-list-add-item)
(newsticker--treeview-list-clear, newsticker-treeview-browse-url)
(newsticker--treeview-list-update-faces, newsticker-treeview-save)
(newsticker--treeview-item-show-text, newsticker--treeview-item-show)
(newsticker--treeview-tree-update-tag,newsticker--treeview-buffer-init)
(newsticker-treeview-show-item, newsticker--treeview-unfold-node)
(newsticker--treeview-list-clear-highlight)
(newsticker--treeview-list-update-highlight)
(newsticker--treeview-list-highlight-start)
(newsticker--treeview-tree-update-highlight)
(newsticker--treeview-get-selected-item)
(newsticker-treeview-mark-list-items-old)
(newsticker--treeview-set-current-node):
* net/newst-plainview.el (newsticker--buffer-set-uptodate):
* net/newst-backend.el (newsticker--get-news-by-funcall)
(newsticker--get-news-by-wget, newsticker--image-get)
(newsticker--image-sentinel):
* net/mairix.el (mairix-rmail-fetch-field, mairix-gnus-fetch-field):
* net/eudcb-ph.el (eudc-ph-do-request, eudc-ph-open-session):
(eudc-ph-close-session):
* net/eudc.el (eudc-save-options):
* language/thai-word.el (thai-update-word-table):
* language/japan-util.el (japanese-string-conversion):
* international/titdic-cnv.el (tsang-quick-converter)
(ziranma-converter, ctlau-converter):
* international/mule-cmds.el (describe-language-environment):
* international/ja-dic-cnv.el (skkdic-convert-okuri-ari)
(skkdic-convert-postfix, skkdic-convert-prefix):
(skkdic-convert-okuri-nasi, skkdic-convert):
* emacs-lisp/re-builder.el (reb-update-overlays):
* emacs-lisp/pp.el (pp-to-string, pp-display-expression):
* emacs-lisp/gulp.el (gulp-send-requests):
* emacs-lisp/find-gc.el (trace-call-tree):
* emacs-lisp/eieio-opt.el (eieio-browse, eieio-describe-class)
(eieio-describe-generic):
* emacs-lisp/eieio-base.el (eieio-persistent-read):
* emacs-lisp/edebug.el (edebug-outside-excursion):
* emacs-lisp/debug.el (debugger-make-xrefs):
* emacs-lisp/cust-print.el (custom-prin1-to-string):
* emacs-lisp/chart.el (chart-new-buffer):
* emacs-lisp/authors.el (authors-scan-el, authors-scan-change-log):
Use with-current-buffer.
* textmodes/artist.el (artist-system): Don't call
copy-sequence on a fresh string.
* progmodes/idlw-shell.el (easymenu setup): Use dolist.
author | Stefan Monnier <monnier@iro.umontreal.ca> |
---|---|
date | Sat, 31 Oct 2009 02:38:34 +0000 |
parents | 23a1cea22d13 |
children |
rev | line source |
---|---|
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
25853
diff
changeset
|
1 Why Software Should Not Have Owners |
25853 | 2 |
3 by Richard Stallman | |
4 | |
5 Digital information technology contributes to the world by making it | |
6 easier to copy and modify information. Computers promise to make this | |
7 easier for all of us. | |
8 | |
9 Not everyone wants it to be easier. The system of copyright gives | |
10 software programs "owners", most of whom aim to withhold software's | |
11 potential benefit from the rest of the public. They would like to be | |
12 the only ones who can copy and modify the software that we use. | |
13 | |
14 The copyright system grew up with printing--a technology for mass | |
15 production copying. Copyright fit in well with this technology | |
16 because it restricted only the mass producers of copies. It did not | |
17 take freedom away from readers of books. An ordinary reader, who did | |
18 not own a printing press, could copy books only with pen and ink, and | |
19 few readers were sued for that. | |
20 | |
21 Digital technology is more flexible than the printing press: when | |
22 information has digital form, you can easily copy it to share it with | |
23 others. This very flexibility makes a bad fit with a system like | |
24 copyright. That's the reason for the increasingly nasty and draconian | |
25 measures now used to enforce software copyright. Consider these four | |
26 practices of the Software Publishers Association (SPA): | |
27 | |
28 * Massive propaganda saying it is wrong to disobey the owners | |
29 to help your friend. | |
30 | |
31 * Solicitation for stool pigeons to inform on their coworkers and | |
32 colleagues. | |
33 | |
34 * Raids (with police help) on offices and schools, in which people are | |
35 told they must prove they are innocent of illegal copying. | |
36 | |
37 * Prosecution (by the US government, at the SPA's request) of people | |
38 such as MIT's David LaMacchia, not for copying software (he is not | |
39 accused of copying any), but merely for leaving copying facilities | |
40 unguarded and failing to censor their use. | |
41 | |
42 All four practices resemble those used in the former Soviet Union, | |
43 where every copying machine had a guard to prevent forbidden copying, | |
44 and where individuals had to copy information secretly and pass it | |
45 from hand to hand as "samizdat". There is of course a difference: the | |
46 motive for information control in the Soviet Union was political; in | |
47 the US the motive is profit. But it is the actions that affect us, | |
48 not the motive. Any attempt to block the sharing of information, no | |
49 matter why, leads to the same methods and the same harshness. | |
50 | |
51 Owners make several kinds of arguments for giving them the power | |
52 to control how we use information: | |
53 | |
54 * Name calling. | |
55 | |
56 Owners use smear words such as "piracy" and "theft", as well as expert | |
57 terminology such as "intellectual property" and "damage", to suggest a | |
58 certain line of thinking to the public--a simplistic analogy between | |
59 programs and physical objects. | |
60 | |
61 Our ideas and intuitions about property for material objects are about | |
62 whether it is right to *take an object away* from someone else. They | |
63 don't directly apply to *making a copy* of something. But the owners | |
64 ask us to apply them anyway. | |
65 | |
66 * Exaggeration. | |
67 | |
68 Owners say that they suffer "harm" or "economic loss" when users copy | |
69 programs themselves. But the copying has no direct effect on the | |
70 owner, and it harms no one. The owner can lose only if the person who | |
71 made the copy would otherwise have paid for one from the owner. | |
72 | |
73 A little thought shows that most such people would not have bought | |
74 copies. Yet the owners compute their "losses" as if each and every | |
75 one would have bought a copy. That is exaggeration--to put it kindly. | |
76 | |
77 * The law. | |
78 | |
79 Owners often describe the current state of the law, and the harsh | |
80 penalties they can threaten us with. Implicit in this approach is the | |
81 suggestion that today's law reflects an unquestionable view of | |
82 morality--yet at the same time, we are urged to regard these penalties | |
83 as facts of nature that can't be blamed on anyone. | |
84 | |
85 This line of persuasion isn't designed to stand up to critical | |
86 thinking; it's intended to reinforce a habitual mental pathway. | |
87 | |
88 It's elemental that laws don't decide right and wrong. Every American | |
89 should know that, forty years ago, it was against the law in many | |
90 states for a black person to sit in the front of a bus; but only | |
91 racists would say sitting there was wrong. | |
92 | |
93 * Natural rights. | |
94 | |
95 Authors often claim a special connection with programs they have | |
96 written, and go on to assert that, as a result, their desires and | |
97 interests concerning the program simply outweigh those of anyone | |
98 else--or even those of the whole rest of the world. (Typically | |
99 companies, not authors, hold the copyrights on software, but we are | |
100 expected to ignore this discrepancy.) | |
101 | |
102 To those who propose this as an ethical axiom--the author is more | |
103 important than you--I can only say that I, a notable software author | |
104 myself, call it bunk. | |
105 | |
106 But people in general are only likely to feel any sympathy with the | |
107 natural rights claims for two reasons. | |
108 | |
109 One reason is an overstretched analogy with material objects. When I | |
110 cook spaghetti, I do object if someone else takes it and stops me from | |
111 eating it. In this case, that person and I have the same material | |
112 interests at stake, and it's a zero-sum game. The smallest | |
113 distinction between us is enough to tip the ethical balance. | |
114 | |
115 But whether you run or change a program I wrote affects you directly | |
116 and me only indirectly. Whether you give a copy to your friend | |
117 affects you and your friend much more than it affects me. I shouldn't | |
118 have the power to tell you not to do these things. No one should. | |
119 | |
120 The second reason is that people have been told that natural rights | |
121 for authors is the accepted and unquestioned tradition of our society. | |
122 | |
123 As a matter of history, the opposite is true. The idea of natural | |
124 rights of authors was proposed and decisively rejected when the US | |
125 Constitution was drawn up. That's why the Constitution only *permits* | |
126 a system of copyright and does not *require* one; that's why it says | |
127 that copyright must be temporary. It also states that the purpose of | |
128 copyright is to promote progress--not to reward authors. Copyright | |
129 does reward authors somewhat, and publishers more, but that is | |
130 intended as a means of modifying their behavior. | |
131 | |
132 The real established tradition of our society is that copyright cuts | |
133 into the natural rights of the public--and that this can only be | |
134 justified for the public's sake. | |
135 | |
136 * Economics. | |
137 | |
138 The final argument made for having owners of software is that this | |
139 leads to production of more software. | |
140 | |
141 Unlike the others, this argument at least takes a legitimate approach | |
142 to the subject. It is based on a valid goal--satisfying the users of | |
143 software. And it is empirically clear that people will produce more of | |
144 something if they are well paid for doing so. | |
145 | |
146 But the economic argument has a flaw: it is based on the assumption | |
147 that the difference is only a matter of how much money we have to pay. | |
148 It assumes that "production of software" is what we want, whether the | |
149 software has owners or not. | |
150 | |
151 People readily accept this assumption because it accords with our | |
152 experiences with material objects. Consider a sandwich, for instance. | |
153 You might well be able to get an equivalent sandwich either free or | |
154 for a price. If so, the amount you pay is the only difference. | |
155 Whether or not you have to buy it, the sandwich has the same taste, | |
156 the same nutritional value, and in either case you can only eat it | |
157 once. Whether you get the sandwich from an owner or not cannot | |
158 directly affect anything but the amount of money you have afterwards. | |
159 | |
160 This is true for any kind of material object--whether or not it has an | |
161 owner does not directly affect what it *is*, or what you can do with | |
162 it if you acquire it. | |
163 | |
164 But if a program has an owner, this very much affects what it is, and | |
165 what you can do with a copy if you buy one. The difference is not | |
166 just a matter of money. The system of owners of software encourages | |
167 software owners to produce something--but not what society really | |
168 needs. And it causes intangible ethical pollution that affects us | |
169 all. | |
170 | |
171 What does society need? It needs information that is truly available | |
172 to its citizens--for example, programs that people can read, fix, | |
173 adapt, and improve, not just operate. But what software owners | |
174 typically deliver is a black box that we can't study or change. | |
175 | |
176 Society also needs freedom. When a program has an owner, the users | |
177 lose freedom to control part of their own lives. | |
178 | |
179 And above all society needs to encourage the spirit of voluntary | |
180 cooperation in its citizens. When software owners tell us that | |
181 helping our neighbors in a natural way is "piracy", they pollute our | |
182 society's civic spirit. | |
183 | |
184 This is why we say that free software is a matter of freedom, not | |
185 price. | |
186 | |
187 The economic argument for owners is erroneous, but the economic issue | |
188 is real. Some people write useful software for the pleasure of | |
189 writing it or for admiration and love; but if we want more software | |
190 than those people write, we need to raise funds. | |
191 | |
192 For ten years now, free software developers have tried various methods | |
193 of finding funds, with some success. There's no need to make anyone | |
194 rich; the median US family income, around $35k, proves to be enough | |
195 incentive for many jobs that are less satisfying than programming. | |
196 | |
197 For years, until a fellowship made it unnecessary, I made a living | |
198 from custom enhancements of the free software I had written. Each | |
199 enhancement was added to the standard released version and thus | |
200 eventually became available to the general public. Clients paid me so | |
201 that I would work on the enhancements they wanted, rather than on the | |
202 features I would otherwise have considered highest priority. | |
203 | |
204 The Free Software Foundation, a tax-exempt charity for free software | |
205 development, raises funds by selling CD-ROMs, tapes and manuals (all | |
206 of which users are free to copy and change), as well as from | |
207 donations. It now has a staff of five programmers, plus three | |
208 employees who handle mail orders. | |
209 | |
210 Some free software developers make money by selling support services. | |
211 Cygnus Support, with around 50 employees, estimates that about 15 per | |
212 cent of its staff activity is free software development--a respectable | |
213 percentage for a software company. | |
214 | |
215 Companies including Intel, Motorola, Texas Instruments and Analog | |
216 Devices have combined to fund the continued development of the free | |
217 GNU compiler for the language C. Meanwhile, the GNU compiler for the | |
218 Ada language is being funded by the US Air Force, which believes this | |
219 is the most cost-effective way to get a high quality compiler. | |
220 | |
221 All these examples are small; the free software movement is still | |
222 small, and still young. But the example of listener-supported radio | |
223 in this country shows it's possible to support a large activity | |
224 without forcing each user to pay. | |
225 | |
226 As a computer user today, you may find yourself using a proprietary | |
227 program. If your friend asks to make a copy, it would be wrong to | |
228 refuse. Cooperation is more important than copyright. But | |
229 underground, closet cooperation does not make for a good society. A | |
230 person should aspire to live an upright life openly with pride, and | |
231 this means saying "No" to proprietary software. | |
232 | |
233 You deserve to be able to cooperate openly and freely with other | |
234 people who use software. You deserve to be able to learn how the | |
235 software works, and to teach your students with it. You deserve to be | |
236 able to hire your favorite programmer to fix it when it breaks. | |
237 | |
238 You deserve free software. | |
239 | |
240 | |
241 Copyright 1994 Richard Stallman | |
242 Verbatim copying and redistribution is permitted | |
243 without royalty as long as this notice is preserved; | |
244 alteration is not permitted. |