Changeset - d9bdf4e8448f
[Not reviewed]
0 1 0
Bradley Kuhn (bkuhn) - 10 years ago 2014-03-15 20:43:34
bkuhn@ebb.org
Mention contractual controls from EULAs.
1 file changed with 5 insertions and 0 deletions:
0 comments (0 inline, 0 general)
gpl-lgpl.tex
Show inline comments
...
 
@@ -300,384 +300,389 @@ and features.  Furthermore, this freedom can be exercised to serve a
 
disenfranchised subset of the user community.  If the developers of the
 
standard version refuse to serve the needs of some of the software's
 
users, other entities have the right to create a long- or short-lived fork
 
to serve that sub-community.
 

	
 
\section{How Does Software Become Free?}
 

	
 
The previous section set forth key freedoms and rights that are referred to
 
as ``software freedom''.  This section discusses the licensing mechanisms
 
used to enable software freedom.  These licensing mechanism were ultimately
 
created as a community-oriented ``answer'' to the existing proprietary
 
software licensing mechanisms.  Thus, first, consider carefully why
 
proprietary software exists in the first place.
 

	
 
Proprietary software exists at all only because it is governed by copyright
 
law.\footnote{This statement is admittedly an oversimplification. Patents and
 
  trade secrets can cover software and make it effectively non-Free, and one
 
  can contract away their rights and freedoms regarding software, or source
 
  code can be practically obscured in binary-only distribution without
 
  reliance on any legal system.  However, the primary control mechanism for
 
  software is copyright, and therefore this section focuses on how copyright
 
  restrictions make software proprietary.} Copyright law, with respect to
 
software, typically governs copying, modifying, and redistributing that
 
software (For details of this in the USA, see
 
\href{http://www.copyright.gov/title17/92chap1.html#106}{\S 106} and
 
\href{http://www.copyright.gov/title17/92chap1.html#117}{\S 117} of
 
\href{http://www.law.cornell.edu/uscode/text/17}{Title 17} of the
 
\textit{United States Code}).\footnote{Copyright law in general also governs
 
  ``public performance'' of copyrighted works. There is no generally agreed
 
  definition for public performance of software and both GPLv2 and GPLv3 do
 
  not govern public performance.} By law (in the USA and in most other
 
jurisdictions), the copyright holder (most typically, the author) of the work controls
 
how others may copy, modify and/or distribute the work. For proprietary
 
software, these controls are used to prohibit these activities. In addition,
 
proprietary software distributors further impede modification in a practical
 
sense by distributing only binary code and keeping the source code of the
 
software secret.
 

	
 
Copyright is not a natural state, it is a legal construction. In the USA, the
 
Constitution permits, but does not require, the creation of copyright law as
 
federal legislation.  Software, since it is ``an original works of authorship
 
fixed in any tangible medium of expression ...  from which they can be
 
perceived, reproduced, or otherwise communicated, either directly or with the
 
aid of a machine or device'' (as stated in
 
\href{http://www.law.cornell.edu/uscode/text/17/102}{17 USC \S 102}), is thus
 
covered by the statues, and is copyrighted by default.
 

	
 
However, software, in its natural state without copyright, is Free
 
Software. In an imaginary world with no copyright, the rules would be
 
different. In this world, when you received a copy of a program's source
 
code, there would be no default legal system to restrict you from sharing it
 
with others, making modifications, or redistributing those modified
 
versions.\footnote{Note that this is again an oversimplification; the
 
  complexities with this argument are discussed in
 
  Section~\ref{software-and-non-copyright}.}
 

	
 
Software in the real world is copyrighted by default and is automatically
 
covered by that legal system.  However, it is possible to move software out
 
of the domain of the copyright system.  A copyright holder can often
 
\defn{disclaim} their copyright.  If copyright is disclaimed, the software is
 
not governed by copyright law.   Software not governed by copyright is in the
 
``public domain.''
 

	
 
\subsection{Public Domain Software}
 

	
 
Theoretically, an author can create public domain software by disclaiming all
 
copyright interest on the work. In the USA and other countries that have
 
signed the Berne convention on copyright, software is copyrighted
 
automatically by the author when she ``fixes the software into a tangible
 
medium.''  In the software world, this usually means typing the source code
 
of the software into a file.
 

	
 
Imagine if authors could truly disclaim those default control of copyright
 
law.  If so, the software is in the public domain -- no longer covered by
 
copyright.  Since copyright law is the construction allowing for most
 
restrictions on software (i.e., prohibition of copying, modification, and
 
redistribution), removing the software from the copyright system usually
 
yields software freedom for its users.
 

	
 
Carefully note that software in the public domain is \emph{not} licensed
 
in any way. It is nonsensical to say software is ``licensed for the
 
public domain,'' or any phrase that implies the copyright holder gave
 
expressed permission to take actions governed by copyright law.
 

	
 
By contrast, the copyright holders instead renounced copyright controls on
 
the work.  The law gave the copyright holder exclusive controls over the
 
work, and they chose to waive those controls.  Software in the public domain
 
is absent copyright and absent a license. The software freedoms discussed in
 
Section~\ref{Free Software Definition} are all granted because there is no
 
legal system in play to take them away.
 

	
 
Admittedly, a discussion of public domain software is an oversimplified
 
example.  First, disclaimer of copyright is actually difficult in practice.
 
Because copyright controls are usually automatically granted and because, in
 
some jurisdictions, some copyright controls cannot be waived (See
 
Section~\ref{non-usa-copyright} for further discussion), many copyright
 
holders sometimes incorrectly believe a work has been placed in the public
 
domain.  Second, due to aggressive lobbying by the entertainment industry,
 
the ``exclusive Right'' of copyright, that was supposed to only exist for
 
``Limited Times'' according to the USA Constitution, appears to be infinite:
 
simply purchased on the installment plan rather than in whole.  Thus, we must
 
assume no works of software will fall into the public domain merely due to
 
the passage of time.
 

	
 
The best example of software known to be in the public domain is software
 
that is published exclusively produced by the USA government.  Under
 
\href{http://www.law.cornell.edu/uscode/text/17/105}{17 USC 101 \S 105}, all
 
works published by the USA Government are not copyrightable.
 

	
 
\subsection{Why Copyright Free Software?}
 

	
 
If simply disclaiming copyright on software yields Free Software, then it
 
stands to reason that putting software into the public domain is the
 
easiest and most straightforward way to produce Free Software. Indeed,
 
some major Free Software projects have chosen this method for making their
 
software Free. However, most of the Free Software in existence \emph{is}
 
copyrighted. In most cases (particularly in those of FSF and the GNU
 
Project), this was done due to very careful planning.
 

	
 
Software released into the public domain does grant freedom to those users
 
who receive the standard versions on which the original author disclaimed
 
copyright. However, since the work is not copyrighted, any nontrivial
 
modification made to the work is fully copyrightable.
 

	
 
Free Software released into the public domain initially is Free, and
 
perhaps some who modify the software choose to place their work into the
 
public domain as well. However, over time, some entities will choose to
 
proprietarize their modified versions. The public domain body of software
 
feeds the proprietary software. The public commons disappears, because
 
fewer and fewer entities have an incentive to contribute back to the
 
commons. They know that any of their competitors can proprietarize their
 
enhancements. Over time, almost no interesting work is left in the public
 
domain, because nearly all new work is done by proprietarization.
 

	
 
A legal mechanism is needed to redress this problem. FSF was in fact
 
originally created primarily as a legal entity to defend software freedom,
 
and that work of defending software freedom is a substantial part of
 
its work today. Specifically because of this ``embrace, proprietarize and
 
extend'' cycle, FSF made a conscious choice to copyright its Free Software,
 
and then license it under ``copyleft'' terms. Many, including the
 
developers of the kernel named Linux, have chosen to follow this paradigm.
 

	
 
Copyleft is a legal strategy to defend, uphold and propagate software
 
freedom. The basic technique of copyleft is as follows: copyright the
 
software, license it under terms that give all the software freedoms, but
 
use the copyright law controls to ensure that all who receive a copy of
 
the software have equal rights and freedom. In essence, copyleft grants
 
freedom, but forbids others to forbid that freedom to anyone else along
 
the distribution and modification chains.
 

	
 
Copyleft is a general concept. Much like ideas for what a computer might
 
do must be \emph{implemented} by a program that actually does the job, so
 
too must copyleft be implemented in some concrete legal structure.
 
``Share and share alike'' is a phrase that is used often enough to explain the
 
concept behind copyleft, but to actually make it work in the real world, a
 
true implementation in legal text must exist. The GPL is the primary
 
implementation of copyleft in copyright licensing language.
 

	
 
\subsection{Software and Non-Copyright Legal Regimes}
 
\label{software-and-non-copyright}
 

	
 
The use, modification and distribution of software, like many endeavors,
 
simultaneously interacts with multiple different legal regimes.  As was noted
 
early via footnotes, copyright is merely the \textit{most common way} to
 
restrict users' rights to copy, share, modify and/or redistribute software.
 
However, proprietary software licenses typically use every mechanism
 
available to subjugate users.  For example:
 

	
 
\begin{itemize}
 

	
 
\item Unfortunately, despite much effort by many in the software freedom
 
  community to end patents that read on software (i.e., patents on
 
  computational ideas), they still ultimately exist.  As such, a software
 
  program might otherwise be seemly unrestricted, but a patent might read on
 
  the software and ruin everything for its users.\footnote{See
 
  \S\S~\ref{gpl-implied-patent-grant},~\ref{GPLs7},~\ref{GPLv3s11} for more
 
  discussion on how the patent system interacts with copyleft, and read
 
  Richard M.~Stallman's essay,
 
  \href{http://www.wired.com/opinion/2012/11/richard-stallman-software-patents/}{\textit{Let’s
 
      Limit the Effect of Software Patents, Since We Can’t Eliminate Them}}
 
  for more information on the problems these patents present to society.}
 

	
 
\item Digital Restrictions Management (usually called \defn{DRM}) is often
 
  used to impose technological restrictions on users' ability to exercise
 
  software freedom that they might otherwise be granted\footnote{See
 
    \S~\ref{GPLv3s3} for more information on how GPL deals with this issue.}.
 
  The simplest (and perhaps oldest) form of DRM, of course, is separating
 
  software source code (read by humans), from their compiled binaries (read
 
  only by computers).  Furthermore,
 
  \href{http://www.law.cornell.edu/uscode/text/17/1201}{17 USC 1201} often
 
  prohibits users legally from circumventing some of these DRM systems.
 

	
 
\item Most EULAs also include a contractual agreement that bind users further
 
  by forcing them to agree to a contractual, prohibitive software license
 
  before ever even using the software.
 

	
 
\end{itemize}
 

	
 
\subsection{Non-USA Copyright Regimes}
 
\label{non-usa-copyright}
 

	
 
Generally speaking, copyright law operates similarly enough in countries that
 
have signed the Berne Convention on Copyright, and software freedom licenses
 
have generally taken advantage of this international standardization of
 
copyright law.  However, copyright law does differ from country to country,
 
and commonly, software freedom licenses like GPL must be considered under the
 
copyright law in the jurisdiction where any licensing dispute occurs.
 

	
 
Those who are most familiar with the USA's system of copyright often are
 
surprised to learn that there are certain copyright controls that cannot be
 
waived nor disclaimed.
 

	
 
FIXME: moral rights.
 

	
 
\section{A Community of Equality}
 

	
 
The GPL uses copyright law to defend freedom and equally ensure users'
 
rights. This ultimately creates an community of equality for both
 
business and noncommercial users.
 

	
 
\subsection{The Noncommercial Community}
 

	
 
A GPL'd code base becomes a center of a vibrant development and user
 
community. Traditionally, volunteers, operating noncommercially out of
 
keen interest or ``scratch an itch'' motivations, produce initial versions
 
of a GPL'd system. Because of the efficient distribution channels of the
 
Internet, any useful GPL'd system is adopted quickly by noncommercial
 
users.
 

	
 
Fundamentally, the early release and quick distribution of the software
 
gives birth to a thriving noncommercial community. Users and developers
 
begin sharing bug reports and bug fixes across a shared intellectual
 
commons. Users can trust the developers, because they know that if the
 
developers fail to address their needs or abandon the project, the GPL
 
ensures that someone else has the right to pick up development.
 
Developers know that the users cannot redistribute their software without
 
passing along the rights granted by GPL, so they are assured that every
 
one of their users is treated equally.
 

	
 
Because of the symmetry and fairness inherent in GPL'd distribution,
 
nearly every GPL'd package in existence has a vibrant noncommercial user
 
and developer base.
 

	
 
\subsection{The Commercial Community}
 

	
 
By the same token, nearly all established GPL'd software systems have a
 
vibrant commercial community. Nearly every GPL'd system that has gained
 
wide adoption from noncommercial users and developers eventually begins
 
to fuel a commercial system around that software.
 

	
 
For example, consider the Samba file server system that allows Unix-like
 
systems (including GNU/Linux) to serve files to Microsoft Windows systems.
 
Two graduate students originally developed Samba in their spare time and
 
it was deployed noncommercially in academic environments. However, very
 
soon for-profit companies discovered that the software could work for them
 
as well, and their system administrators began to use it in place of
 
Microsoft Windows NT file-servers. This served to lower the cost of
 
running such servers by orders of magnitude. There was suddenly room in
 
Windows file-server budgets to hire contractors to improve Samba. Some of
 
the first people hired to do such work were those same two graduate
 
students who originally developed the software.
 

	
 
The noncommercial users, however, were not concerned when these two
 
fellows began collecting paychecks off of their GPL'd work. They knew
 
that because of the nature of the GPL that improvements that were
 
distributed in the commercial environment could easily be folded back into
 
the standard version. Companies are not permitted to proprietarize
 
Samba, so the noncommercial users, and even other commercial users are
 
safe in the knowledge that the software freedom ensured by GPL will remain
 
protected.
 

	
 
Commercial developers also work in concert with noncommercial
 
developers. Those two now-long-since graduated students continue to
 
contribute to Samba altruistically, but also get paid work doing it.
 
Priorities change when a client is in the mix, but all the code is
 
contributed back to the standard version. Meanwhile, many other
 
individuals have gotten involved noncommercially as developers,
 
because they want to ``cut their teeth on Free Software,'' or because
 
the problems interest them. When they get good at it, perhaps they
 
will move on to another project, or perhaps they will become
 
commercial developers of the software themselves.
 

	
 
No party is a threat to another in the GPL software scenario because
 
everyone is on equal ground. The GPL protects rights of the commercial
 
and noncommercial contributors and users equally. The GPL creates trust,
 
because it is a level playing field for all.
 

	
 
\subsection{Law Analogy}
 

	
 
In his introduction to Stallman's \emph{Free Software, Free Society},
 
Lawrence Lessig draws an interesting analogy between the law and Free
 
Software. He argues that the laws of a free society must be protected
 
much like the GPL protects software. So that I might do true justice to
 
Lessig's argument, I quote it verbatim:
 

	
 
\begin{quotation}
 

	
 
A ``free society'' is regulated by law. But there are limits that any free
 
society places on this regulation through law: No society that kept its
 
laws secret could ever be called free. No government that hid its
 
regulations from the regulated could ever stand in our tradition. Law
 
controls. But it does so justly only when visibly. And law is visible
 
only when its terms are knowable and controllable by those it regulates,
 
or by the agents of those it regulates (lawyers, legislatures).
 

	
 
This condition on law extends beyond the work of a legislature. Think
 
about the practice of law in American courts. Lawyers are hired by their
 
clients to advance their clients' interests. Sometimes that interest is
 
advanced through litigation. In the course of this litigation, lawyers
 
write briefs. These briefs in turn affect opinions written by judges.
 
These opinions decide who wins a particular case, or whether a certain law
 
can stand consistently with a constitution.
 

	
 
All the material in this process is free in the sense that Stallman means.
 
Legal briefs are open and free for others to use. The arguments are
 
transparent (which is different from saying they are good), and the
 
reasoning can be taken without the permission of the original lawyers.
 
The opinions they produce can be quoted in later briefs. They can be
 
copied and integrated into another brief or opinion. The ``source code''
 
for American law is by design, and by principle, open and free for anyone
 
to take. And take lawyers do---for it is a measure of a great brief that
 
it achieves its creativity through the reuse of what happened before. The
 
source is free; creativity and an economy is built upon it.
 

	
 
This economy of free code (and here I mean free legal code) doesn't starve
 
lawyers. Law firms have enough incentive to produce great briefs even
 
though the stuff they build can be taken and copied by anyone else. The
 
lawyer is a craftsman; his or her product is public. Yet the crafting is
 
not charity. Lawyers get paid; the public doesn't demand such work
 
without price. Instead this economy flourishes, with later work added to
 
the earlier.
 

	
 
We could imagine a legal practice that was different---briefs and
 
arguments that were kept secret; rulings that announced a result but not
 
the reasoning. Laws that were kept by the police but published to no one
 
else. Regulation that operated without explaining its rule.
 

	
 
We could imagine this society, but we could not imagine calling it
 
``free.''  Whether or not the incentives in such a society would be better
 
or more efficiently allocated, such a society could not be known as free.
 
The ideals of freedom, of life within a free society, demand more than
 
efficient application. Instead, openness and transparency are the
 
constraints within which a legal system gets built, not options to be
 
added if convenient to the leaders. Life governed by software code should
 
be no less.
 

	
 
Code writing is not litigation. It is better, richer, more
 
productive. But the law is an obvious instance of how creativity and
 
incentives do not depend upon perfect control over the products
 
created. Like jazz, or novels, or architecture, the law gets built
 
upon the work that went before. This adding and changing is what
 
creativity always is. And a free society is one that assures that its
 
most important resources remain free in just this sense.\footnote{This
 
quotation is Copyright \copyright{} 2002, Lawrence Lessig. It is
 
licensed under the terms of
 
\texttt{http://creativecommons.org/licenses/by/1.0/}{the ``Attribution
 
License'' version 1.0} or any later version as published by Creative
 
Commons.}
 
\end{quotation}
 

	
 
In essence, lawyers are paid to service the shared commons of legal
 
infrastructure. Few citizens defend themselves in court or write their
 
own briefs (even though they are legally permitted to do so) because
 
everyone would prefer to have an expert do that job.
 

	
 
The Free Software economy is a market ripe for experts. It
 
functions similarly to other well established professional fields like the
 
law. The GPL, in turn, serves as the legal scaffolding that permits the
 
creation of this vibrant commercial and noncommercial Free Software
 
economy.
 

	
 
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
\chapter{A Tale of Two Copyleft Licenses}
 

	
 
\section{Historical Motivations for the General Public License}
 

	
 
\section{Proto-GPLs And Their Impact}
 

	
 
\section{The GNU General Public License, Version 1}
 

	
 
\section{The GNU General Public License, Version 2}
 

	
 
\section{The GNU General Public License, Version 3}
 

	
 
\section{The Innovation of Optional ``Or Any Later'' Version}
 

	
 
\section{Complexities of Two Simultaneously Popular Copylefts}
 

	
 
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0 comments (0 inline, 0 general)