summaryrefslogtreecommitdiff
path: root/docs/programs-must-not-limit-freedom-to-run.md
diff options
context:
space:
mode:
authorTong Hui <tonghuix@gmail.com>2016-03-25 16:52:03 +0800
committerTong Hui <tonghuix@gmail.com>2016-03-25 16:52:03 +0800
commit5d6f7b414de4b04ddc19629ac6d1f5e5f3cb42ac (patch)
treeb7d47d7d26bf9cd76ceeae138c71d4a99c7ac662 /docs/programs-must-not-limit-freedom-to-run.md
downloadfsfs-zh-5d6f7b414de4b04ddc19629ac6d1f5e5f3cb42ac.tar.xz
first
Diffstat (limited to 'docs/programs-must-not-limit-freedom-to-run.md')
-rw-r--r--docs/programs-must-not-limit-freedom-to-run.md147
1 files changed, 147 insertions, 0 deletions
diff --git a/docs/programs-must-not-limit-freedom-to-run.md b/docs/programs-must-not-limit-freedom-to-run.md
new file mode 100644
index 0000000..57c6dc1
--- /dev/null
+++ b/docs/programs-must-not-limit-freedom-to-run.md
@@ -0,0 +1,147 @@
+---
+Generator: 'texi2html 1.82'
+description: Untitled Document
+distribution: global
+keywords: Untitled Document
+resource-type: document
+title: Untitled Document
+...
+
+1. Programs Must Not Limit the Freedom to Run Them {#programs-must-not-limit-thefreedomtorunthem .chapter}
+==================================================
+
+Free software means software controlled by its users, rather than the
+reverse. Specifically, it means the software comes with four essential
+freedoms that software users deserve.[(1)](#FOOT1) At the head of the
+list is freedom zero, the freedom to run the program as you wish, in
+order to do what you wish.
+
+@firstcopyingnotice{{@footnoterule @smallskip Copyright © 2012 Free
+Software Foundation, Inc.\
+ This essay was originally published on <http://gnu.org>, in 2012. This
+version is part of @fsfsthreecite}
+
+Some developers propose to place usage restrictions in software licenses
+to ban using the program for certain purposes, but that would be a
+disastrous path. This article explains why freedom zero must not be
+limited. Conditions to limit the use of a program would achieve little
+of their aims, but could wreck the free software community.
+
+First of all, let’s be clear what freedom zero means. It means that the
+distribution of the software does not restrict how you use it. This
+doesn’t make you exempt from laws. For instance, fraud is a crime in the
+US—a law which I think is right and proper. Whatever the free software
+license says, using a free program to carry out your fraud won’t shield
+you from prosecution.
+
+A license condition against fraud would be superfluous in a country
+where fraud is a crime. But why not a condition against using it for
+torture, a practice that states frequently condone when carried out by
+the “security forces”?
+
+A condition against torture would not work, because enforcement of any
+free software license is done through the state. A state that wants to
+carry out torture will ignore the license. When victims of US torture
+try suing the US government, courts dismiss the cases on the grounds
+that their treatment is a national security secret. If a software
+developer tried to sue the US government for using a program for torture
+against the conditions of its license, that suit would be dismissed too.
+In general, states are clever at making legal excuses for whatever
+terrible things they want to do. Businesses with powerful lobbies can do
+it too.
+
+What if the condition were against some specialized private activity?
+For instance, PETA proposed a license that would forbid use of the
+software to cause pain to animals with a spinal column. Or there might
+be a condition against using a certain program to make or publish
+drawings of Mohammad. Or against its use in experiments with embryonic
+stem cells. Or against using it to make unauthorized copies of musical
+recordings.
+
+It is not clear these would be enforcible. Free software licenses are
+based on copyright law, and trying to impose usage conditions that way
+is stretching what copyright law permits, stretching it in a dangerous
+way. Would you like books to carry license conditions about how you can
+use the information in them?
+
+What if such conditions are legally enforcible—would that be good?
+
+The fact is, people have very different ethical ideas about the
+activities that might be done using software. I happen to think those
+four unusual activities are legitimate and should not be forbidden. In
+particular I support the use of software for medical experiments on
+animals, and for processing meat. I defend the human rights of animal
+right activists but I don’t agree with them; I would not want PETA to
+get its way in restricting the use of software.
+
+Since I am not a pacifist, I would also disagree with a “no military
+use” provision. I condemn wars of aggression but I don’t condemn
+fighting back. In fact, I have supported efforts to convince various
+armies to switch to free software, since they can check it for back
+doors and surveillance features that could imperil national security.
+
+Since I am not against business in general, I would oppose a restriction
+against commercial use. A system that we could use only for recreation,
+hobbies and school is off limits to much of what we do with computers.
+
+I’ve stated some of my views about other political issues, about
+activities that are or aren’t unjust. Your views might differ, and
+that’s precisely the point. If we accepted programs with usage
+restrictions as part of a free operating system such as GNU, people
+would come up with lots of different usage restrictions. There would be
+programs banned for use in meat processing, programs banned only for
+pigs, programs banned only for cows, and programs limited to kosher
+foods. Someone who hates spinach might write a program allowing use for
+processing any vegetable except spinach, while a Popeye fan might allow
+use only for spinach. There would be music programs allowed only for rap
+music, and others allowed only for classical music.
+
+The result would be a system that you could not count on for any
+purpose. For each task you wish to do, you’d have to check lots of
+licenses to see which parts of your system are off limits for that task.
+
+How would users respond to that? I think most of them would use
+proprietary systems. Allowing any usage restrictions whatsoever in free
+software would mainly push users towards nonfree software. Trying to
+stop users from doing something through usage restrictions in free
+software is as ineffective as pushing on an object through a long, soft,
+straight piece of spaghetti.
+
+It is worse than ineffective; it is wrong too, because software
+developers should not exercise such power over what users do. Imagine
+selling pens with conditions about what you can write with them; that
+would be noisome, and we should not stand for it. Likewise for general
+software. If you make something that is generally useful, like a pen,
+people will use it to write all sorts of things, even horrible things
+such as orders to torture a dissident; but you must not have the power
+to control people’s activities through their pens. It is the same for a
+text editor, compiler or kernel.
+
+You do have an opportunity to determine what your software can be used
+for: when you decide what functionality to implement. You can write
+programs that lend themselves mainly to uses you think are positive, and
+you have no obligation to write any features that might lend themselves
+to activities you disapprove of.
+
+The conclusion is clear: a program must not restrict what jobs its users
+do with it. Freedom 0 must be complete. We need to stop torture, but we
+can’t do it through software licenses. The proper job of software
+licenses is to establish and protect users’ freedom.
+
+<div class="footnote">
+
+------------------------------------------------------------------------
+
+### Footnotes
+
+### [(1)](#DOCF1)
+
+@raggedright See “What Is Free Software?” (@pageref{Definition}) for the
+full definition of free software. @end raggedright
+
+</div>
+
+------------------------------------------------------------------------
+
+This document was generated by *tonghuix* on *March 25, 2016* using
+[*texi2html 1.82*](http://www.nongnu.org/texi2html/).\