Annotation of 43BSD/contrib/emacs/etc/GNU, revision 1.1

1.1     ! root        1:                        The GNU Manifesto
        !             2: 
        !             3: Copyright (C) 1985 Richard M. Stallman
        !             4:   (Copying permission notice at the end.)
        !             5: 
        !             6: What's GNU?  Gnu's Not Unix!
        !             7: 
        !             8: GNU, which stands for Gnu's Not Unix, is the name for the complete
        !             9: Unix-compatible software system which I am writing so that I can give it
        !            10: away free to everyone who can use it.  Several other volunteers are helping
        !            11: me.  Contributions of time, money, programs and equipment are greatly
        !            12: needed.
        !            13: 
        !            14: So far we have a portable C and Pascal compiler which compiles for Vax and
        !            15: 68000 (though needing much rewriting), an Emacs-like text editor with Lisp
        !            16: for writing editor commands, a yacc-compatible parser generator, a linker,
        !            17: and around 35 utilities.  A shell (command interpreter) is nearly
        !            18: completed.  When the kernel and a debugger are written, it will be possible
        !            19: to distribute a GNU system suitable for program development.  After this we
        !            20: will add a text formatter, an Empire game, a spreadsheet, and hundreds of
        !            21: other things, plus on-line documentation.  We hope to supply, eventually,
        !            22: everything useful that normally comes with a Unix system, and more.
        !            23: 
        !            24: GNU will be able to run Unix programs, but will not be identical to Unix.
        !            25: We will make all improvements that are convenient, based on our experience
        !            26: with other operating systems.  In particular, we plan to have longer
        !            27: filenames, file version numbers, a crashproof file system, filename
        !            28: completion perhaps, terminal-independent display support, and eventually a
        !            29: Lisp-based window system through which several Lisp programs and ordinary
        !            30: Unix programs can share a screen.  Both C and Lisp will be available as
        !            31: system programming languages.  We will try to support UUCP, MIT Chaosnet,
        !            32: and Internet protocols for communication.
        !            33: 
        !            34: GNU is aimed initially at machines in the 68000/16000 class, with virtual
        !            35: memory, because they are the easiest machines to make it run on.  The extra
        !            36: effort to make it run on smaller machines will be left to someone who wants
        !            37: to use it on them.
        !            38: 
        !            39: To avoid horrible confusion, please pronounce the `G' in the word `GNU'
        !            40: when it is the name of this project.
        !            41: 
        !            42: 
        !            43: Who Am I?
        !            44: 
        !            45: I am Richard Stallman, inventor of the original much-imitated EMACS editor,
        !            46: formerly at the Artificial Intelligence Lab at MIT.  I have worked
        !            47: extensively on compilers, editors, debuggers, command interpreters, the
        !            48: Incompatible Timesharing System and the Lisp Machine operating system.  I
        !            49: pioneered terminal-independent display support in ITS.  Since then I have
        !            50: implemented one crashproof file system and two window systems for Lisp
        !            51: machines, and designed a third window system now being implemented; this
        !            52: one will be ported to many systems including use in GNU.
        !            53: 
        !            54: 
        !            55: Why I Must Write GNU
        !            56: 
        !            57: I consider that the golden rule requires that if I like a program I must
        !            58: share it with other people who like it.  Software sellers want to divide
        !            59: the users and conquer them, making each user agree not to share with
        !            60: others.  I refuse to break solidarity with other users in this way.  I
        !            61: cannot in good conscience sign a nondisclosure agreement or a software
        !            62: license agreement.  For years I worked within the Artificial Intelligence
        !            63: Lab to resist such tendencies and other inhospitalities, but eventually
        !            64: they had gone too far: I could not remain in an institution where such
        !            65: things are done for me against my will.
        !            66: 
        !            67: So that I can continue to use computers without dishonor, I have decided to
        !            68: put together a sufficient body of free software so that I will be able to
        !            69: get along without any software that is not free.  I have resigned from the
        !            70: AI lab to deny MIT any legal excuse to prevent me from giving GNU away.
        !            71: 
        !            72: 
        !            73: Why GNU Will Be Compatible with Unix
        !            74: 
        !            75: Unix is not my ideal system, but it is not too bad.  The essential features
        !            76: of Unix seem to be good ones, and I think I can fill in what Unix lacks
        !            77: without spoiling them.  And a system compatible with Unix would be
        !            78: convenient for many other people to adopt.
        !            79: 
        !            80: 
        !            81: How GNU Will Be Available
        !            82: 
        !            83: GNU is not in the public domain.  Everyone will be permitted to modify and
        !            84: redistribute GNU, but no distributor will be allowed to restrict its
        !            85: further redistribution.  That is to say, proprietary modifications will not
        !            86: be allowed.  I want to make sure that all versions of GNU remain free.
        !            87: 
        !            88: 
        !            89: Why Many Other Programmers Want to Help
        !            90: 
        !            91: I have found many other programmers who are excited about GNU and want to
        !            92: help.
        !            93: 
        !            94: Many programmers are unhappy about the commercialization of system
        !            95: software.  It may enable them to make more money, but it requires them to
        !            96: feel in conflict with other programmers in general rather than feel as
        !            97: comrades.  The fundamental act of friendship among programmers is the
        !            98: sharing of programs; marketing arrangements now typically used essentially
        !            99: forbid programmers to treat others as friends.  The purchaser of software
        !           100: must choose between friendship and obeying the law.  Naturally, many decide
        !           101: that friendship is more important.  But those who believe in law often do
        !           102: not feel at ease with either choice.  They become cynical and think that
        !           103: programming is just a way of making money.
        !           104: 
        !           105: By working on and using GNU rather than proprietary programs, we can be
        !           106: hospitable to everyone and obey the law.  In addition, GNU serves as an
        !           107: example to inspire and a banner to rally others to join us in sharing.
        !           108: This can give us a feeling of harmony which is impossible if we use
        !           109: software that is not free.  For about half the programmers I talk to, this
        !           110: is an important happiness that money cannot replace.
        !           111: 
        !           112: 
        !           113: How You Can Contribute
        !           114: 
        !           115: I am asking computer manufacturers for donations of machines and money.
        !           116: I'm asking individuals for donations of programs and work.
        !           117: 
        !           118: One consequence you can expect if you donate machines is that GNU will run
        !           119: on them at an early date.  The machines should be complete, ready to use
        !           120: systems, approved for use in a residential area, and not in need of
        !           121: sophisticated cooling or power.
        !           122: 
        !           123: I have found very many programmers eager to contribute part-time work for
        !           124: GNU.  For most projects, such part-time distributed work would be very hard
        !           125: to coordinate; the independently-written parts would not work together.
        !           126: But for the particular task of replacing Unix, this problem is absent.  A
        !           127: complete Unix system contains hundreds of utility programs, each of which
        !           128: is documented separately.  Most interface specifications are fixed by Unix
        !           129: compatibility.  If each contributor can write a compatible replacement for
        !           130: a single Unix utility, and make it work properly in place of the original
        !           131: on a Unix system, then these utilities will work right when put together.
        !           132: Even allowing for Murphy to create a few unexpected problems, assembling
        !           133: these components will be a feasible task.  (The kernel will require closer
        !           134: communication and will be worked on by a small, tight group.)
        !           135: 
        !           136: If I get donations of money, I may be able to hire a few people full or
        !           137: part time.  The salary won't be high by programmers' standards, but I'm
        !           138: looking for people for whom building community spirit is as important as
        !           139: making money.  I view this as a way of enabling dedicated people to devote
        !           140: their full energies to working on GNU by sparing them the need to make a
        !           141: living in another way.
        !           142: 
        !           143: 
        !           144: Why All Computer Users Will Benefit
        !           145: 
        !           146: Once GNU is written, everyone will be able to obtain good system software
        !           147: free, just like air.
        !           148: 
        !           149: This means much more than just saving everyone the price of a Unix license.
        !           150: It means that much wasteful duplication of system programming effort will
        !           151: be avoided.  This effort can go instead into advancing the state of the
        !           152: art.
        !           153: 
        !           154: Complete system sources will be available to everyone.  As a result, a user
        !           155: who needs changes in the system will always be free to make them himself,
        !           156: or hire any available programmer or company to make them for him.  Users
        !           157: will no longer be at the mercy of one programmer or company which owns the
        !           158: sources and is in sole position to make changes.
        !           159: 
        !           160: Schools will be able to provide a much more educational environment by
        !           161: encouraging all students to study and improve the system code.  Harvard's
        !           162: computer lab used to have the policy that no program could be installed on
        !           163: the system if its sources were not on public display, and upheld it by
        !           164: actually refusing to install certain programs.  I was very much inspired by
        !           165: this.
        !           166: 
        !           167: Finally, the overhead of considering who owns the system software and what
        !           168: one is or is not entitled to do with it will be lifted.
        !           169: 
        !           170: Arrangements to make people pay for using a program, including licensing of
        !           171: copies, always incur a tremendous cost to society through the cumbersome
        !           172: mechanisms necessary to figure out how much (that is, which programs) a
        !           173: person must pay for.  And only a police state can force everyone to obey
        !           174: them.  Consider a space station where air must be manufactured at great
        !           175: cost: charging each breather per liter of air may be fair, but wearing the
        !           176: metered gas mask all day and all night is intolerable even if everyone can
        !           177: afford to pay the air bill.  And the TV cameras everywhere to see if you
        !           178: ever take the mask off are outrageous.  It's better to support the air
        !           179: plant with a head tax and chuck the masks.
        !           180: 
        !           181: Copying all or parts of a program is as natural to a programmer as
        !           182: breathing, and as productive.  It ought to be as free.
        !           183: 
        !           184: 
        !           185: Some Easily Rebutted Objections to GNU's Goals
        !           186: 
        !           187:   "Nobody will use it if it is free, because that means
        !           188:    they can't rely on any support."
        !           189:   "You have to charge for the program
        !           190:    to pay for providing the support."
        !           191: 
        !           192: If people would rather pay for GNU plus service than get GNU free without
        !           193: service, a company to provide just service to people who have obtained GNU
        !           194: free ought to be profitable.
        !           195: 
        !           196: We must distinguish between support in the form of real programming work
        !           197: and mere handholding.  The former is something one cannot rely on from a
        !           198: software vendor.  If your problem is not shared by enough people, the
        !           199: vendor will tell you to get lost.
        !           200: 
        !           201: If your business needs to be able to rely on support, the only way is to
        !           202: have all the necessary sources and tools.  Then you can hire any available
        !           203: person to fix your problem; you are not at the mercy of any individual.
        !           204: With Unix, the price of sources puts this out of consideration for most
        !           205: businesses.  With GNU this will be easy.  It is still possible for there to
        !           206: be no available competent person, but this problem cannot be blamed on
        !           207: distibution arrangements.  GNU does not eliminate all the world's problems,
        !           208: only some of them.
        !           209: 
        !           210: Meanwhile, the users who know nothing about computers need handholding:
        !           211: doing things for them which they could easily do themselves but don't know
        !           212: how.
        !           213: 
        !           214: Such services could be provided by companies that sell just hand-holding
        !           215: and repair service.  If it is true that users would rather spend money and
        !           216: get a product with service, they will also be willing to buy the service
        !           217: having got the product free.  The service companies will compete in quality
        !           218: and price; users will not be tied to any particular one.  Meanwhile, those
        !           219: of us who don't need the service should be able to use the program without
        !           220: paying for the service.
        !           221: 
        !           222:   "You cannot reach many people without advertising,
        !           223:    and you must charge for the program to support that."
        !           224:   "It's no use advertising a program people can get free."
        !           225: 
        !           226: There are various forms of free or very cheap publicity that can be used to
        !           227: inform numbers of computer users about something like GNU.  But it may be
        !           228: true that one can reach more microcomputer users with advertising.  If this
        !           229: is really so, a business which advertises the service of copying and
        !           230: mailing GNU for a fee ought to be successful enough to pay for its
        !           231: advertising and more.  This way, only the users who benefit from the
        !           232: advertising pay for it.
        !           233: 
        !           234: On the other hand, if many people get GNU from their friends, and such
        !           235: companies don't succeed, this will show that advertising was not really
        !           236: necessary to spread GNU.  Why is it that free market advocates don't want
        !           237: to let the free market decide this?
        !           238: 
        !           239:   "My company needs a proprietary operating system
        !           240:    to get a competitive edge."
        !           241: 
        !           242: GNU will remove operating system software from the realm of competition.
        !           243: You will not be able to get an edge in this area, but neither will your
        !           244: competitors be able to get an edge over you.  You and they will compete in
        !           245: other areas, while benefitting mutually in this one.  If your business is
        !           246: selling an operating system, you will not like GNU, but that's tough on
        !           247: you.  If your business is something else, GNU can save you from being
        !           248: pushed into the expensive business of selling operating systems.
        !           249: 
        !           250: I would like to see GNU development supported by gifts from many
        !           251: manufacturers and users, reducing the cost to each.
        !           252: 
        !           253:   "Don't programmers deserve a reward for their creativity?"
        !           254: 
        !           255: If anything deserves a reward, it is social contribution.  Creativity can
        !           256: be a social contribution, but only in so far as society is free to use the
        !           257: results.  If programmers deserve to be rewarded for creating innovative
        !           258: programs, by the same token they deserve to be punished if they restrict
        !           259: the use of these programs.
        !           260: 
        !           261:   "Shouldn't a programmer be able to ask for a reward for his creativity?"
        !           262: 
        !           263: There is nothing wrong with wanting pay for work, or seeking to maximize
        !           264: one's income, as long as one does not use means that are destructive.  But
        !           265: the means customary in the field of software today are based on
        !           266: destruction.
        !           267: 
        !           268: Extracting money from users of a program by restricting their use of it is
        !           269: destructive because the restrictions reduce the amount and the ways that
        !           270: the program can be used.  This reduces the amount of wealth that humanity
        !           271: derives from the program.  When there is a deliberate choice to restrict,
        !           272: the harmful consequences are deliberate destruction.
        !           273: 
        !           274: The reason a good citizen does not use such destructive means to become
        !           275: wealthier is that, if everyone did so, we would all become poorer from the
        !           276: mutual destructiveness.  This is Kantian ethics; or, the Golden Rule.
        !           277: Since I do not like the consequences that result if everyone hoards
        !           278: information, I am required to consider it wrong for one to do so.
        !           279: Specifically, the desire to be rewarded for one's creativity does not
        !           280: justify depriving the world in general of all or part of that creativity.
        !           281: 
        !           282:   "Won't programmers starve?"
        !           283: 
        !           284: I could answer that nobody is forced to be a programmer.  Most of us cannot
        !           285: manage to get any money for standing on the street and making faces.  But
        !           286: we are not, as a result, condemned to spend our lives standing on the
        !           287: street making faces, and starving.  We do something else.
        !           288: 
        !           289: But that is the wrong answer because it accepts the questioner's implicit
        !           290: assumption: that without ownership of software, programmers cannot possibly
        !           291: be paid a cent.  Supposedly it is all or nothing.
        !           292: 
        !           293: The real reason programmers will not starve is that it will still be
        !           294: possible for them to get paid for programming; just not paid as much as
        !           295: now.
        !           296: 
        !           297: Restricting copying is not the only basis for business in software.  It is
        !           298: the most common basis because it brings in the most money.  If it were
        !           299: prohibited, or rejected by the customer, software business would move to
        !           300: other bases of organization which are now used less often.  There are
        !           301: always numerous ways to organize any kind of business.
        !           302: 
        !           303: Probably programming will not be as lucrative on the new basis as it is
        !           304: now.  But that is not an argument against the change.  It is not considered
        !           305: an injustice that sales clerks make the salaries that they now do.  If
        !           306: programmers made the same, that would not be an injustice either.  (In
        !           307: practice they would still make considerably more than that.)
        !           308: 
        !           309:   "Don't people have a right to control how their creativity is used?"
        !           310: 
        !           311: "Control over the use of one's ideas" really constitutes control over other
        !           312: people's lives; and it is usually used to make their lives more difficult.
        !           313: 
        !           314: People who have studied the issue of intellectual property rights carefully
        !           315: (such as lawyers) say that there is no intrinsic right to intellectual
        !           316: property.  The kinds of supposed intellectual property rights that the
        !           317: government recognizes were created by specific acts of legislation for
        !           318: specific purposes.
        !           319: 
        !           320: For example, the patent system was established to encourage inventors to
        !           321: disclose the details of their inventions.  Its purpose was to help society
        !           322: rather than to help inventors.  At the time, the life span of 17 years for
        !           323: a patent was short compared with the rate of advance of the state of the
        !           324: art.  Since patents are an issue only among manufacturers, for whom the
        !           325: cost and effort of a license agreement are small compared with setting up
        !           326: production, the patents often do not do much harm.  They do not obstruct
        !           327: most individuals who use patented products.
        !           328: 
        !           329: The idea of copyright did not exist in ancient times, when authors
        !           330: frequently copied other authors at length in works of non-fiction.  This
        !           331: practice was useful, and is the only way many authors' works have survived
        !           332: even in part.  The copyright system was created expressly for the purpose
        !           333: of encouraging authorship.  In the domain for which it was invented--books,
        !           334: which could be copied economically only on a printing press--it did little
        !           335: harm, and did not obstruct most of the individuals who read the books.
        !           336: 
        !           337: All intellectual property rights are just licenses granted by society
        !           338: because it was thought, rightly or wrongly, that society as a whole would
        !           339: benefit by granting them.  But in any particular situation, we have to ask:
        !           340: are we really better off granting such license?  What kind of act are we
        !           341: licensing a person to do?
        !           342: 
        !           343: The case of programs today is very different from that of books a hundred
        !           344: years ago.  The fact that the easiest way to copy a program is from one
        !           345: neighbor to another, the fact that a program has both source code and
        !           346: object code which are distinct, and the fact that a program is used rather
        !           347: than read and enjoyed, combine to create a situation in which a person who
        !           348: enforces a copyright is harming society as a whole both materially and
        !           349: spiritually; in which a person should not do so regardless of whether the
        !           350: law enables him to.
        !           351: 
        !           352:   "Competition makes things get done better."
        !           353: 
        !           354: The paradigm of competition is a race: by rewarding the winner, we
        !           355: encourage everyone to run faster.  When capitalism really works this way,
        !           356: it does a good job; but its defenders are wrong in assuming it always works
        !           357: this way.  If the runners forget why the reward is offered and become
        !           358: intent on winning, no matter how, they may find other strategies--such as,
        !           359: attacking other runners.  If the runners get into a fist fight, they will
        !           360: all finish late.
        !           361: 
        !           362: Proprietary and secret software is the moral equivalent of runners in a
        !           363: fist fight.  Sad to say, the only referee we've got does not seem to
        !           364: object to fights; he just regulates them ("For every ten yards you run, you
        !           365: are allowed one kick.").  He really ought to break them up, and penalize
        !           366: runners for even trying to fight.
        !           367: 
        !           368:   "Won't everyone stop programming without a monetary incentive?"
        !           369: 
        !           370: Actually, many people will program with absolutely no monetary incentive.
        !           371: Programming has an irresistible fascination for some people, usually the
        !           372: people who are best at it.  There is no shortage of professional musicians
        !           373: who keep at it even though they have no hope of making a living that way.
        !           374: 
        !           375: But really this question, though commonly asked, is not appropriate to the
        !           376: situation.  Pay for programmers will not disappear, only become less.  So
        !           377: the right question is, will anyone program with a reduced monetary
        !           378: incentive?  My experience shows that they will.
        !           379: 
        !           380: For more than ten years, many of the world's best programmers worked at the
        !           381: Artificial Intelligence Lab for far less money than they could have had
        !           382: anywhere else.  They got many kinds of non-monetary rewards: fame and
        !           383: appreciation, for example.  And creativity is also fun, a reward in itself.
        !           384: 
        !           385: Then most of them left when offered a chance to do the same interesting
        !           386: work for a lot of money.
        !           387: 
        !           388: What the facts show is that people will program for reasons other than
        !           389: riches; but if given a chance to make a lot of money as well, they will
        !           390: come to expect and demand it.  Low-paying organizations do poorly in
        !           391: competition with high-paying ones, but they do not have to do badly if the
        !           392: high-paying ones are banned.
        !           393: 
        !           394:   "We need the programmers desperately.  If they demand that we
        !           395:    stop helping our neighbors, we have to obey."
        !           396: 
        !           397: You're never so desperate that you have to obey this sort of demand.
        !           398: Remember: millions for defense, but not a cent for tribute!
        !           399: 
        !           400:   "Programmers need to make a living somehow."
        !           401: 
        !           402: In the short run, this is true.  However, there are plenty of ways that
        !           403: programmers could make a living without selling the right to use a program.
        !           404: This way is customary now because it brings programmers and businessmen the
        !           405: most money, not because it is the only way to make a living.  It is easy to
        !           406: find other ways if you want to find them.  Here are a number of examples.
        !           407: 
        !           408: A manufacturer introducing a new computer will pay for the porting of
        !           409: operating systems onto the new hardware.
        !           410: 
        !           411: The sale of teaching, hand-holding and maintenance services could also
        !           412: employ programmers.
        !           413: 
        !           414: People with new ideas could distribute programs as freeware, asking for
        !           415: donations from satisfied users, or selling hand-holding services.  I have
        !           416: met people who are already working this way successfully.
        !           417: 
        !           418: Users with related needs can form users' groups, and pay dues.  A group
        !           419: would contract with programming companies to write programs that the
        !           420: group's members would like to use.
        !           421: 
        !           422: All sorts of development can be funded with a Software Tax:
        !           423: 
        !           424:  Suppose everyone who buys a computer has to pay x percent of
        !           425:  the price as a software tax.  The government gives this to
        !           426:  an agency like the NSF to spend on software development.
        !           427: 
        !           428:  But if the computer buyer makes a donation to software development
        !           429:  himself, he can take a credit against the tax.  He can donate to
        !           430:  the project of his own choosing--often, chosen because he hopes to
        !           431:  use the results when it is done.  He can take a credit for any amount
        !           432:  of donation up to the total tax he had to pay.
        !           433: 
        !           434:  The total tax rate could be decided by a vote of the payers of
        !           435:  the tax, weighted according to the amount they will be taxed on.
        !           436: 
        !           437:  The consequences:
        !           438:  * the computer-using community supports software development.
        !           439:  * this community decides what level of support is needed.
        !           440:  * users who care which projects their share is spent on
        !           441:   can choose this for themselves.
        !           442: 
        !           443: In the long run, making programs free is a step toward the post-scarcity
        !           444: world, where nobody will have to work very hard just to make a living.
        !           445: People will be free to devote themselves to activities that are fun,
        !           446: such as programming, after spending the necessary ten hours a week
        !           447: on required tasks such as legislation, family counseling, robot
        !           448: repair and asteroid prospecting.  There will be no need to be able
        !           449: to make a living from programming.
        !           450: 
        !           451: We have already greatly reduced the amount of work that the whole
        !           452: society must do for its actual productivity, but only a little of this
        !           453: has translated itself into leisure for workers because much
        !           454: nonproductive activity is required to accompany productive activity.
        !           455: The main causes of this are bureaucracy and isometric struggles
        !           456: against competition.  Free software will greatly reduce these
        !           457: drains in the area of software production.  We must do this,
        !           458: in order for technical gains in productivity to translate into
        !           459: less work for us.
        !           460: 
        !           461: Copyright (C) 1985 Richard M. Stallman
        !           462: 
        !           463:    Permission is granted to anyone to make or distribute verbatim copies
        !           464:    of this document as received, in any medium, provided that the
        !           465:    copyright notice and permission notice are preserved,
        !           466:    and that the distributor grants the recipient permission
        !           467:    for further redistribution as permitted by this notice.
        !           468: 
        !           469:    Modified versions may not be made.
        !           470: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.