
Comparison of open-source licenses - e1ven
http://e1ven.com/2012/03/21/comparison-of-open-source-licenses/
======
e1ven
After reading through an absurd number of licenses, this is my understanding
of the way various things combine.

I'm sure the HN community has people smarter than I, who will immediately see
some mistake I may have made. Thank you! In that event, I shall issue a
correction post-haste.

~~~
0x09
I'm not clear on the criteria you used for the web-apps column. The LGPL and
GPL are listed as applying differently, but to my understanding both are
equally agnostic to network use compared with something like the AGPL.

~~~
e1ven
Thanks. I think I must have flipped something when creating the table. I was
copying each row above it, and editing. I must have forgotten to flip that.

Fixed.Thanks.

------
cobrausn
No WTFPL? For shame. <http://sam.zoy.org/wtfpl/>

~~~
pjscott
The WTFPL doesn't really need explaining. The terms of the license ("You just
DO WHAT THE FUCK YOU WANT TO") are shorter than most licenses' summaries.

------
jmillikin
"""Licenses that use Copyleft are sometimes called “Viral” licenses; If you
include any code that uses that license in your code, then your entire program
has to be released under the same license."""

This claim is often made (especially by corporate interests who dislike
reciprocal licenses), but it is not true.

The only major reciprocal licenses, the GPL and LGPL, do not require that the
entire codebase be under the GPL/LGPL. It only has to be under a _compatible_
license.

For example, say I had a 10,000-line BSD-licensed application, and I copied a
few hundred lines of some GPL'd code into it, then:

* The original code is still BSD licensed.

* The copied code is still GPL'd.

* The source tarball must include _both_ license documents.

* The compiled binary must be distributed in a way complying with _both_ licenses.

In particular, someone may download the BSD+GPL source, remove the GPL'd part,
compile what's left, and distribute the resulting binaries without source. The
licensing situation of the BSD'd code has not been changed in any way!

\-----------

The "Weak" and "Strong" copylefts you describe don't make much sense, either.
Both GPL and LGPL code can have proprietary products use them. The primary
difference is that proprietary binaries may directly include LGPL'd code, but
GPL'd code can't be _included_ in proprietary applications.

For example, consider a proprietary application that dynamically links against
"readline". Depending on which libraries are installed on the end user's
machine, at runtime one of these will happen:

* The application tries to load libreadline.so, fails, and continues to run (perhaps disabling some advanced functionality).

* The application loads libreadline.so, which is a compiled library for readline (a GPL-licensed library).

* The application loads libreadline.so, which is a compiled library for editline (a BSD-licensed replacement for readline).

Obviously, the proprietary application is "using" readline, but as it's not
distributed with any readline code, the authors of the application do not need
any copyright permission from the readline authors.

An interesting variant if the original application binary was compiled on a
system that had editline installed. From proprietary application developer's
point of view, they used only BSD-licensed software, and didn't even
distribute third-party code, so why should the GPL matter at all?

The major "grey area" here is GPL'd code, as a shared library, bundled with a
proprietary application as a fallback in case the end user's system doesn't
have it installed. While I think that this would be OK in most situations
(assuming the library's API is intact), it's murky enough that the application
author should check with a copyright lawyer first.

\-----------

Regarding "web application" licenses, note that regardless of what they claim,
they do not (and cannot) apply _unless_ you're distributing the software.
Remember, they're still just copyright licenses. If you're not doing anything
that requires copyright permission, you do not have to obey them.

For example, if someone writes an AGPL'd application that generates an image
of the Mandelbrot set, I can install that application on my server and have it
send images to users _without distributing the source_.

The only area where AGPL-style licenses are relevant is when running the
application requires distributing part of it to users. Think of html page
templates, or Javascript.

~~~
bunderbunder
_The only major reciprocal licenses, the GPL and LGPL, do not require that the
entire codebase be under the GPL/LGPL. It only has to be under a compatible
license._

From many software vendors' perspective, this is a difference without much
distinction. The salient point to them is, if GPL code sneaks into their
codebase then they might be forced to switch to a permissive software license,
and that might be very disruptive to their business.

And it does manage to have a chilling effect in some industries. In the one I
work in, for example, there is a prevailing culture of outright fear of open
source software, including of supposedly "business-compatible" code. The worry
is that it's hard to trace the provenance of all code, which makes it
difficult to dismiss the possibility that, e.g., ostensibly MIT-licensed code
is actually GPL-licensed. The fear is perhaps far too great, but from the
decisionmakers' perspective this is a situation where their livelihood is
potentially at stake, and many of them would rather pay to develop 100%
proprietary software than risk getting infected with open-source cooties.

~~~
__alexs
When you say "chilling effect" are you suggesting that entire industries are
being held back by the existence of the GPL?

This seems similar to calling Android "the greatest legal destruction of
wealth in history." ([http://gizmodo.com/5785983/android-may-be-the-greatest-
legal...](http://gizmodo.com/5785983/android-may-be-the-greatest-legal-
destruction-of-wealth-in-history))

~~~
bunderbunder
To say that entire industries are being held back by _their fears about_ the
GPL would be closer to what I was getting at.

And not in a way that has anything to do with what Mr. Gurley was claiming.
What I'm more worried about is the opportunity to fund innovation that is lost
when companies choose to sink resources into reinventing wheels rather than
picking open source projects off the shelf.

~~~
mkup
Well, reinventing wheels once more under BSD license seems to solve this
problem (e.g. clang, FreeBSD, PostgreSQL...)

There was a first wave of free software, now comes the second one; "even more
free software".

------
sateesh
Also there is a wiki page which compares various open source licenses:
[http://en.wikipedia.org/wiki/Comparison_of_free_and_open_sou...](http://en.wikipedia.org/wiki/Comparison_of_free_and_open_source_software_licenses)

------
draegtun
Complete list of OSI approved licenses:
<http://www.opensource.org/licenses/alphabetical>

------
jasonlotito
An error in your table lists AGPL 3 as not applying to the web.

------
skrebbel
i miss the lovely and extremely liberal zlib/libpng license.

in short "here's the code, don't sue us".

~~~
e1ven
Wouldn't the MIT/X11 license be a good choice for this situation? It's fairly
liberally used, permissive, and has a similar anti-endorsement clause.

~~~
skrebbel
Main difference is that the zlib license does not require you to ship the
copyright from non-source distributions. It's essentially "I don't need
credit, as long as you don't say you made it yourself".

