gnu-misc-discuss
[Top][All Lists]
Advanced

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

Opinion: "GPL Written By A Monkey" -- GNU GPL (a.k.a. "Please rape me!")


From: Alexander Terekhov
Subject: Opinion: "GPL Written By A Monkey" -- GNU GPL (a.k.a. "Please rape me!")
Date: Fri, 08 Dec 2006 12:29:37 +0100

http://spl.haxial.net/gnu-gpl/

--------
Richard Stallman has the license-writing skills of a monkey. I
discovered this when I tried to write an accurate and concise
summary of his license. 

Following I tear the GPL to shreds, and then explain why each
shred is poorly written for a license agreement. Portions which
I had no comment on are omitted. You might think I am being a
bit too fussy with some of my comments, but remember this is a
LEGAL AGREEMENT, not general writing, and so the
standard is expected to be higher. 

    GNU GENERAL PUBLIC LICENSE 

    Version 2, June 1991 

    Copyright (C) 1989, 1991 Free Software
    Foundation, Inc. 59 Temple Place - Suite 330,
    Boston, MA 02111-1307, USA 

    Everyone is permitted to copy and distribute
    verbatim copies of this license document, but
    changing it is not allowed. 

Here he denies you permission to change the document
("changing it is not allowed"), yet in the very next paragraph he
advocates freedom to change ("the [GPL] is intended to
guarantee your freedom to [...] change free software").
Hypocrite! Double standard! 

    Preamble 

    The licenses for most software are designed to take
    away your freedom to share and change it. 

This contradicts section 5 where he says, "nothing [other than
this License] grants you permission to modify or distribute the
Program". Therefore, how can the licenses for most software
be taking away your freedom when you did not have that
freedom/permission in the first place? 

    By contrast, the GNU General Public License is
    intended to guarantee your freedom to share and
    change free software--to make sure the software is
    free for all its users. 

It only guarantees your freedom if you do it according to the
terms and conditions of this license, which places restrictions
on how you share and change it, so therefore it is not absolute
freedom. It would be more accurate to say, "the GPL is
intended to guarantee your freedom according to the GNU
definition of freedom". 

Also, this sort of statement is vague/ambiguous propaganda and
has no place in a professional license agreement. 

    This General Public License applies to most of the
    Free Software Foundation's software and to any
    other program whose authors commit to using it.
    (Some other Free Software Foundation software is
    covered by the GNU Library General Public License
    instead.) You can apply it to your programs, too. 

Again not really appropriate for a professional license
agreement. This would be better located in accompanying
documentation. 

    When we speak of free software, we are referring to
    freedom, not price. 

If freedom is what he means, then he should say that ("software
freedom") instead of using a word which he knows is
ambiguous. Or better, say "GPL software". He probably just
likes saying "free" because it is a marketing buzzword and
people become all excited if they think they are getting
something for free. "If you call within the next 5 picoseconds,
we'll throw in this set of steak knives absolutely FREE of
charge!" (Which actually means the knives are included in the
price, not free at all.) 

And again this statement is not appropriate for inclusion in a
license agreement. 

    Our General Public Licenses are designed to make
    sure that you have the freedom to distribute copies of
    free software (and charge for this service if you
    wish), 

Unclear whether this means compiled software, source code,
or both, and whether this means you can charge any price you
wish for either of those. Professional license agreements
should not force the reader to make assumptions. 

    that you receive source code or can get it if you want
    it, 

Unclear. For free or for a price or any price? 

    that you can change the software or use pieces of it in
    new free programs; 

Is "free programs" supposed to mean the same as the "free
software" terminology that was given a special meaning
earlier? Forcing the reader to make assumptions again. This is
supposed to be a license agreement -- the standard and clarity
of writing is supposed to be higher than usual. 

    To protect your rights, we need to make restrictions
    that forbid anyone to deny you these rights or to ask
    you to surrender the rights. These restrictions
    translate to certain responsibilities for you if you
    distribute copies of the software, or if you modify it. 

This is shockingly vague -- the "restrictions" and "certain
responsibilities" are mentioned as concepts rather than
definitions. Such a statement has no place in a license
agreement. Perhaps in accompanying documentation. 

    For example, if you distribute copies of such a
    program, 

Inconsistent use of terminology. Alternating between "free
software", "free programs", "the software", "a program", "the
Program". 

    whether gratis or for a fee, you must give the
    recipients all the rights that you have. 

For starters, this should say, "...all the legal rights that you have
under this agreement", otherwise if read literally, it is very
broad indeed. 

And secondly, this is effectively asking the licensee to become
a licensor to other licensees, which is an inappropriate and
illogical arrangement. It says that if you distribute the software,
then you must license all the recipients with all the rights that
you were licensed with. However, the creator of the work
should be licensing it, not people who merely *distributed* it! 

Also this is not consistent with section 6, which says that when
you redistribute, the recipient automatically receives a license
from the original licensor (which makes sense), whereas the
above sentence seems to be saying that you must re-license it. 

    You must make sure that they, too, receive or can get
    the source code. 

"make sure" is vague -- there are many ways of "making sure",
it could mean anything. It could mean that you simply check that
someone somewhere is providing the source code, which
would satisfy the requirement to make sure that they can get the
source code without actually supplying the source code
yourself. 

    And you must show them these terms so they know
    their rights. 

This should say, "You must show them this License..." not
"these terms". Also, it is ambiguous to says "their rights" -- is
he referring to their legal rights or to his opinion of their moral
rights? (Legality is not the same as morality, although there is
overlap.) Here he presumably meant legal rights, but in the next
sentence he uses the word in a way that indicates moral rights: 

    We protect your rights with two steps: (1) copyright
    the software, 

So nice of him to offer what happens automatically regardless
of this license. Also, copyrighting the software does not
significantly protect the user, rather it mainly serves to protect
the creator. 

    and (2) offer you this license which gives you legal
    permission to copy, distribute and/or modify the
    software. 

As I said earlier, according to section 5, you did not have this
legal right to begin with, therefore granting it would simply
granting it, not protecting an existing legal right. So therefore
presumably he meant "We protect your MORAL rights", yet the
prior use of it seemed to be indicating legal rights, so it is
inconsistent and ambiguous use of terminology. 

    Also, for each author's protection and ours, we want
    to make certain that everyone understands that there
    is no warranty for this free software. If the software
    is modified by someone else and passed on, we want
    its recipients to know that what they have is not the
    original, so that any problems introduced by others
    will not reflect on the original authors' reputations. 

There are 2 sentences in this paragraph, yet they are entirely
unrelated, despite being in the same paragraph. The first
sentence is talking about warranties, and the second sentence is
talking about reputations, which are 2 distinct things. 

When I first read this paragraph, I was misled into thinking that
the second sentence was the reason for the lack of warranty in
the first sentence, but if this was the intention, it makes no
sense -- whether or not there is a warranty does not affect
whether the original authors reputation can be damaged by
unmarked modified versions. 

Perhaps he meant to say that there is no warranty because the
original author cannot be expected to warrant derivative works
created by other people, however this is not what the
paragraph says, and even if it did, it still lacks sense because
the original work could be warranted on the condition that
derivative works are not. 

    Finally, any free program is threatened constantly by
    software patents. 

Propaganda like this should not be in a license, it is
unprofessional. Put it in accompanying documentation instead.
Also, to state the obvious, a program that does not infringe on
any patents (i.e. most programs) is not threatened by any
patents. Perhaps he meant, "Our freedom is threatened
constantly by software patents", but even then it is not
*constantly*. 

    We wish to avoid the danger that redistributors of a
    free program will individually obtain patent
    licenses, in effect making the program proprietary.
    To prevent this, we have made it clear that any patent
    must be licensed for everyone's free use or not
    licensed at all. 

Sections 7 and 8 are the only that mention patents, and they do
not say this. 

    The precise terms and conditions for copying,
    distribution and modification follow. 

Imprecise terms should not have been included in the license at
all! 

    TERMS AND CONDITIONS FOR COPYING,
    DISTRIBUTION AND MODIFICATION 

    0. This License applies to any program or other work
    which contains a notice placed by the copyright
    holder saying it may be distributed under the terms of
    this General Public License. The "Program", below,
    refers to any such program or work, and a "work
    based on the Program" means either the Program or
    any derivative work under copyright law: that is to
    say, a work containing the Program or a portion of it,
    either verbatim or with modifications and/or
    translated into another language. (Hereinafter,
    translation is included without limitation in the term
    "modification".) Each licensee is addressed as
    "you". 

This definition of "Program" should have been at the start of
the license because the word was effectively used prior to this.
Likewise for "you". 

    Activities other than copying, distribution and
    modification are not covered by this License; they
    are outside its scope. 

Actually it also deals with patents and charging fees. 

    You may charge a fee for the physical act of
    transferring a copy, 

Unclear. Firstly, it probably should say "making a copy" not
"transferring a copy". And can you charge a fee if it is an
entirely electronic transfer, such as downloading from a
website? The license does not say you cannot, but it does not
say you can either. And can you charge ANY price or only
enough to cover your cost of providing the copy? Presumably
the sentence means that you can sell and profit from a program
that you had no part in creating, even potentially undercutting
or stealing sales away from the original author. 

Alternatively, you can damage the authors or anyones ability to
earn money from the software by distributing it free of charge,
like a pirate except that this license allows you to do it legally.
Madness! 

    2. You may modify your copy or copies of the
    Program or any portion of it, thus forming a work
    based on the Program, and copy and distribute such
    modifications or work under the terms of Section 1
    above, provided that you also meet all of these
    conditions: 

This means distributing the source code, but fails to explicitly
state it, unlike section 1. Compiled code is dealt with in
section 3. 

    * b) You must cause any work that you distribute or
    publish, that in whole or in part contains or is
    derived from the Program or any part thereof, to be
    licensed as a whole at no charge to all third parties
    under the terms of this License. 

"at no charge" contradicts section 1 which says "You may
charge a fee". 

    * c) If the modified program normally reads
    commands interactively when run, you must cause it,
    when started running for such interactive use in the
    most ordinary way, to print or display an
    announcement including an appropriate copyright
    notice and a notice that there is no warranty (or else,
    saying that you provide a warranty) and that users
    may redistribute the program under these conditions,
    and telling the user how to view a copy of this
    License. 

Under what conditions? It would be better to say, "...that users
may redistribute the program under the terms of the GNU
GPL". 

    Thus, it is not the intent of this section to claim rights
    or contest your rights to work written entirely by you;
    rather, the intent is to exercise the right to control the
    distribution of derivative or collective works based
    on the Program. 

"control the distribution", he says. One minute he is saying
"freedom", the next minute he is saying "control". Also, I take
issue with him saying "exercise the right to control". Copyright
law does allow controlling the distribution of derivative
works, so it can be said it is a "right", however controlling the
distribution of *collective* works is going beyond copyright
law, and thus is not "exercising a right" but rather imposing a
condition. 

    The source code for a work means the preferred
    form of the work for making modifications to it. For
    an executable work, complete source code means all
    the source code for all modules it contains, plus any
    associated interface definition files, plus the scripts
    used to control compilation and installation of the
    executable. However, as a special exception, the
    source code distributed need not include anything
    that is normally distributed (in either source or
    binary form) with the major components (compiler,
    kernel, and so on) of the operating system on which
    the executable runs, unless that component itself
    accompanies the executable. 

This definition for "source code" should have appeared prior
to its first use, not stuck in the middle. By this point, "source
code" has been used numerous times. 

    5. You are not required to accept this License, since
    you have not signed it. However, nothing else grants
    you permission to modify or distribute the Program
    or its derivative works. These actions are prohibited
    by law if you do not accept this License. Therefore,
    by modifying or distributing the Program (or any
    work based on the Program), you indicate your
    acceptance of this License to do so, and all its terms
    and conditions for copying, distributing or modifying
    the Program or works based on it. 

See previous comment about contradiction with section 5. 

    6. Each time you redistribute the Program (or any
    work based on the Program), the recipient
    automatically receives a license from the original
    licensor to copy, distribute or modify the Program
    subject to these terms and conditions. 

This is inadequate. If you have modified the Program ("any
work based on the Program"), then you own the copyright in the
additions/modifications, and thus the recipient will need a
license from you as well as the original licensor, otherwise the
recipient is only licensed to use the original version of the
Program, not the work based on the Program. The original
licensor cannot give licenses for any [parts of] material that
he/she does not own the copyright to. 

    You are not responsible for enforcing compliance by
    third parties to this License. 

Who then is responsible? The original author? What if you are
distributing a version of the program that you modified? Then
the only person who is legally entitled to enforce compliance
as it relates to your additions is you because you own the
copyright in the additions/modifications. 

    7. If, as a consequence of a court judgment or
    allegation of patent infringement or for any other
    reason (not limited to patent issues), conditions are
    imposed on you (whether by court order, agreement
    or otherwise) that contradict the conditions of this
    License, they do not excuse you from the conditions
    of this License. 

Not true -- a court order takes precedence over a license
agreement. It is certainly within a judge's power to declare a
license agreement to be invalid, thus excusing you from the
conditions of that agreement regardless of what the agreement
says. If a judge orders you to do something that is in
contradiction with an agreement you agreed to, then obviously
you are going to follow the judge's orders; you would have to
be a fool to ignore the court order. 

    If you cannot distribute so as to satisfy
    simultaneously your obligations under this License
    and any other pertinent obligations, then as a
    consequence you may not distribute the Program at
    all. 

This sentence is reasonable, but not the previous sentence
which is much broader. 

    11. BECAUSE THE PROGRAM IS LICENSED
    FREE OF CHARGE, THERE IS NO WARRANTY
    FOR THE PROGRAM, TO THE EXTENT
    PERMITTED BY APPLICABLE LAW. 

Free of charge? Section 1 allows a fee. Ostensibly the fee is
for "transferring a copy" not the license itself, but that is
quibbling. 


People Do Not Believe In GNU Philosophies

I strongly suspect that most people who use GPL-licensed
software do not really believe or understand the GNU/FSF
propaganda/philosophies. They probably have not even read it,
and they do not really care about it. They use the software
simply because they enjoy a free lunch. Someone is offering to
let you use their software free of charge. Do you refuse?
GPL-licensed software has gained a measure of popularity
because it can be obtained and used free of charge -- that is the
real reason, and not because all those people believe in the
GNU/FSF philosophies. 

When a company/business decides to use GNU or Linux
software, do you really think most do it because they believe in
the FSF philosophies? Ofcourse not, they only use it because it
is free of charge and therefore good for business. It is purely a
monetary/financial decision. If Microsoft products were free of
charge, they would use those instead, most or nearly all of them
without a second (or even first) thought about philosophies. 

People like to obtain something without paying for it. Some
other people use FSF/GPL as an excuse to be a cheapskate.
These tightwads make a pretense of believing in the FSF
philosophies, but if the software could no longer be
obtained/used free of charge, their support of FSF/GPL would
suddenly evaporate. 

Some people seem to think that by using the GPL, they are
sending a message of defiance to the "evil"
corporate/commercial world. In reality, GPL is NOT
anti-corporate. If anything, it is pro-corporate because it
allows corporations to use the software free of charge -- the
GPL is NOT one of those licenses that says free only for
personal or educational use, rather it is free for all including
commercial use. Yes, all those "filthy rich mega-corporations"
using your software FREE of charge! You fool! If you want to
be anti-corporate, then it makes much more sense to license
your software as "free for non-commercial use" or "free for
personal and educational use", rather than the
corporation-supporting GPL. 


GPL Offers Restricted Freedom

The FSF claims to support freedom, yet in reality they seek to
enlarge certain freedoms and squash others. The main FSF
philosophy is basically that proprietary software is a bane to
society, an evil that should be eliminated. 

What about my freedom, as a software author, to distribute my
work in the way that I want? What about my freedom to choose
to distribute my work in a proprietary manner? I created it, it
was a f-ing large amount of work to do so, and therefore I have
the moral and legal right to decide how my own work should
be distributed. Richard Stallman of the FSF obviously believes
that he has the right to decide how his software is
distributed/used (he controls it with his GPL). So if he has the
right to decide, why not I? Can you see the hypocrisy of the
FSF philosophy? 

Richard Stallman is like a communist dictator who wants to
dictate to the world how authors should distribute their
software. Only his way is the right way, and any other way is
immoral or unethical. That is ridiculous and bigoted! I have the
right to decide for myself, to form my own opinion about how
my work should be distributed, in the same way that Richard
Stallman decided how his work should be distributed. 

It is ironic to note that -- despite how much the FSF claims to
be champions of freedom -- their GPL license is actually much
more restrictive than some other licenses such as BSD-style
licenses, and the XFree86 license. All it takes is a quick
comparison of a BSD-style license with the GPL, and you can
see that the BSD-style license grants much more freedom to the
licensee than does the GPL. And likewise for the XFree86
license. So if freedom is really what you want, then the "Free
Software Foundation" (FSF) is actually the wrong place to
look -- greater freedom can be found at FreeBSD, XFree86,
etc. 


Stallman Is A Hypocrite

After reading the philosophy pages on the GNU/FSF website, I
am left wondering whether the FSF opposes copyright. On one
hand, Richard Stallman of the FSF writes things such as
"Freedom Or Copyright?" and "Science must push copyright
aside" and "Software Should Not Have Owners". Yet
simultaneously on the other hand, he uses copyright to his
advantage -- to push his opinion of what is freedom onto other
people. So is he opposed to copyright or not? It seems to me
that he saying that other people using copyright is morally
wrong, but it is okay for him to use it. What a hypocrite! 

If you are wondering how the FSF uses copyright to push its
philosophies onto other people, you need only look at their
"copyleft" philosophy, which is only enforceable thanks to its
use of and reliance on copyright (the FSF website
acknowledges this). If copyright laws were abolished,
"copyleft" would also disappear, it would no longer be
enforceable. "Copyleft" is actually thinly-veiled copyright,
renamed. Haxial could call its shareware license agreement
"Copymiddle" (or "Shareware"), but nevertheless it is still a
copyright license agreement (EULA), as is the GPL/copyleft,
regardless of the name it is given (a Maple is still a tree) and
regardless of which copyright-related rights it does or does not
grant and the conditions. Therefore their "copyleft" philosophy
demonstrates that copyright is necessary and a good thing when
used responsibly. 

So I think that either:
(a) Richard Stallman is not opposed to copyright and
recognizes that it is beneficial when used
responsibly/appropriately, or
(b) Richard Stallman is a hypocrite who uses copyright despite
saying it is wrong for other people to use copyright. 

Which is it? 

Certainly copyright can be abused, but so can kitchen knives,
and so can "copyleft", and almost anything. Copyright, like
kitchen knives, can be used for good or bad. What do Richard
Stallman and Bill Gates have in common? Both of them use
copyright to make their products be distributed in the way that
they want, and both of them have the opinion that their
copyright license agreement is moral/ethical. (I think that both
camps are a pack of idiotic fools.) 


Even The Name "GNU" Is Hypocritical

What is with "GNU" being a recursive acronym for "GNU's
Not Unix"? It obviously rips off as many Unix ideas as it
possibly can without breaking the law, and it is highly
compatible with Unix. Its design/interface is 99.5% Unix,
although the implementation details differ. I think it would be
more appropriately named "GLU" (GLU's Like Unix). GNU is
as silly as the windoze emulator named "WINE" (WINE Is Not
an Emulator). Next they will be naming something "TPNP"
(This Program is Not a Program) or "ZINCEM" (ZINCEM Is
Not a Cabbage-Eating Monster). And it would be more useful
to know what it IS than what it is not. 


GPL Is Bad For Authors (Even Open Source
Authors!)

The GPL is good for users, but it is a bad choice for software
authors to use as their license because: 

(a) It allows anyone or any company to use your software for
no charge, even for commercial purposes, thus making it much
more difficult (altho' not impossible) for you to earn a living
from writing software. Writing good quality software is hard
work, why make it more difficult to earn a living from it? 

(b) It allows other people or companies who had no part in
creating your software to earn money from it, without paying
you a cent! A corporation could earn $200000 selling your
software, and give you little or nothing in return. 

(c) It allows people or companies to go into competition
against you, using your own software! A company could take
your software, advertise/market it really aggressively and
capture most of the market for your software or related
services or support, squeezing you out of the market and out of
business. 

(d) Alternatively, anyone can legally sabotage your ability to
earn a living from your software by offering copies of it to the
world free of charge or for less than your price. Thus why
would people purchase it from you when they can get the exact
same thing for free or less somewhere else? 

The above is a picture of chaos. It is madness. The GPL
provides woefully insufficient protection and compensation for
the author of the work, the person who spent all that time and
did all that hard work to create the material in the first place.
For this reason, I would never release any of my work under
the defective GPL. 

EVEN IF you wish to have an open and community-oriented
approach to software development, the GPL is a bad choice. It
would likely be better for you to write your own license, for
example along the lines of free for non-commercial use, or use
one of the other pre-written licenses that are available. Or you
could write a license that states that your software is "open
source" and anyone can modify it and even sell copies of it,
HOWEVER if they do sell copies of it, they must pay you a
royalty/percentage for every copy they sell (which is fair). 


Shareware Is Not Evil

Haxial uses the well-respected and popular Shareware
(try-before-you-buy) system, and I much prefer this. Richard
Stallman writes about the "evils" of proprietary software. I
would like to see him try to write about all the "evil"
Shareware authors with their proprietary software (who are
either individuals or small businesses, not corporate
behemoths). I think most people would laugh at the blatant and
extreme absurdity of the suggestion that shareware (which is
proprietary) is immoral. I strongly suspect that Richard
Stallman is another PITA bigoted fanatic who is so blinded by
his enthusiasm for his cause that he cannot see any shades of
gray. 

There are MANY morally upstanding, ethical, generous,
hard-working, 110% legitimate, respectable, and good people
who are Shareware authors with proprietary software. These
Shareware authors definitely do NOT deserve to be portrayed
as immoral/unethical villains or oppressors of freedom, as
Richard Stallman would have you believe. The Shareware
authors have done nothing wrong, and they are simply trying to
earn a living in a respectable and fully legitimate manner. In
fact, I think it really STINKS that Richard Stallman does not
exclude Shareware from his diatribes against proprietary
software. 


Conclusion

Basically, what we have here is a case of a bunch of commies
trying to bully the whole world into behaving the same way as
them, except that the bullying involves a lot of breath-holding
and offering of free candy and bribes. 

If the FSF/GNU people want to have a "Please rape me!"
license for their own software, then it is their right to do so
(regardless of how stupid I think it is). If Apache wants to have
a slightly-less-rape-inviting license, then it is their right to do
so. If the XFree86 people want their license to require a bit
more credit, then again it is their right to do so. If the BSD
people want to have a "I beg you to rape me!" license, yet
again it is their right to do so. PROVIDED IT IS FOR THEIR
OWN SOFTWARE. 

The problem is that various fanatics fail to respect the right of
others to create their own damn license for their own damn
software. These nazis-cum-commies think they can or should
be able to dictate license terms for software that they did not
even write. Mind your own damn business and stop trying to
interfere in others! 
--------

regards,
alexander.

--
"So now they're going to try the hard work of cracking 'Freedom'. Free,
well that means stuff you don't pay for"

     -- Eben Moglen ("Moglen: How we'll kill the Microsoft Novell deal")


reply via email to

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