

Is Copyleft Really Right for Open Source? - mbleigh
http://intridea.com/2010/12/7/is-copyleft-really-right-for-open-source

======
jmillikin
> _There's a problem in the software development world, a practice that breaks
> down the free and open exchange of information. [...] I'm talking, of
> course, about copyleft licenses such as the GPL._

It takes some spectacular mental gymnastics to believe that requiring
available source code hinders "open exchange of information".

> _The GNU General Public License (GPL) is the most well-known example of a
> so-called "copyleft" license and it requires, among other things, that any
> project which utilizes GPL code that is released must, itself, be released
> under the GPL._

No, the GPL requires that anything dependent on GPL code must be under a
__compatible __license. You're free to release code under the BSD or X11 or
zlib or apache (etc...) license. The author is just repeating the same tired
old propaganda that's been shoveled out by proprietary software vendors for
years.

> _I've never built an open-source project so large or complex that someone
> else, given a little time and elbow grease, couldn't work out a similar
> solution in a reasonable amount of time._

Most interesting opinions come from experience. If the author has never built
anything significant, perhaps they ought to stop and consider where their
opinions come from.

> _So how do I get people to contribute? It isn't going to be by using the
> GPL...people will say "screw it" and build their own version of my library
> that they can use without worrying about overly cumbersome licenses. [...]
> No, I get people to contribute by giving it away as completely as possible
> (I use the MIT license, but also like the WTFPL) and asking them to
> contribute interesting stuff back._

This assumes that the same people contributing code would refuse to do so if
the project was GPL-licensed, which to me seems extremely unlikely. I have
released software under several licenses (including GPLv2, GPLv3, X11, and
BSD-3); every single person who has begged me to change from the GPL to a
proprietary-friendly license has __never __contributed a patch. Not a single
bug fix, nor test case, nor even benchmark. Every contribution I've received,
large or small, has been from people who are themselves working on open-source
software.

> _Copyleft licenses are simply not necessary for the vibrancy of the open-
> source community when it comes to simple libraries and, in fact, are more
> likely to hinder the community by encouraging the creation of multiple
> libraries to accomplish the same thing simply to avoid the requirements of a
> license like the GPL._

Does any HN reader have a case where a member of the "open-source community"
was harmed, hindered, or even momentarily annoyed by having to use GPL'd
software? Because I can't think of any case, nor any reason why one might
occur.

> _The Affero GPL is a variant of the GPL specifically designed to address
> software that runs on network servers (such as web applications). It
> requires that any server running the software (or a modified version
> thereof) must make available the full source code of any modifications._

This is also wrong. The AGPL is, like the GPL, a copyright license. It only
applies if the remote application (or derived data) is itself being sent to a
client. For example, if I let an AGPL'd httpd serve my files, I am under no
obligation to do anything at all regarding its source code.

~~~
mbleigh
> Most interesting opinions come from experience. If the author has never
> built anything significant, perhaps they ought to stop and consider where
> their opinions come from.

The problem is that 90% of open-source libraries ARE small-to-medium size
projects like the ones I've built. I didn't say I'm new to open source (I've
released numerous successful projects) or even argue that for many big complex
projects the GPL or other copyleft licenses are the wrong way to go. I'm
simply stating that for projects like the ones I build the GPL is more likely
to reduce user adoption than help build a contributing community.

> This assumes that the same people contributing code would refuse to do so if
> the project was GPL-licensed

Not at all. I can't think of a reason that someone would refuse to contribute
to an open source project because it was under the GPL. However, my argument
is that many people will never even start using a library to begin with if
they don't want to put up with the licensing headaches entailed with GPL.

> This is also wrong. The AGPL is, like the GPL, a copyright license. It only
> applies if the remote application (or derived data) is itself being sent to
> a client.

I'm not extremely well versed in the AGPL, I'll concede. Are you saying that
someone could build a fork of Diaspora (say Facebook forked it and rewrote
their entire site on top of it), made it available to the public without
releasing the source and it would be compliant with the AGPL? If so, I retract
my statements about the AGPL, but I'm under a different impression.

~~~
jmillikin
> _The problem is that 90% of open-source libraries ARE small-to-medium size
> projects like the ones I've built._

What's your definition of "small" and "medium"? I'd say a small project takes
about a week to go from nothing to a working prototype, and medium might take
a month or two.

I might be misreading, but "I completed the first version in a day or less"
makes it sound like the releases are basically just a few small utilities.

> _Are you saying that someone could build a fork of Diaspora (say Facebook
> forked it and rewrote their entire site on top of it), made it available to
> the public without releasing the source and it would be compliant with the
> AGPL?_

I don't know anything about Diaspora, so I can't completely answer this
question. However, assuming their protocol library is separate from the user
interface, Facebook could indeed build support for Diaspora protocol into
their site, using the AGPL'd Diaspora libraries, and not have to release
source code.

The AGPL is IMO poorly considered. The authors _wanted_ it to behave as you
describe, eg, as a sort of super-EULA that covers how the code can be run.
However, since it's a copyright license, it doesn't have any action mechanism.
If I modify an AGPL'd server, then run it on a publicly accessible host, I'm
not doing anything that requires copyright permission and thus am not subject
to the code's copyright license.

Note that some cases (such as JavaScript-based applications) will require
copyright permission for me to host, and thus, be covered by the AGPL. However
-- and this is a funny part -- they'd also be covered by the GPL! In other
words, anything the AGPL can do, the GPL can also, and the GPL doesn't have
aspirations of EULA-ship.

------
gyehuda
Dear jmillikin Let me make a helpful suggestion that is purely intended to be
for your benefit (and if you work for a company, it would significantly help
them too): contact an attorney who is familiar with Open Source legalities to
get clarity on the obligations associated with distributing derivative works
that use GPL. I just checked to make sure that you don't work in my company,
'cuz if you did I'd be very motivated to meet with you ASAP and help you
understand some of the issues that GPL poses.

I don't mean to be condescending in my tone. Seriously. But Open Source
licensing confuses many people -- and many form their opinions based on blogs
(which are probably not very admissible in court), and not on the license
text. Many people want and wish that the licenses work in the way they think
it ought to. But that's not the way the legal system works.

Much like lawyers can't grok why a misplaced semicolon can cause a computer
program to crash, developers don't seem to understand how contract language is
interpreted by the legal system. In both cases though, the "interpreter" is
very literal and does not heed to the authors intent as much as we might hope.

