Aug 6, 2010

I need a new favorite OSI license or Why I don't like the GPL anymore

I don't like the GPL anymore after the WordPress Theme fiasco. I don't like the idea that a theme, plugin, addon, extension, whatever is 'derived' from the thing it's adding on to and thus must also be GPL.

If I build a deck onto the back of my house is that deck derived from my house? No! if I take the blueprints of my house and build another one that's 80% like it is that house derived from my house? yes. If I offer a painting service to paint houses and I offer people preexisting color schemes are those schemes derived from their house? should the manufacturer/contractor (whatever) be able to tell me I can't do that, or that I have to share my colorschemes (and how I mix my paint) with him? How STUPID, IMO. But that's what the GPL does, you can't help other people addon to their house without sharing it with the house builder.

Now I'm all for sharing source code back, and I think if you modify OSS you should have to give your source back. But if you don't modify it and you are just using the the public API, why should you have to give all of your code up for that? or more importantly why shouldn't be you be able to choose your own OSI approved license? I mean what if I have a GPL library, a Artistic Library and a BSD library I want to use to build an application, which has an API, must be GPL and so must everyone's apps that add to it. No you may not make a DWTFYWWI plugin, no you may not make a BSD plugin, no you may not release that code into the public domain, because the GPL says so, and I used a library that made me use it.

Well ya know what? I'm not going to use the GPL from now on. I need to find a new license that fits my needs (and will not be toxic to others).

Desire #1. He who modifies my code, and distributes it, must share his code (with me).
Desire #2. He who wants to use my API may do so (so long as he doesn't modify it)
Desire #3. He who wants to copy my code must share it, and any changes.
Desire #4. Some patent protection would be nice
Desire #5. letting users outside your organization utilize it counts as distribution (a'la AGPL)

I think the LGPL fits this bill, except for #5.

seriously why is it that you could optimize the internals of wordpress and make your own hosted blogging platform and you wouldn't have to share the changes at all... but with a theme you do...

Are there any other licenses I should consider or considerations I should make?

(honestly you don't have to agree with me about not liking the GPL here, this is just me)


  1. Maybe you should go read what a wordpress theme is. It is not just CSS and some images. It is code. It calls wordpress functions directly, it includes wordpress libraries.

    The whole point is that you don't own wordpress, the authors do. And they are saying you're free to use it if you comply with the GPL. If you don't want to the comply with the GPL don't distribute it and don't distribute modifications and dervivative works.

    It's that simple, what isn't yours is not yours but here's a method to use it.

  2. I personally favor the Apache 2 license. It's very clear and very readable and it's one of the only licenses that is explicit that "contributions" in whatever form fall under the same license, which is great for patches sent via email, a bugtracker or whatever.

  3. You seem to misunderstand a few things, and I will try to clear them up:

    1. About your desires, #s 2 and 3 are counter to all open-source licenses; #2 says users can't modify the code in some ways, and #3 says they must share any code they get from you or derive from that, even if they are just using it internally. If you want to make those requirements, that is your right, but your code won't be open-source.

    2. The WordPress fiasco is not intrinsic to the GPL, but rather is entirely about the definition of a derived work with respect to WordPress. As a counter-example, look at Perl 5; when people distribute Perl 5 under the terms of the GPL along with their Perl 5 code that runs under it, said Perl 5 code is not a derived work of the Perl interpreter, and can use any license the user wants. Likewise for users of your GPL'd works.

    So, don't blame the GPL for what isn't its fault. And maybe it would help if you clarified your desires list, since as I said some of those, especially #2, are anti-open-source.

  4. sounds like CDDL.


No trolling, profanity, or flame wars :: My Blog, my rules! No crying or arguing about them.