Getting Pretty Lonely

July 2nd, 2009

This very post is delivered to your browser or news reader by the famous and fabulous WordPress blogging system. In my work as the developer of MarsEdit, I am exposed to countless blogging options, each with its own strengths and weaknesses. And yet, I stick with WordPress because it strikes a balance of power and ease of use which feels comfortable to me. Not to mention that Joseph Scott and others are tirelessly working to improve its API.

WordPress is licensed under the terms of the Gnu Public License (GPL) which, in a nutshell, stipulates that you are free to use the software however you like, but if you make changes and distribute those changes, then you must share those changes under the same terms. This simple, radical restriction means that you are prohibited from taking a GPL project and incorporating it with a closed-source project.

Violating The GPL

Violating the GPL is easy. All you have to do is write some code, intermingle it with some GPL code, distribute a changed copy of the original, and refuse to share your contributions. Bam! You’re toast. Assuming the original authors discover your violation and decide to pursue a resolution.

Once a violation occurs, it might be settled privately, or could escalate to legal court procedures. But the most obvious form of resolution is for the author of the changes to release their code to the public under the terms of the GPL.

Depending on how much code you “mixed” with the GPL code, this could mean only a small portion, or it could mean the entire source code of your project. This so-called “viral nature” of GPL is what scares the bejeezus out of companies, large and small, who fear the consequences of having to give up their own intellectual property to the public.

The terms of the GPL sound pretty simple at first read, but due in part to the epic consequences of a violation, there has been a great deal of debate and uncertainty about what legally constitutes a violation. Most of the debate seems to boil down to two questions:

  1. What counts as a change to the original product?
  2. What counts as distribution of those changes?

If you can legally justify that your additions to a GPL project either don’t change or derive from the original product, or haven’t technically been distributed, then you are not subject to the restrictive terms of the license.

Take GIMP, the popular GNU-licensed image editing application. The application supports plugins, analogous to the types of plugins you might find for the commercial, closed-source application Photoshop. A savvy developer may argue that a plugin doesn’t meet the criteria of changing the original application, because the original application still runs in its unaltered condition whether the plugin is there or not.

But promoters of the GPL take the position that plugins, by nature of being loaded into the same code space as other GPL code, do constitute a modification of the original, and are therefore subject to the terms of the GPL. As far as I know this is not a question that has been well-tested in courts.

Let me take a moment to make this abundantly clear: I respect the rights of authors to license their software under whatever terms they choose, including the GPL. In my opinion, all the legal mumbo jumbo ceases to matter once the original author’s intentions are made clear. So if the author of GPL-licensed code clarifies to me that it cannot be run on Sundays, then their GPL means it cannot be run on Sundays. But this is one of the problems with the GPL: its terms are not often understood, even by the authors of GPL-licensed code.

WordPress Themes & Plugins

WordPress supports two explicit forms of extension, each of which may affect the appearance and functionality of the product. Themes tend to work as a “skin” for the appearance of a blog, while plugins tend to introduce completely new features. Since plugins in WordPress are analogous to GIMP or Photoshop plugins, it would stand to reason that they would also be covered by the terms of the GPL. But what about themes?

Themes have been controversial in the WordPress community, as a few commercial business models have sprung up to take advantage of bloggers’ desires for high quality themes at an affordable price. One approach is to distribute “free” themes that contains commercial ads. So you might stumble upon the perfect theme for your blog, only to learn that the glaring “Brought to you by Hostess Cupcakes” line near the bottom of your page cannot be removed.

But the terms of the GPL, if themes are covered, would require that end users be granted the legal right to modify and redistribute their own copy of the theme. Zap the sponsorship, reupload to your site, and you’ve got a free, high quality theme with no ugly ads.

Today, Matt Mullenweg of the WordPress project announced his lawyer-supported opinion that themes are partly covered by the GPL:

I reached out to the Software Freedom Law Center, the world’s preeminent experts on the GPL, which spent time with WordPress’s code, community, and provided us with an official legal opinion. One sentence summary: PHP in WordPress themes must be GPL, artwork and CSS may be but are not required.

If you’re starting with the understanding that WordPress itself is GPL, and WordPress plugins are GPL, then it’s not so much extra hay on the camel’s back, to also clarify that its themes are to some extent GPL. But it got me thinking again about my own blog, and about the restrictions the GPL imposes on the kinds of things I can do with the software that runs it.

GPL Stifles Participation

Now for the most controversial point of this article, where I suggest that the GPL does more to harm collaborative development than it does to help it.

For the purposes of this argument, let me reduce all the source code in the world down to three rough categories. I recognize I have omitted some classes of license here, but for the sake of argument, most projects fall into these camps:

  1. GPL code. Changes may be distributed only in other GPL products.
  2. Liberal-licensed code. (MIT/BSD/Apache/etc). Changes may be distributed anywhere. Appropriate origin-attribution may be required.
  3. Closed-source code. May be distributed only by the copyright owner and other explicit licensees.

Now, there are a few people in the world who, for political or philosophical reasons, will only participate in a GPL project. And for comparable yet opposite reasons, there are some who will only participate in commercial, closed-source projects. But I propose that the vast majority of developers will participate in any project that is advantageous to them.

So let’s imagine a representative, run-of-the-mill developer who is working on a project that falls into each of these three camps. If this developer is not radically committed to their own project’s license, they will naturally look to outside resources in order to bolster the success of their own work.

As the developer evaluates communities to participate in, they must evaluate the legal impact such participation will have on their own project. The closed source communities are, by definition uninviting to outsiders. GPL communities are open and embracing of other GPL developers, but generally off-putting to liberal-license and closed-license developers. Only the liberal-license communities are attractive to developers from all 3 camps.

I know what some of the GPL-enthusiasts are thinking now: “leeches don’t count as community.” Many GPL developers take comfort in the fact that their hard work can’t be quietly taken and incorporated into a commercial product, without any payback of time or money to the original project. But you’re piloting an open source project, and the first step of building a community is to get people in the door. Liberal licenses? Whoo-eee do they ever get people in the door.

If you operate from the presumption that great developers love to build great projects, the first step in any successful open source project is to get as many great developers in the door as possible.

It’s Your Party

Yes, this is just me and my crazy theories. I haven’t done exhaustive research to prove that liberal-license communities thrive more than GPL communities. But the anecdotal examples are staggering. The very foundation of Mac OS X, the operating system through which I’m typing, is thanks to the liberally-licensed FreeBSD operating system.

Looking over to the right of my screen, I’m watching this sentence appear in a live web preview as I type, thanks to the WebKit project, whose liberal license makes it compatible with closed source projects such as Safari, as well as open source efforts such as Google’s Chromium project.

For years, the problem of a generic HTTP client library that runs on every major platform has been addressed by libcurl, whose liberal license has caused it to be embraced by countless companies and projects.

The popular Subversion source control system’s liberal license enabled Sofa, a commercial software business to contribute value to the community with its extremely polished, award-winning client application. Meanwhile, the newly popular distributed source control systems presents three major choices: git, Mercurial, and Bazaar. All are restricted by the GPL-license, and therefore none is likely to inspire development of a Versions-caliber client.

I’ve touched the tip of the iceberg, and yes I’ve neglected to mention some GPL success stories such as Linux, MySQL, and gcc. These communities have thrived to some extent because the passions of the GPL community are strong, but we can’t know whether their success is in spite of the restrictions their license places on participation by the broader developer community.

Speaking of GPL succeses, WordPress is itself an example of monumental success. All of its developers have something to be immensely proud of. But whenever I am reminded that WordPress is GPL, my passion for it takes a bit of a dive. I’m more comfortable with the true freedom of liberally-licensed products. If a liberally-licensed blog system of equal quality, ease of use, and popularity should appear, my loyalties to WordPress would not last long.

It’s your party, and you’re entitled to write the guest list. But take a look around the room: not as many folks as you’d hoped for? Liberally-licensed projects are booming. Speaking for myself, a developer who has been to all the parties, I’m much more likely to pass through the door that doesn’t read “GPL Only.”

128 Responses to “Getting Pretty Lonely”

  1. Rob Says:

    Well put, Daniel. As a commercial software developer who has contributed to multiple open source projects, I agree very strongly with most (if not all) of your points. GPL is very far from “freedom.”

  2. LKM Says:

    I think most people who choose the GPL know what that choice entails. It’s their choice, just like it’s my choice to keep most of my code closed. I don’t mind their choice, and I’ll simply avoid using their code. I’m not sure it warrants much discussion since people who go with the GPL are often motivated by ethical arguments, and you can’t really argue with that.

    Having said that, I find the Plug-In problem particularly interesting. Gnu.org says: “If the program dynamically links plug-ins, and they make function calls to each other and share data structures, we believe they form a single program, which must be treated as an extension of both the main program and the plug-ins. This means the plug-ins must be released under the GPL or a GPL-compatible free software license, and that the terms of the GPL must be followed when those plug-ins are distributed.”

    However, what happens if, say, a commercial application has a plug-in architecture like the one described above, and that commercial app is cloned by a GPL-covered project. The GPL project would try to replicate the commercial app’s Plug-In API in order to allow the plug-ins for the commercial app to run inside the GPL’d app. Would that mean that the mere existence of this clone app would make closed-source plug-ins for the commercial app illegal?

    Conversely, if a commercial project wanted to make use of WordPress themes and offered a compatible plug-in API (without violating the GPL, of course, clean-room reverse engineered and everything), what would that mean?

  3. KL Says:

    Daniel, I agree with your observations — though I also have nothing more than anecdotal data to back me up.

    I suppose the response from the GPL community would be that “freedom is not free.” To ensure that the efforts of developers who wish to collaborate aren’t co-opted by the copyright-wielding leeches and to preserve the freedom of that code, the GPL does exact a cost, a cost not everyone wants to pay.

    I think GPL projects also benefit liberal-licensed projects by making liberal licenses like BDS/Apache seem less radical and more palatable to copyright absolutists. It’s a type of triangulation, I suppose.

  4. Jeff Medcalf Says:

    I just wish the GPL proponents would stop using the “free as in speech” vs “free as in beer” analogy as if they were supporting free speech. Instead, they are supporting free beer. Just because they choose different restrictions than traditional closed-source licenses, that does not mean that their software is not restricted.

  5. Jet Says:

    Arguments in favor or against closed/open software aside, it seems to me that the primary reason behind the viral clause in GPL software is to prevent “embrace, extend, extinguish”. Faced with something MITed, a company (say, MS) could embrace an open standard for some new technology (say, an IM system), and fail to disclose new additions and enhancements they made to it. Faced with something GPLed, they’re forced to disclose them (inasmuch as our legal system can force).

    I don’t know which is better.

    I do know that the GPL stuff was deliberately created in angry reaction to the collossal cockup that was commercial unixes in the 80s. Windows won, because all of those commercial clones of unix were fundamentally incompatible with each other. They’d all enhance different things to make themselves marketable over competitors, but would end up making themselves incompatible. This would not have been a problem if these enhancements were made open, because said incompatibilities could have been fixed if they’d been well-documented and open. They were scared of opening these proprietary enhancements for arguably valid commercial reasons …. except now -they’re all dead-. All of ‘em. For further reading, consult the “Unix Hater’s Handbook” – most of the things this book complains about are non-issues in Linux, precisely in reaction to this. These ‘standards that weren’t actually standardly implemented’ killed all the old commercial unix companies. The book can be had in full, here: http://web.mit.edu/~simsong/www/ugh.pdf

    Does the viral nature of GPL prevent this kind of poisoned standard? Legally, yes. Practically? I don’t know.

    GPL would “force” anyone who adopted your stuff to not poison your standard by adopting it in an incompatible way. But you only have so much leeway to ‘force’ them to do anything. Courts take years to force companies to do things, and often don’t succeed (look at the travesty that has been any trial MS was involved in). An MIT license wouldn’t force them to do anything; they could poison your standard all they want. You’d have to hope that by being under the MIT license, enough additional groups would be willing to implement your code, that any errant ones could just be forced by peer pressure to not screw up their implementation.

    But that’s the trick. Ultimately, this may be more realistic. Peer, community pressure might be the only thing that’s ever worked, anyways.

    I mean, if microsoft took -anybody’s- code (GPL or not), good luck taking them to court, and good luck forcing them to do anything even if you do win the court case. The only way to make them do it right is to make them actually want to, of their own volition.

  6. Andrew Says:

    The thought experiment I’d like to pose is this:

    What if all of the GPL software was suddenly switched over to the BSD license (or MIT/Apache etc) tomorrow?

    What terrible things would come to pass/who would be disadvantaged?

  7. John Baldwin Says:

    I am of a very similar mind. I don’t feel “free” when dealing with GPL software. I feel constrained and like I’m walking on eggshells. As a programmer, I find that GPL is a little scary. I don’t even want to look at a lot of GPL code for fear a technique found its way into my own code.

    The subtleties of how the license applies, as you outline well, keep me from using GPL software when working for companies, etc., that don’t want their work to be under GPL. It’s too “dangerous.”

  8. Klaus Says:

    I don’t think that the plugin argument holds water in court. Many GPL projects use OS libraries, and any commercial software running on a GPL OS does the same.

    Do they seriously suggest that any program running under Linux must be GPLed because it’s running in the same code segment?

    Klaus

  9. Ossi Says:

    Excellent and interesting post. I recently touched on this issue in my blog post about how to choose the right open source license, but it was more from an enterprise perspective.

    The point is that more and more companies are implementing policies that limit the use of GPL due to its unclear scope (i.e., the linking issue). This also has an impact on projects who need to decide on a license that would make it easier for enterprises to use their code.

    By the way, as a copyright lawyer, I would disagree with any general statement that plug-ins to GPL-licensed programs need to be under the GPL. If you distribute the program and the plug-in together then copyleft might indeed be triggered, but I do not believe it would be triggered by a separate distribution of a plug-in (I realise others might disagree).

  10. Mic Edwards Says:

    Thank you for bringing this up.

    Over the last couple of years I’ve come to the view that the GPL is incompatible with the freedoms I hold dear.

    I just don’t understand how forcing people into a particular behaviour enhances freedom.

    I’ve gone BSD in my house … there’s lots of flavours and I can keep away from the contagion that is the GNU/FSF nightmare.

  11. LKM Says:

    About the “free” thing: You guys are missing the point a bit. The idea is not that *you* are free, the idea is that the *software* is free. The GPL’s intention is not to make you free, the intention is to give you some specific freedoms, but restrict you otherwise. Saying that “you don’t feel free” is a bit absurd since restricting what you can do is the whole point of the GPL. Of course you don’t feel free. That’s the intention.

  12. Anthony DiSante Says:

    Well said. As a small commercial software developer, I won’t touch any GPL’d code — I simply can’t afford the risk. A while ago, I wrote about how the GPL is incompatible with commercial software, and from the comments there, it’s clear that the whole GPL issue is a stumbling block for many developers.

  13. Sandra Says:

    Just a clarification (even though nothing you wrote contradicts this, I want to be clear):
    If you modify or write a WordPress php theme and use it only yourself, you don’t have to distribute the changes. It’s only as soon as you give that theme to others that you have to do that under the terms of the GPL. Since PHP can only be distributed in source form anyway, it’s hard to do it wrong.

  14. John C. Welch Says:

    Does the viral nature of GPL prevent this kind of poisoned standard? Legally, yes. Practically? I don’t know.

    Okay, time to stop talking silly. You cannot GPL a *standard*, you can ONLY GPL actual software. A standard is not software. It only describes what software should do. (spare me “must”, we all know standards are a guideline, not a law.) The entire “The GPL prevents standards poisoning” is inane, because well, it can’t. So let’s stop acting like it can.

    What the GPL does do is twist your arm, regardless of cutsie terminology, i.e. copy-LEFT. It is exactly as restrictive as any commercial “non-free” license, especially version 3.

    It’s really not even “free as in beer” because it’s like someone saying “Have a beer, and I won’t charge you for it, but if you drink it, then you have to listen to my lecture, and do the FSF dance, and wear this t-shirt.”

    At that point, it’s like “Can I just pay a grownup to use their stuff and dispense with the holystoning?”

    Seriously, some days the inaccuracy and hypocrisy used by the FSF/GPL-istas to advance their cause is astounding.

  15. ssp Says:

    Nice red sweater in the header, I think that wasn’t there when I last visited…

    I always thought the GPL was a smelly middle finger in the face of corporations, just dressed up in legalese. Like all software licenses it begs to be broken, so the legal wankers can have some fun days in court. Has it been taken there? If not, why not? Would it survive?

    I think the clever propaganda thing the GPL people did was attaching the word ‘free’ (err, sorry, ‘Free’) to their agenda to make it sound better than it is.

    But apart from that I’m with LKM: if people want their software to be GPL licensed, it’s their good right to do so. And quite likely the public benefit from that is bigger than it would be from keeping their code locked up as you can still learn from their way of solving problems.

  16. Will Schroeder Says:

    As a commercial software developer, company founder, participant in several open source projects, and teacher of an open-source course at a local college, I have addressed this issue in a variety of ways for over a decade. For example, the company has performed experiments where we’ve adopted a reciprocal license (GPL) for one set of code, while continuing to offer BSD-licensed code in other projects. (The idea being to use the reciprocal license to generate licensing revenue.) After a decade of this, our company financials clearly show the effect of BSD vs GPL licensing; and our customer response has been definitive:

    * Revenues due to dual licensing product have been minuscule.
    * The majority of customers disdain or cannot work with the GPL, both commercial and academic customers.
    * We see far more participation in and contribution to BSD-style licensed products.

    Basically our monies come from building software collaboration platforms, and then working with customers to support, specialize and/or extend the software. Yes, there are many commercial forms that take our BSD-licensed code and do not contribute back to our communities (BTW this is also true of groups developing GPL-based open source products), but the point is is that they are using it and the result is that (based on empirical evidence) the software is spreading at a rate greater than a GPL-licensed product would. And this is the right kind of trojan horse because it eventually brings customers to us who need our help, and promotes the freedom of software and the technology it embodies.

  17. Allan Odgaard Says:

    To repeat LKM and elaborate:

    GPL is a tool to ensure the user the right to modify his software, it is not designed to maximize the number of derivative products, on the contrary, I think it follows naturally that if you put restrictions on how people are allowed to distribute derived products, you will get less derived products distributed, that is just the cost of ensuring that the derived products which are distributed, provides the receiver of it with the freedom to modify it.

    So this freedom is for you as a user/programmer to take any piece of software you use and modify it (Safari, iPhone OS, AirTunes, Mail, etc.).

    But if you want to distribute your modified version, you have to pass along this freedom.

    As for Andrew’s thought experiment, 1) changing license away from GPL today wouldn’t change anything, but what if it was done 5 years ago, had the product existed as is (e.g. had Apple provided changes back to WebKit?), and 2) what if all non-GPL open source was changed to GPL, what would that mean (for users)? There sure is a lot of closed products incorporating open source that I would love to get the chance to modify/extend :)

    Of course this is all rather hypothetical.

  18. Alex Says:

    From a user’s perspective, BSD style license. From a developer’s one, why give your code for free for a commercial company to profit without contributing back? GPL is a more sensible choice.

  19. Jamie Says:

    There’s another issue surrounding the LGPL – or “Lesser General Public Licence”.

    Many people (and organisations) offer libraries licensed under the LGPL with the intent that anyone can use them, so long as if they modify them, they release the modifications. This is a noble goal (and one that the BSD licence doesn’t specify). The problem is that the LGPL also specifies that any end-user of software that uses the LGPL-licensed library should be able to replace the libraries with other compatible versions (usually, future versions). On platforms that do not allow this – like the iPhone – first because it allows only static linking, and second because the user does not have the access required to replace things even if it did – this is impossible, meaning that LGPL licensed libraries cannot be used unless the entire application is licensed under the LGPL.

    Now, if that’s the intention of the original library authors, I have no problems with that – I can understand the philosophical reasons behind that decision, and they should be free to require that if they wish, but I think that a lot of people use the LGPL without realising that this is a requirement, and would be perfectly happy for people to statically link the library, as long as they released any modifications to the source.

  20. Serhei Says:

    I know for a fact that back in the NeXT days, NeXT wanted to develop its Objective-C front end to gcc and then keep it closed source, and the FSF specifically told them that they weren’t allowed to do that. Jobs was reportedly not happy. But NeXT bit the bullet and played by the FSF’s rules. Why? Because, money for quality, gcc was the best thing you could get at the time. Now gcc has an Objective-C front end, on Linux too. There are literally hundreds of different companies making hundreds of improvements, frontends, and backends that let you use gcc to compile things to nearly any processor in existence, because gcc is simply the best tool for that job. If gcc was BSD licensed, you bet that these hundreds of companies would instead be selling hundreds of fragmented and closed-source variations. I doubt how you could make the case that gcc hasn’t benefited from being GPL licensed.

    I find it amusing that the same people who, a year ago, were all okay with the NDAed iPhone SDK, which didn’t let you *talk* about the damn software let alone modify and redistribute it under any terms whatsoever, now find the GPL far too onerous to even consider touching. Not that this is hypocrisy, it’s just one thing to talk in the abstract and another thing to decide whether you want to work with a given piece of software. Clearly many people find Linux, gcc, MySQL, and WordPress compelling enough to put up with the terms. I can see how Cocoa developers, on the other hand, could live just fine without having to deal with GPL and playing the FSF’s game, and can thus afford to make creeds never to touch it.

    Basically this reads like one of those articles urging people to ‘boycott’ the iPhone SDK, or that the iPhone is ‘doomed’, except directed at the GPL instead of Apple.

  21. BK Says:

    I know this post wasn’t specifically about WordPress, but it is used as an example. I think WordPress is under GPL because it is based on B2 which was also GPL.

  22. Kevin Says:

    This blog post is about which license helps build the better communities. I think Daniel is wrong. I don’t think the license matters for building communities, I think the personalities of the leaders matters far more.

    First on plug-ins – I would point out that the Linux Kernel allows for closed source kernel extensions. They usually have to be tagged but many video card companies have binary only drivers for linux. Not a GPL violation for Linux. WordPress could have gone the same route but for their own reasons didn’t. Not really a GPL issue. (GPL v3 is much more explicity about this, but WP is still under v2 same as Linux.)

    Next is the GPL stifles participation claim – “But you’re piloting an open source project, and the first step of building a community is to get people in the door. Liberal licenses? Whoo-eee do they ever get people in the door.” And when they’ve come through the front door they’re also leaving out the back door having eaten all the chips and salsa and left nothing behind but a clogged up the toilet. Communities aren’t just built on numbers of people, but qualities of people as well.

    Next comes the cherry picked anecdotal “evidence” of better communities

    Mac OS X – Built off FreeBSD. Very popular community, but a community that is walled off from the FreeBSD community. Plus there is the question — are the majority of Mac developers developing for the closed source portions of Mac OS X, or the FreeBSD parts. The community around the FreeBSD parts is very small, much smaller (in my estimation) than the FreeBSD community by itself. So the Mac has a great community, but not because of the BSD license.

    Webkit – Come on Daniel, the Gecko community is huge compared to the webkit one. I don’t think it will always be this way, but I think Apple leveraged off KHTML less because of the license and more because they were really working on Mobile Safari and wanted small code. Did KHTML produce that because of it’s license or because of its project goals? Google may have gone with webkit because of it’s license but i’m leaning more towards them having an eye on putting it on Android.

    Versions – “The popular Subversion source control system’s liberal license enabled Sofa, a commercial software business to contribute value to the community with its extremely polished, award-winning client application.”

    Wait, let me fix that:
    “The popular WordPress blogging system’s GPL license enabled Red Sweater Software, a commercial software business to contribute value to the community with its extremely polished, award-winning MarsEdit client application.”

    Or how about:
    “The popular gcc development compiler’s GPL license enabled Apple, a commercial software business to contribute value to the community with its extremely polished, award-winning XCode application.”

    SVN is still the most popular source control around. If you’re going to write a commericial package you go where the customers are. SVN has 5 year jump on git, mercucial, etc… at building a community. 20 years if you factor in that SVN is really a direct CVS replacement (in terms of concepts and functionality).

    And for your Versions, I’ll throw out github. I’d say github has done FAR more for the git community than Versions has for the SVN community.

    And you mentioned you skipped MySQL, but I would point out that it has huge community, even though though there is a liberally licensed competitor PostgreSQL.

    As I stated I don’t think the license is what really determines the community. It’s more about those in charge. I think we’re going to see a prime example of this depending on how Oracle treats the MySQL community. For a prime example from the past, look at Linux kernel vs. HURD. Same license, one widely popular, one a huge disaster.

  23. Chris Says:

    As a software developer I have worked for many companies and every one of them has forbidden the use of GPL’d code. The biggest problem is that many situations are somewhat ambiguous and require a lawyers opinion. That just about kills it right there.
    The truth is as a developer though I have used and continue to use many OPEN source projects and tools in the MIT/BSD/Apache camp and I feel grateful and contribute back. I also agree that those projects seem to be more vibrant communities.
    GPL seemed like a reasonable idea 10 to 15 years ago, but things have changed. When I look for tools/technology, I try to find a project that has an non-viral license but also offers a support contract. I’m willing to pay for quality and support, but I’m not willing to encumber my own projects open source or not.

    The politics of Mr. Stallman also really turn me off. I believe in true freedom, almost Libertarian freedom. GPL is like another government enforcing its political agenda on you.

    Declare Independence!

  24. Jeff Dlouhy Says:

    @Kevin
    While I think that Apple is forward thinking, I find it hard to believe that Apple would choose KHTML for the basis of WebKit in 2002 for a mobile browser for a phone which development did not start until 2005. I believe the choice was simple as: Gecko is bloated, we don’t want to deal with COM, so lets start fresh. This is a whole other discussion, so I’ll end it here.

    Back to the article. I agree with mostly all of Daniel’s points. I think that most of us who write code and what to share it with people, care more if people are using, rather than how they are using it.

    I think the FSF has done a lot of good things over the years and think that there would not be so much FOSS out there today without them. I do however think that they should focus more on sharing and the need for better software, rather than sling mud at people who write proprietary code.

    I think it is wrong to make programmers put on their lawyer cap every time they want to mix other open source code in their open source project. There needs to be a bigger focus on “is this a piece of software that other people can benefit from” rather than “does this piece of software spread my ideologies.”

  25. Christina Warren Says:

    Love this whole post. Love it. I’m not a developer per se, but I certainly understand the developer mindset, and I agree with a lot of your points. It really aligns with my own GPL opinions. Nicely said.

    What I really think that this whole theme/plugin issue highlights is how ill-equipped the GPL is for web applications. Granted, pure desktop apps might have some of the same issues, but a lot of the confusion over licensing and what is and isn’t inherited and what can you mix and how can you dual-license stuff is really the most unclear when it comes to web apps, and that’s primarily because the GPL, even in the newest version, doesn’t really address web applications.

    To me, that’s an inherent flaw in the license and it is a major disadvantage to developers or would-be developers, because lots of the guidelines just don’t apply the same way with web applications as with binary code.

  26. H Says:

    I’d hesitate to say you’re an idiot, but I suspect a large amount of Troll here.

    1. There’s nothing to make you copy code from a GPL product and put it into your product. If you don’t want to release your own code via GPL, don’t copy GPL code. It’s that simple.

    2. GPL code can be realsed under multiple licenses. e.g. TrollTech’s Qt libraries. You can license it commercially and relase binaries under your own rules, or use it free and release under GPL. Easy.

    3. The issue of ‘Themes’ is pretty easy and has been solved many times in the past. If you statically link a GPL library then you need to release your own code. If you don’t, then it’s OK.

    Stop trolling and read the license yourself. There’s plenty of examples around. I think you’re just being an arse.

  27. John C. Welch Says:

    Stop trolling and read the license yourself. There’s plenty of examples around. I think you’re just being an arse.

    took longer than I thought for the GPL version of “AMERICA! Love it or LEAVE it” people to show up.

  28. Daniel Jalkut Says:

    Lots of great points here. I feel overwhelmed to try to reply to everything, but let me call out a few responses:

    @LKM & @AllanOdgaard It’s an excellent point you bring up. In my own world view of software, it’s useful to remember what you say, that for true advocates of GPL it’s about the freedom of the software and what that guarantees to end-users. I’m guilty of viewing the world more from a developer point of view, and this article is aimed more-or-less at developers who are on the fence about which license to choose.

    @Serhei Thanks for lending us a concrete example of how we have probably benefited from the implications of GPL. It’s good food for thought.

    @BK I understand that WordPress’s GPL license was probably unavoidable because of its b2evolution lineage, but my impression is that Matt Mullenweg is in fact a strong advocate for the GPL and stands for its political/social ambitions. Whether he developed this allegiance before or after the circumstance of forking a GPL project, I don’t know.

    @Kevin – Interesting point about the leadership mattering more than particulars such as license. I suspect there is truth in that, but how much more or less pervasive would a project be if it had a different license, with the same leadership? I don’t claim to know the answers definitely but I think the license at the very least can block a significant portion of the public from participating in your project. As for the “eat all your chips and clog the toilet” analogy, the good news is open-source software is infinitely refillable, so you can easily afford to have greedy pass-through guests.

    @Jeff I like your balanced view. It’s definitely worth giving credit where it’s due for many of the great accomplishments in GPL licensed code.

    @Christina What you’re saying reminds me of something I was saying in chat yesterday: essentially that open source models are poorly adapted to the web, in similar ways to copyright. We need some overhaul for lots of intellectual property concepts, and I’m sure open source licenses are ripe for that as much as other constructs.

    Overall, I’ve been impressed so far by the civil discourse in the comments here. I thank everybody for adopting the rational, measured tone. It only really stoops low toward the end:

    @H, disappointed that you had to take it down a notch. I tried to be respectful of GPL proponents in my article, and I think I succeeded. The alleged trolling you allude to seems absent from every part of this page except for your comment.

  29. NickM Says:

    I’m not sure how much I can add to what has already been said; the fact is that the viral nature of the GPL is completely intentional and it is driven by a belief that it is unethical to distribute software without allowing the end user to modify it. Stallman’s goal was to create an entirely “free” platform, in his sense of the word free.

    I think this is a valid, but extreme, point of view that is not shared by the vast majority of users or developers of software. However, as a user I do think that we put a lot of trust in the software we use and it would be nice to know that our data won’t get locked up forever.

    Maybe there is room for some middle ground—to throw out an idea, what about an escrow service that would provide mandatory licensing of source code to applications after some appropriate time, like 7-10 years?

  30. Magice Says:

    It amazes me that you can talk about Mac OS and GPL at the same time without emphasizing the importance of the latter. Let’s face it: Apple stole code from BSD, and created one of the most restricted system on Earth. Look at how they treat their customers and developers: all power is in the hand of Apple; should they want to remove an app (in iPhone, says), the developers and the users have no say about this matter. It is Apple right to do whatever they want, simply because BSD fails to cover that.

    Now, imagine if BSDs were released under GPL. Then, Steve Jobs would have two choices: either release the source code (and never start his tyranny), or write his own OS. He is brilliant alright, so he might crank out some sort of OS, but maybe not with the quality and stability of a BSD. This is, of course, a good thing: all dues are paid, and if you don’t want to pay, do it yourself. I personally believe that if BSD was in GPL, we would not have the Apple headache altogether.

    Now, about free speech and free beer, I think there should be clarification. Freedom, as in Political Freedom, or Freedom of Speech, is not free. Your political freedom means, of course, that I am not allowed to be made your ruler. Your speech freedom means that I am not allowed to shut you up. Thus, freedom is not free. Just imagine how many cases in which tyranny would have been neat. After all, Rome did have a system to appoint dictators, only to turn into an empire. Roman republic was destroyed simply because Romans thought like you do: sometimes tyranny is neat, so let’s use it.

    Similarly, when you allow proprietary software to steal from Free software, well, how can free software compete? Seriously. Any improvement in the free implementation means an improvement in the close sourced one; any improvement in the proprietary one means a step back for the Free implementation. After a while, guess who will win?

    This is, of course, not the end of the philosophical discussion. Have you heard of “Tyranny of the Majority”? That’s what personal freedom defends against. When the mass people start to adhere to something, they will lose the sight of any alternative, and start to expect everyone to adhere to that thing. Have we seen it? Oh yes, Apple (yet again). Or Microsoft, if you are tired with Apple already. Anyway, I have just read a lovely post over in ITWire, in which the self-proclaimed largest iPhone developer talks about how superior iPhone is and how bad Android is. Why is Android bad? Well, because it can be installed on HTC and Nokia and Blackberry machines. So, it’s bad. It’s not Apple. It’s not what the majority expect. Therefore, it is bad. Tyranny of the majority at its best.

    Where would all of this lead to? Of course, the trifle of innovation. Sorry, but do any of you remember that Apple almost died once? What brought it back? Um, BSD? Right? Then, KHTML, another free software. GCC, free software, too. Heck, Apple came back by Free Software, to impose its rule on the users. And you are here arguing about how protecting freedom is damaging. Look at the fact and history, PLEASE. Now, imagine one day, Apple achieves its end: a complete tyranny over us all. Then what’s next? No more Free Software for Apple to steal from, right? What would it do? Panic panic panic!! Oh, of course, Apple fan boys will just argue how such time will be heaven and no more innovation is necessary. Yup, and GPL and GNU are stupid, tyrants, and isolating. Proprietary and Corporations are kings. Anything else is evil and communist.

  31. Christina Warren Says:

    Let’s face it: Apple stole code from BSD, and created one of the most restricted system on Earth.

    While I’m saddened that the conversation has already moved to the “Apple STOLE OS X” delineation, I’m equally heartened it took this long.

    Let’s be clear: Apple didn’t “steal” anything. The BSD license is permissive in its uses. It does not require changes be given back to the main branch. Thus, you can’t “steal” something if you aren’t violating any part of the license.

    Furthermore, to suggest that Nextstep and its descendent Mac OS X is merely FreeBSD with a pretty face (which I know isn’t exactly what was said, but that’s the implicit argument) is to have a fundamental misunderstanding of how an operating system actually works and all of the additional work that has gone into OS X.

    Yes, Darwin (which is APSL, and thus recognized by the FSF as being “free software”), uses the Mac 3 kernel and elements from BSD and FreeBSD. But many, many of the improvements to FreeBSD over the years have come from — you guessed it, Apple. Just look at how FreeNAS implements lots of Bonjour-esque features out of the box — it’s because mDNSresponder is Apache licensed under Darwin.

    So they didn’t steal anything, because it isn’t possible — and they do give stuff back. It might not be as much as some people would like, but guess what, that’s the license.

    Next we’re going to hear how really, Safari and WebKit are just the old Konquerer browser because WebKit used KHTML. Yeah, because KDE would have produced anything even remotely usable with that technology if Apple hadn’t taken it over…

  32. Pavan Says:

    I am surprised someone would look at Apple using BSD as something negative. To-date FSF has not come up with a GUI experience as good as Aqua (or even Windows for that matter). While it’s good that the “bazaar” churns away and does its own thing, one has to realize that there are severe limitations to the idea of “bazaar” itself, that it’s too dissipated. With the code being MIT or BSD licensed, the “cathedral” can take things where the “bazaar” left off and come up with a far more polished product.

  33. Rolf Says:

    Apple stole code from BSD? If they did, it’s good for everyone that they did so, because it opened up Unix and open source code to a lot more people than if they hadn’t. Would the developer community as a whole benefit if Mac OS X didn’t come with a Terminal app and perl, gcc, dtrace, apache, curl, svn, etc. etc.? There are an awful lot of developers who work on a Mac, many of whom contribute to open source projects. If they didn’t have such convenient access to the great open source tools out there things would become even more fragmented than they are now and nobody would benefit.

  34. John C. Welch Says:

    Rolf, the problem is, you’re going with the assumption that the FSF created the GPL to allow everyone to be able to modify code.

    That’s the PR. But, the truth seems to be, based on decades of Stallman’s output, (and face it, there’s one voice for the FSF, and it ain’t you, it ain’t me, it ain’t anyone who isn’t RMS), is that they built the GPL so that the “worthy” could get to the code. Don’t like something? Found a bug? Aren’t smart enough to modify the code, and give away all your work for free?

    Then you sit down and shut it, and take what you get. Non-coders do not exist in Stallman’s world, nor will they ever. They are simply there to pay for software because they’re too stupid to write their own.

    Yes, i’m cynical. You read RMS’s ramblings for years, you’ll be cynical too. RMS and the FSF are not about making software better or free, they’re about pushing a political point of view, and every revision makes the license MORE restrictive, so as to push that political aim even harder.

    Say what you want about MS and Apple, I know that they want: Money. I trust that, I know what they’ll do. Prophets and believers give me the willies, they’re random.

    What’s going to be fascinating is what happens as companies that WERE trying to make nice with the FSF and the GPL realize that the GPL 3 has removed pretty much every single way they had to do so, and still sell commercial products without worry that some schmuck would take 30,000 hours of work, change a comment, and release it as their own, because they can.

    The forking is about to get heavy.

  35. Rolf Says:

    I’m interested in the discussion of GPL and plugins. Can a developer with a closed source application write a plugin for their application that uses GPL’d code (as long as they open source the plugin itself of course)? If not, how does that differ from someone else writing a plugin that depends on GPL’d code? What’s to stop me as an independent, open source developer writing and publishing a Photoshop plugin or QuickTime codec that uses GPL’d code? You can’t tell me that the existence of some fancy image processing module on sourceforge imposes an obligation on Adobe to release their source code!

  36. Martin Pilkington Says:

    @Magice There is an awful lot of misinformation in your post. First off, the whole notion of stealing code. This only comes from those who are GPL advocates. If those who licensed under BSD/MIT/Apache etc thought of this as stealing they wouldn’t have used that licence. Instead they want to let people use it without having restrictions placed on how they distribute the code.

    Also, even though you claim they stole BSD, the BSD code they have is in the Darwin kernel which is open source. They may not be giving the changes directly back to the BSD community but it isn’t like they can’t get access to them. Also technically it wasn’t Apple that chose BSD, but NeXT back in the 1980s when the GPL was still a twinkle in Stallman’s eye.

    Your point about the iPhone is also flawed. Android can be installed on all those machines, which means you have to support all sorts of screen sizes and capabilities. The iPhone hardware landscape is much simpler and so there is less pain for developers. They only have to test on a few devices, with one screen resolution and similar capabilities.

    And it wasn’t free software that brought Apple back. It helps them a hell of a lot, but it was the iMac that brought them back from the brink and the iPod that started them on the path to where they are now. Neither had much open source in. As for the open source. BSD and KHTML were licensed very liberally. Apple has put a lot back into Open Source by releasing their kernel (even though they didn’t have to) and releasing WebKit, which is becoming one of the most popular rendering engines due to its speed, clean codebase and liberal licence.

    Again it didn’t have to open source its branch of KHTML but it did. Why? Because Apple sees the benefit of open source. Almost every open source project Apple includes in OS X they contribute back to. They’ve even open sourced code they’ve created in house including their CalDAV server, launchd, QuickTime Streaming Server, Bonjour (their ZeroConf implementation) and CUPS.

    Now lets focus on GCC. It helps them a lot by providing a mature, powerful compiler. However being GPL it means they have to put up a virtual wall between it an Xcode or they’d have to open source Xcode. LLVM/Clang on the other hand is BSD licensed. This means that they can integrate the code directly into Xcode which allows for much more powerful features to be created.

    “But they’re stealing the code from the LLVM/Clang projects!”, I hear the GPL advocates say. The reality is that Apple is the biggest contributor to the LLVM/Clang projects and actually helped start Clang.

    So what is this long winded comment trying to get at? Well GPL is a problem, not because changes to the GPL code have to be open sourced, but that the rest of the project using said GPL code has to be open sourced under GPL. People wouldn’t mind if they could include GPL code, modify it and then contribute their changes to that code back, without having any restrictions on my code. But as this can’t be done, people use BSD/MIT/Apache etc code and then contribute back to that if they feel the changes will be of use.

  37. Jordan Henderson Says:

    I agree Serhei above. If gcc hadn’t been GPL’d, gcc would have been fragmented. Fragmentation would have resulted in less quality and it wouldn’t have been as useful. gcc is critical infrastructure to the entire Open Source software ecosystem of today (except arguably things like Java Open Source, but even there, the pressure from gcj is probably responsible for Sun opening up Java, which has been good for Java).

    Look at the success of Linux vs. the various BSDs. The BSDs are fragmented, with different kernels, not so with Linux.

    GPL is an important part of the OS ecosystem, perhaps better for infrastructure.

    OTOH, Apache is critical infrastructure that has done well under a more permissive license, so perhaps I’m full of it.

  38. Randal L. Schwartz Says:

    I’ve always thought of the GPL as “my users need to be forced to do what I think is best” and the BSD-family licenses to be “my users merely need permission and encouragement to do what I think is best”.

    I guess it depends on whether you trust your user base or not. I’d prefer to live in a world where I trust my user base to do the right thing as often as they can.

  39. gg Says:

    Hey, Apple bashers!

    Do you use your printer on Linux? Then you probably use CUPS for printing. Well, CUPS belongs to Apple, and it’s open source. It serves everyone well, from FreeBSD, to Linux to Mac OS X.

    http://www.cups.org/

    Apple contributed a lot of code back to FreeBSD also, a whole security audit stack. FreeBSD 7 has the ZFS, but Linux doesn’t, because of political ideology. Who’s losing here?

    Get real, the GPL has hurt the Linux ecosystem. How many independent software vendors exist for Linux, that use the GPL ? Get my point ?

    The GPL was a historical mistake. Now everyone let’s get back on track and return to *BSD.

  40. gg Says:

    As to the honorable gcc, it’s days are numbered. OpenBSD has been moving towards a BSD compiler and LLVM will produced shock waves. LLVM is produced by Apple with a business-friendly license. It’ll rock the open source world when it’s ready.

    And what’s wrong with businesses? I’d rather chip in 39 euros for a nice gui for subversion than live with Gnome terminal CLI. What’s the big deal? 39 euros?!

  41. Marc Liyanage Says:

    I couldn’t agree more, I think you nailed it 100%. The GPL and its advocates annoy me to no end.

  42. David Says:

    A few comments that I’ve seen made are factually incorrect.

    First, several people have claimed that KHTML was under a more permissive license than the GPL, and thus Apple didn’t need to release Webkit to the world as open source. This is only partially correct. KHTML is under the LGPL, which is essentially the GPL but allowing for linking with external programs. Apple was obligated to open source Webkit, they didn’t solely from the kindness of their own heart.

    Second, a few people have claimed CUPS as another invention Apple bestowed on the the open source world. CUPS has been around since 1999, and while it is currently owned by Apple, it was not developed by them.

    Finally, I think the debate between the GPL and the more permissive licenses can be thought of in terms of the Creative Commons licenses. The GPL is similar to the CC-BY-SA (or CC-BY-NC, depending on your opinion) in the way it asks that derivative works fall under the same license. By comparison, the BSD license would be more of a CC-BY license (I think). For all those of you who are not so keen on the GPL, think about which sort of license you’d want to release photographs or other artwork under. Hopefully you’ll realize that some of us who release under the GPL elect to do so simply because we want to ensure the freedom to see the code is maintained.

  43. John C. Welch Says:

    “ensure”?

    you misspelled “force”

  44. David Says:

    Fair enough. I can’t argue with that phrasing. But what is wrong with setting the terms of usage for your source code as: “Do as you wish, with the exception that you must give these rights to others.”

    Now I should say I can completely understand not wanting (or not being able) to meet those requirements, but still the source code isn’t causing you any injury; it merely isn’t giving any benefit. This is also not to say that there is no use to the BSD, or Artistic, or Apache, or any other more liberal license. I just wanted to try to explain why I prefer the GPL for my projects.

    (But on a sidenote, I will also agree that using the GPL (instead of LGPL or a more liberal license) for libraries is a horrible choice, since that can prevent a good many people from using it.)

  45. LKM Says:

    ssp said: “I always thought the GPL was a smelly middle finger in the face of corporations, just dressed up in legalese.”

    For a lot of people using the GPL, this is probably pretty much the reason why they chose it: they want to prevent companies from using their code and making money with it. And frankly, I understand where they’re coming from. I think David’s comparison with CC share-alike licenses is apt. While I would probably avoid using such a license for code, I can see why a lof of people don’t want their works to be used for profit without getting anything back. In fact, I use a CC SA license for at least some of my pictures on flickr, and others have no CC license at all.

    Some of the comments here have gone from talking about the GPL to insulting the programmers who use the GPL, and to questioning their motives. But surely, even if you don’t write code, you yourselves probably don’t release the essays you write and the pictures you take and the paintings you create under a permissive CC license comparable to the BSD license.

    As a programmer, while I can’t use any GPL code, I’d still rather see code released as GPL than not released at all.

  46. John C. Welch Says:

    As a writer, the licensing depends on who it’s for. If it’s for someone else, then once they pay, they can pretty much do whatever they want, as they paid for the privilege.

    if it’s for my site, then I am pretty bsd-ish about the whole thing. Just credit me if you use it, and i’m fine.

  47. Mark Jaquith Says:

    Disclaimer: I’m one of the lead WordPress developers. I’m speaking for myself, only.

    I can see benefits to both. BSD-style is more free in a specific instance (“I have the software, what can I do with it?”), but GPL-style is more free on the whole (because all distributed implementations of it are free).

    What I like about the GPL from a developer’s perspective is that I am not just distributing my code, I’m bequeathing the freedom to use it for any purpose, in perpetuity. With WordPress especially, with individual contributors owning the copyright to the code they contribute, that gives me the confidence to tell potential clients that WordPress is “free to use for any purpose, now and in perpetuity.” No one, not Matt Mullenweg, not I, not even all the WordPress lead developers… no one can move WordPress to a more restrictive license. It would be impossible to get all the hundreds upon hundreds of copyright holders to agree to it. So even though the GPL isn’t perfectly free, I like that it can never become less free.

    I too am bothered by the “hippies giving corporations the finger” attitude that sometimes accompanies GPL advocacy. I am most assuredly not in that camp. I’m a laissez-faire big-C Capitalist. I make a very comfortable living doing WordPress consulting and thus have a vested interest in promoting a vibrant market for WordPress-related products and services. Instead of thinking of the GPL as giving businesses the finger, I like to think of it as forcing them into new business models, if they want to leverage GPL software. These business models are also, necessarily, more consumer-friendly. Things like lock-in just aren’t a problem with virally free software. That makes it significantly harder for companies to become anti-competitive or start treating their users as if they don’t have alternatives. It is important to note that no one is forced to use GPL software. If a company doesn’t like the license, they can just develop their own solution.

    I don’t think that all software must or should be FLOSS. I don’t exclusively use FLOSS, even though I’d like to, to reduce my lock-in. But for WordPress and the code I write for WordPress, I feel very good about using the GPL, and you’d be hard-pressed to argue that the choice of license has hurt WordPress adoption or the market for WordPress products and services.

    As for developers of original software, shopping for a license, all I can say is to study the license candidates, consider your vision for the future of the project and how you’d like to see it become integrated into other software, and make the best choice to fit that vision.

  48. dvdrtrgn Says:

    It is astounding to me that some posting here claim the GPL limits (their) freedom. If you wish to not GPL your work (for whatever reason) don’t rely on it. If you are tempted to pull up the ladder behind you. Don’t use the ladder. That’s the simple exchange–and the underlying point to the article.

    Getting Pretty Lonely is not a call to arms. It’s more of a lament — or gripe. The tone of the above comments (with a few exceptions) veers toward catty-conservative. To quote one of the ”’less”’ catty @LKM: “…restricting what you can do is the whole point of the GPL…”

    It is no surprise that the [@Rob, @Jeff Medcalf, @Mic Edwards, @John C Welch, @ssp, @Marc Liyanage] crowd will manage to bait a couple of lefties. This antagonism may strengthen their resolve but their reasoning does suffer.

  49. John C. Welch Says:

    Mark, which version of the GPL is WordPress licensed under? I’m assuming 2. If so, are y’all planning on moving it to version 3 which is very specifically designed to be as unfriendly as possible to non FSF-approved uses? If WordPress moves to GPL 3, how will you handle existing users who started using it under version 2?

    As far as this:

    I too am bothered by the “hippies giving corporations the finger” attitude that sometimes accompanies GPL advocacy.

    My response is: “When does GPL advocacy not involve that?” One almost never hears of someone picking the GPL based on technical or method-based criteria? Pretty much never outside of “I really need this tool, but it’s GPL’d so I may as well GPL this too, since I have to release the source anyway”.

    Even your comments show the unavoidable political nature of choosing the GPL:

    What I like about the GPL from a developer’s perspective is that I am not just distributing my code, I’m bequeathing the freedom to use it for any purpose, in perpetuity. With WordPress especially, with individual contributors owning the copyright to the code they contribute, that gives me the confidence to tell potential clients that WordPress is “free to use for any purpose, now and in perpetuity.” No one, not Matt Mullenweg, not I, not even all the WordPress lead developers… no one can move WordPress to a more restrictive license. It would be impossible to get all the hundreds upon hundreds of copyright holders to agree to it. So even though the GPL isn’t perfectly free, I like that it can never become less free.

    It may not be able to become less free than whatever version of the GPL you license it under, but it started off as not being “free” to begin with. Freedom at the end of a legal gun is not really freedom, it’s “do as I say or bad things happen to you”.

    But for WordPress and the code I write for WordPress, I feel very good about using the GPL, and you’d be hard-pressed to argue that the choice of license has hurt WordPress adoption or the market for WordPress products and services.

    To 90% of your users, the license doesn’t matter, only the features, and the price. I use the open-source version of MovableType for my site, and not only do I not know what license it’s under, I don’t care. If the license becomes inconvenient, I’ll move to another product. MT was chosen solely for featureset. It wasn’t even a price issue, I’ve paid for it when I had to. For the vast majority of people using software, the license is a complete non-issue. Really.

    Instead of thinking of the GPL as giving businesses the finger, I like to think of it as forcing them into new business models, if they want to leverage GPL software.

    The changes in the GPL 3 are very much a deliberate finger to business use.

    These business models are also, necessarily, more consumer-friendly. Things like lock-in just aren’t a problem with virally free software.

    Based on what? Being free is not inherently consumer friendly if the product is hard to use, and support consists of “download the source and do it yourself”. I find far too many GPL advocates to be utterly clueless about what “consumer friendly” means to anyone outside of their bubble, because they don’t understand the non-technical user for beans. As well, “lock-in” has a few layers of use, and on more than a few of them, the GPL locks you in rather thoroughly.

    as far as dvdrtrgn goes

    It is no surprise that the [@Rob, @Jeff Medcalf, @Mic Edwards, @John C Welch, @ssp, @Marc Liyanage] crowd will manage to bait a couple of lefties. This antagonism may strengthen their resolve but their reasoning does suffer.

    (First, lame try at an ad-hominem, painting everyone who disagrees with the GPL’s glory as politically conservative. In my case at least, it’s laughable. But you go on with your bad self if it helps you discount disagreement better.)

    This particular statement translates to: you don’t completely agree with the position I support, and since there cannot be differing correct opinions, for you to be right at all means I must be completely wrong, so therefore, since I cannot be wrong, you must be, and obviously, since you don’t agree with me, your reasoning is invalid.”

    Life is not binary dude, nor is it a cage match. But that’s something I see a lot from the GPL side: the complete inability to realize that someone disagreeing with you doesn’t make you wrong, or attack you personally.

    That the GPL works cannot be denied, however, I find the PR and advocacy about it to be extremely distasteful, and quite often, GPL advocates have no problems with deception, and misleading people to press their case. I also have no patience for Stallman’s position that unless you blindly follow the GPL, you are a bad person. (And yes, everything Stallman says on the subject is a valid issue, until such time as he publicly disassociates himself from the FSF and vice-versa.)

    It is the people around the GPL, who advocate it, design it, and politicize it, that make me grateful for the people who use a truly free license, aka BSD-ish licenses, and contribute back to the community without being forced to. Doing the right thing even when you don’t have the threat of hellfire behind it carries a bit more weight than doing something because you have to.

  50. Jordan Henderson Says:

    John C. Welch,

    I too am bothered by the “hippies giving corporations the finger” attitude that sometimes accompanies GPL advocacy.

    My response is: “When does GPL advocacy not involve that?” One almost never hears of someone picking the GPL based on technical or method-based criteria?

    You’re painting with a pretty broad brush yourself there, something you criticize later in your post. I don’t think Linus chose the GPL, which he’s stated was the best move he ever made, out of a desire to give a finger to corporate interests.

    While I agree with much of what you say on GPL 3, I wonder if we can’t stop seeing this as an either-or and admit that the variety of licenses has been a good thing for the Open Source ecosystem.

    As I said earlier, I don’t think gcc would have been as good without GPL forcing the hw manufacturers throwing their improvements back to the community, something they almost certainly would NOT have done without the mandate. Gcc has been critical infrastructure to all of Open Source.

    Would IBM have contributed to the community development of the Linux kernel so heavily without GPL? Or, would they have taken the best of Linux and locked it away in some release of AIX?

    I have to admit that the success of Apache has proven that people can and will give back to the community without GPL coercion, but I wonder if that’s because the users of Apache are more interested in applications rather than locking away infrastructure components.

  51. Dallas Hockley Says:

    Great article. And excellent discussion for the most part in the comments. I think GPL projects are, with the exceptions of the stars, plateauing in many ways. MySQL and Linux are continuing forward, but the ideas for improvements seem to continue to come from many closed or liber-license projects. Many new filesystems have arisen of late after the awkward staggering of ReiserFS and ext3, but I would hazard to say pretty much all of htem are inspired from the ZFS efforts and open sourcing by Sun. Now it looks like there may be improvements beyond where ZFS is at, but not for a number of years. Where is the innovation that isn’t embrace and extend? It still seems to be inside the companies in the vast majority of cases.

    The strong GPL projects all have core contributors being paid by commercial enterprises that need certain capabilities in the projects. I’m not sure which side is leeching from which really in those cases, as it’s not the old altruistic labour of love from the 80s where it was building the GNU suite to break away from AT&T, Sun and others. The projects are getting too big and complex to make progress part-time.

    The world is passing the zealotry by, and I’m not sure the hardest of the GPL adherents understand that as electronics and software becomes more and more ubiquitous in everyone’s lives around the world, that the *vast* majority of users are not coders, and want things to work and be supported. The GPL doesn’t work well for them. BSD/MIT/Apache license styles allow support structures to be built up and leveraged on the code. Those structures also often fund developers to work on the core and contribute back in addition to the commercial works. GPL was making this transition at one point and that ultimately turned into/was purchased by Red Hat. There aren’t many success stories of “GPL support” from a feed the family point of view.

    A GPL license enables a community to advance and contribute and share but greatly decreases the commercial ecosystem around it. One of the GPL projects pointed at, MySQL, isn’t really an altruistic GPL stream, it’s a closed-source venture that releases editions under GPL. It’s a dual-license concept. Linux is the only project supporting large successful GPL support enterprises that gainfully employ people. There just aren’t any others that the average IT person can point to. And Linux (I believe wisely) will not move to GPL 3. I’m seeing a declining relevance in the GPL license family. I’m happy to have other projects pointed out though!

    How is innovation supported in each of the models? Closed source is straightforward. Build it and sell it. Liberal licenses are similar, in that you can embed, credit, extend, innovate and sell it. The community will judge if you extended core and berate the crap out of you if you stay too insular and “leech”, but in general, these endeavours are extension modules, plugins, management systems, using the liberal code as a component. GPL? It’s a service on top of it for support or customization. RMS even noted that you would sell your service to maintain and extend the code in his original writings as I recall. That’s a woefully limited business model, and removes the leverage of the digital medium entirely.

    There’s also a large catch in the GPL of extending. If you extend for a client to feed your family, and it’s rather specialized, you may wind up not getting the changes accepted, or they get removed or changed again. The “tyranny of the majority” as noted above cuts both ways. GCC has shown this, and is one reason that the LLVM/Clang are being vigorously supported by Apple and others. It’s increasingly hard to innovate on that project as it must satisfy everybody, and not everybody likes the ideas. So the innovation and optimization effort is lost to GCC and will be much more freely available with LLVM and Clang. As far as the Apple development I do, I’m loving using LLVM and Clang with XCode over GCC. GCC is literally stuck in development under its own weigh, and LLVM is showing that in neon.

  52. John C. Welch Says:

    As I said earlier, I don’t think gcc would have been as good without GPL forcing the hw manufacturers throwing their improvements back to the community, something they almost certainly would NOT have done without the mandate.

    Every time i see that statement, or variations of it, it strikes me as being based on an unprovable assumption that really isn’t backed by data. :

    “People contribute GPL code back to the community because the GPL forces them to. Why does the GPL force them to? So they’ll contribute, because they wouldn’t otherwise. That gun at their head is why the GPL is better than BSD licenses”

    the problem with this is that it only works if you can show that code contributions by commercial users of BSD code is, or closely approaches zero, and that simply isn’t true. Look at how willing GPL advocates are to rag on Apple, even though Apple makes real, regular, and consistent contributions under BSD licenses, even though they don’t have to*. So the entire “without the GPL forcing them to contribute, they won’t” is based on a false assumption, which is borne out of one person’s assumption that people only do the “right thing” when forced to.

    *(The rampant hypocrisy about the GPL fans’ antipathy towards Apple is revealed when they basically say that because Apple doesn’t open source 100% of all software they write, that the contributions they do make don’t really count.)

  53. Jordan Henderson Says:

    the problem with this is that it only works if you can show that code contributions by commercial users of BSD code is, or closely approaches zero, and that simply isn’t true.

    Perhaps compiler technology is a special case here? Typically, the processor vendors have the most motivation to extend gcc (to provide support for their new processors or new features) and they are least likely to contribute them to their competition, guarding compilation secrets that help their systems look better in benchmarks. The GPL has cut through this.

    Possibly this dynamic relates to OS technology also, thus the many extensions to the Linux kernel contributed back to the community by IBM, HP, Sun and others.

    When have processor makers (Intel, AMD, Others) contributed compilation tech to the community when it wasn’t GPL?

    When have OS Vendors contributed OS technology to the community when it wasn’t GPL? Perhaps there are some examples here recently by Apple. I think Apple is under a lot of pressure from the community to do it, though, a mindset of the Free-as-in-freedom crowd.

  54. John C. Welch Says:

    Perhaps compiler technology is a special case here? Typically, the processor vendors have the most motivation to extend gcc (to provide support for their new processors or new features) and they are least likely to contribute them to their competition, guarding compilation secrets that help their systems look better in benchmarks. The GPL has cut through this.

    nonsense. there are other compilers besides gcc. gcc is not the alpha and omega of compilers. really. As far as what Intel and AMD have done non-GPL related, don’t know, don’t really care. May be something, may be nothing.

    When have OS Vendors contributed OS technology to the community when it wasn’t GPL? Perhaps there are some examples here recently by Apple. I think Apple is under a lot of pressure from the community to do it, though, a mindset of the Free-as-in-freedom crowd.

    you mean besides webkit, bonjour, darwin, etc.?

    As well, considering that people with real money, i.e. customers, can’t make apple do anything, just how much influence do you really think the GPListas have?

    “None” would be the word you’re looking for.

    apple contributes code under a variety of licenses, including BSD, APSL, Apache, etc.

    In fact, a good chunk of Apple’s OS contributions aren’t under the GPL, as the original wasn’t. (BSD, BSD license, etc.) But it appears you’ve made up your mind that without the GPL, there would be no open source whatsoever, so i’m not sure why you care about anyone doing something different.

  55. Richard Venable Says:

    I’m new to this whole licensing issue, so I have a question. Is it possible for the authors of a GPL project to switch the license of their code to a different license? Or is the ownership of their project sucked up by the GPL?

  56. Dallas Hockley Says:

    Richard,

    The crux of it is that you need agreement of all participating authors to change the license, as they assigned the copyright to the license in most cases. Some projects assign stewardship of the rights, so that ALL rights are signed over to a governing body, and that body may change the licensing terms in the future as they see fit. This hasn’t proven too popular though as you’re essentially allowing a third party to own your code, and if they decide to go liberal license or closed source from a given checkpoint, they would be able to. That flies in the face of most philosophies given rise to open source regardless of license. The alternative is to get buy-in from as many people as possible that contributed, and rewrite or remove the portions that were not often involving a major overhaul to avoid infringement or any other entanglements.

    Dual-license scenarios like MySQL solve this by having the core code owned by such a body, and releasing iterations as GPL periodically. Unless you surrender the rights to the MySQL/Sun/Oracle owners, don’t expect your code to get into the core distribution.

    The ownership is actually, given the license changes, temporarily licensed, not sucked up or surrendered. The original authors still have the right to re-license their code contributions under other or even multiple licenses. Only fully assigning the copyright or releasing it as public domain with no encumbrances would allow anyone else to change the license.

    So in short, the authors may change the license of the project in theory. In practical terms with large projects like Linux, this becomes very close to a practical impossibility.

    Hope that helps clarify. At the root of it, it is still the legal rights of copyright that protect all of these licenses and grant the legal standing.

  57. Mark Jaquith Says:

    Mark, which version of the GPL is WordPress licensed under? I’m assuming 2. If so, are y’all planning on moving it to version 3 which is very specifically designed to be as unfriendly as possible to non FSF-approved uses?

    It’s specifically licensed under GPL version 2, with no “or any later version” clause. That plus having hundreds of sometimes pseudonymous code contributors ties our hands.

    It may not be able to become less free than whatever version of the GPL you license it under, but it started off as not being “free” to begin with.

    Absolutely. It’s near-freedom in perpetuity vs complete freedom in the moment. The ideal would be a BSD-style license with everyone voluntarily sharing their changes!

    Freedom at the end of a legal gun is not really freedom [...]

    But it is a restriction you take on willingly.

    To 90% of your users, the license doesn’t matter, only the features, and the price.

    Sounds about right. But WordPress’ big feature is its community and marketplace — its plugins and its wealth of available consultants. That wasn’t really available for Movable Type in 2004, partly because certain support aspects were forbidden to third parties by MT’s license. You couldn’t install MT for someone else for pay, for example. So the license may have had some indirect effect on its rapid acceptance by users, because that license allowed for the plugins and the service market to spring up, giving more of a variety of services than Six Apart (or any single company) could ever offer for their proprietary product.

    The changes in the GPL 3 are very much a deliberate finger to business use.

    I’ll have to claim ignorance on this. As GPL 3 isn’t an option for WordPress, and most of what I do now is WordPress-related, I’m not well-versed in the differences. I’d certainly consider a BSD-style license for new original software if I find these differences to be anti-business.

    Being free is not inherently consumer friendly if the product is hard to use, and support consists of “download the source and do it yourself”.

    I agree. But given identical software, a FLOSS version is more consumer friendly. Your free software lock-in escape hatch may involve coding or paying someone else to code for you, but there will be a way out. With a proprietary version of the same software, you may be SOL.

  58. Mark Jaquith Says:

    I’m new to this whole licensing issue, so I have a question. Is it possible for the authors of a GPL project to switch the license of their code to a different license? Or is the ownership of their project sucked up by the GPL?

    If you have the consent of all of the authors of the code (going back to the original authors of the code), you can multi-license it. This is what Six Apart has done with Movable Type Pro and Movable Type Open Source. Anyone who contributes code to MTOS signs over the copyright of that code to Six Apart, so that they retain this control.

    WordPress could not change its license because the individual code contributors own the copyright, and tracking them all down would take longer than just rewriting it from scratch.

  59. What_GPL_means Says:

    HERE’S THE THIRD ATTEMPT TO PUBLISH A COMMENT HERE

    The really interesting topic today that is related to GPL is the inclusion of Mono into a Linux distribution (Ubuntu). Richard Stallman warned of Greeks bearing gifts, and is being bashed by Microsofties and various accompanying softbrains

    In fact all issues with GPL are political in nature.

    1. Copyright and the terrorism of “intellectual property” originate from Corporations becoming transnational and pursuing deindustrialization of the US/metropoly while simultaneously outsourcing production to other places with cheap slave-like labour.
    If classical capitalism kept production of say English textiles in England, murdering Indian weavers with their finished product exports, today even manufacture has been outsourced. This means the only way to claim their huge share of profits is for Corporations to assert they have nebulous “intellectual rights” to what has long been handed over to other peoples.
    This may sound rather harsh, but other views of this issue (more common in mass media) contain a large dose of propaganda: take an example of music industry, which gobbles something like 80% of profits, but purports to speak in the name of “starving authors”.

    2. GPL is first and foremost a political tool – work of a genius – which allowed something unprecedented, a construction of a non-parasitic, non-capitalist model of creation and production, on the lines of the ancient “community” or ‘tribal” efforts, the model of mutually helping and mutually benefiting individuals. If I save tens of thousands with, say, GCC toolchain plus OS and utilities, I will give back something of my efforts.

    3. The danger of GPL is well-recognized by the parasites, the Corporations. The essence of corporate world order, so to say, is to create economic parasitism and deflection of profits from the natural, technological flow of activities. Therefore some time ago an “Open Source” movement spurted from unknown sources to add non-GPL licenses which would neutralize exactly the hated “viral” nature of GPL. Many do not recognize to this day that the idea behind that was to kill GPL, not to expand the falsely named “Open Source” movement.

    4. Slightly later this effort at interception and corporatization of GPL continued with corporations jumping on the bandwagon and creating ‘Linux Foundations”, or purchasing some brands and whole distros (e.g. Suse by the hated Novell, which immediately began to cooperate with Microsoft)

    Ubuntu belongs to this trend. It was set up as a parasitic add-on to create a MS-like GUI environment on top of the real workhorse distribution, the community-created Debian. It was set up by a shady character, some Mark Sh., an Israeli who suspiciously got so rich in South Africa that he could treat himself to flying as a space tourist.
    Then suddenly he turned to parasiting on Debian, and very,very quickly Ubuntu (with the insanely infantile “Hardy Herons” and “Dapper Drakes”) became virtually the main distro for the Mass Media and the lemmings. Who paid for the ads campaign? Why?
    I have no idea what real agenda is pursued by people like that – money or something like putting backdoors into precompiled kernels or simply subverting Linux – I do not know. But this is not good, real, honest work in my eyes.

    5. Now Ubuntu szar, this very Mark Shattleworth, if I got the story correctly, blessed Mono for bundling with their Linux distro, and for the sake of truly unnecessary “personal productivity” i.e. trifle applications. And the lemmings squeak indignantly when RMS warns of the possible trojaning of Linux with MS technologies, as there is a danger of MS later claiming some patent rights or imposing restrictions or incompatibilities.

    6. Another huge topic is the subversion of personal computing and taking away ownership of data from an individual user. A whole strategy exists there, and MS is pushing it with all its might. Again, the Open world stands in natural opposition that stems from its technological nature, again RMS warned of “surreptitious uses of computers”, and again he is not heard.

    7. So basically the question of GPL comes to the two fundamental views of life and work: that of robbing or swindling of everyone by everyone, which is known under the euphemism of “market” today (for the extremists which came after WWII everything is a market, and the generations of westerners got their brainwashing from early childhood) — or cooperative work of members of community.
    The genius of GPL creators was that they managed to engender the second from within the first, and protect their work from greed and dishonesty by wisely turning the legal mechanisms of the parasites against parasites themselves. And this sparkle of humanity is what must be cherished in the increasingly oppressive world of corporate jack-booting and blackmail.

    These are the issues at stake with GPL.

  60. John C. Welch Says:

    ah, i was wondering when one of Stallman’s provocateurs would show up with an incomprehensible rant based on paranoia and ad hominem with no other purpose than to try to shout down any opposing viewpoints by painting all who would disagree as bad, evil people.

    In doing so, of course, you make the point that the GPL has absolutely nothing to do with software or actual freedom, and everything about forcing Stallman’s point of view at the end of the same legal gun you cry so loudly about when it is used in a way inconvenient for you.

    I’m only amazed it took this long.

  61. Jordan Henderson Says:

    nonsense. there are other compilers besides gcc. gcc is not the alpha and omega of compilers.

    GCC is pretty much the end all for Open Source compilers today. I understand that there are some new developments in this area that may challenge this, but certainly, having a high quality compiler that supports many architectures has been a really good thing for the Open Source operating systems, *BSD and Linux in the last 15 years. Would they done just as well with the BSD compiler? I don’t know, but I doubt it. I’ve never heard of any serious use of the BSD compiler. Maybe I’m out of touch.

    you mean besides webkit, bonjour, darwin, etc.?

    webkit and bonjour aren’t OS technologies, they are application technology. Is darwin a real contribution? It was intended to be one, but is anyone really using it?

    As well, considering that people with real money, i.e. customers, can’t make apple do anything, just how much influence do you really think the GPListas have?

    I think Apple has to impress on the development community that they are serious about openness. If people thought they were taking technologies only to lock them down and not contribute back to the community, there’d be a backlash among the tech-savvy that recommend OSX. Why do YOU think they support Darwin?

  62. Christina Warren Says:

    In doing so, of course, you make the point that the GPL has absolutely nothing to do with software or actual freedom, and everything about forcing Stallman’s point of view

    Exactly John!

    God, I was going to try to respond to some of the more intelligent parts of the discussion (which to be fair, is about 90% of it), but the accusation that anyone who disagrees with RMS is a conservative (ha! — I’m liberal and proud, not that that matters AT ALL in this discussion) and then the deluge of nonsense by the anti-Mono nutjobs is just too much. And Mono is GPL… *So over the entire non-issue that is Mono is Ubuntu — which has only been the case for I don’t know, 3 and a half years…*

    Happy 4th of July, everyone.

    Let me just say this — I don’t think any of us here are arguing that anyone doesn’t have the right to license their software under the GPL, on the contrary, it’s merely an argument that the “freedom” offered is only there if your alignment of “free” matches the FSF. That’s not always the case.

    That doesn’t make everything about the GPL bad and it doesn’t mean that any project licensed under the GPL is bad.

  63. DDA Says:

    “HERE’S THE THIRD ATTEMPT TO PUBLISH A COMMENT HERE”

    Wow, rant much? Whatever I might believe about the GPL, this kind of ranting will only make me think less of it and its adherents.

  64. Daniel Jalkut Says:

    In general I feel the tone of the comments is getting close to an “out of control” feeling, so I just want to warn people that I may shut down the comments here soon. Lots of folks have had lots of time to get out their thoughts, and lots of it has been valuable.

    I would agree that the comments from “What_GPL_means” come across as especially rant-ish. I’m never too happy with comments that seem to be more about rambling stream-of-consciousness than actually addressing anybody’s points. But I’m leaving this comment to stand as a representation of this point of view. If other comments come in of similar length and lack of focus, I will take the liberty of moderating them.

    Thanks, everybody, for maintaining a mostly civil tone here.

  65. Dallas Hockley Says:

    @Daniel – I think the conversation is quite productive so far personally. Hopefully we all can keep it logical and factual, and I totally understand and support your right to edit the discussion as you’ve disclosed that up front. Kudos on being open.

    re What_GPL_means – There’s a valuable thread in your posting I believe. The GPL got the idea started in a serious way. I most definitely don’t dispute that as I was there as it gained momentum. I think one thing Daniel was examining in the original post from my read is what’s happening today. Companies have become varying levels of partners, stewards, contributors and yes, leaches across the open source spectrum. As the understanding of the licenses, community and derivative effects evolves, participation and the nature of the communities is changing. The polarization that was present in the original manifesto of the GPL and that is still present in the ideology is not so clear cut. Companies are rarely ideological, and never pure. Such characteristics do not preclude them making valuable contributions to society, communities and projects.

    We all need to avoid making judgements and proclamations with too-broad of a brush, and with only partial information. Polarizing opinions don’t enhance the situation one whit. Microsoft may be legitimately vilified but they too have efforts and valid contributions spanning the GPL through the liberal licenses to proprietary efforts. IBM, Sun, Apple and many others all are valuable contributors and supporters of projects such as Linux, gcc, gdb to name a few. Were you to remove all the contributions of those corporations based on their clouded or non-existent ideologies, the projects would be much reduced from their current capabilities.

    The communities and the project dynamics are changing. Leave the ideologies aside for a minute and lets try to discuss where the dynamics are today, not where they were 15 years ago.

  66. Troy Banther Says:

    I see GPL as a legitimate license. You are free to accept or reject it.

    If you develop and you release it under GPL then you know the requirements of the license.

    You are free to choose.

  67. sporobolus Says:

    i’m exhausted from reading this and can’t to go head-to-head with all the points, but it inspires me to reflect on the middle ground, which i’ve found for myself and which i believe could be helpful:

    i think the conversation is far from over; we need to have vital communities around each of these license models in order to fully explore what is only the beginning of the incredible journey software on which software will take humanity; the end of GPL, or the end of commercial licenses, would be a real tragedy at this stage; so statements of the pattern “i won’t touch x” are less interesting to me than comments along the lines of “i usually prefer x but these are the circumstances under which i’ll use y”; it’s not a zero-sum game, each of these three licence categories are producing tremendous results and together they are greater than the sum of their parts

    i’m left with a few questions:

    1. how would this conversation be different with a proportionate number of end users participating?
    2. how are the communities associated with different licenses qualitatively different?
    3. why hasn’t Drupal been mentioned until now?

  68. Ty Says:

    Aside from ideologies, there is a central idea: the GPL discourages participation. This is likely true.

    But no one chooses projects solely on the license.
    > To 90% of your users, the license doesn’t matter, only the features, and the price.
    This is true for many developers as well. License, features, programming language… they are a few of the many factors governing a project.

    It’s simply not possible to use “what if” scenarios to determine software’s success.

  69. Joshua Meadows Says:

    I don’t think it’s beneficial for GPL advocates to keep regurgitating the mantra of “If you don’t like the GPL, don’t use GPL’d code.”

    Indeed, that seems to be the point of this entry. People don’t like the GPL, and aren’t using it. Companies are certainly taking an issue with it and are refusing to be involved with code that has a license based on an extremist ideology rather than purporting to fill a need.

    So they aren’t using said code; and said code is suffering because less and less resources are available to continue it. Less and less eyes looking at it, less and less use.

    An earlier commenter made the point that 90% of WordPress’ customers don’t care what the license is. I’d say that’s accurate for 90% of the people using any open source project. They don’t care as long as free remains “free, as in cost.” They aren’t looking at the code, they don’t know what GPL is, much less what it entails. But the 10% left does, and most of them are involved in coding such projects, and increasingly they seem to not be invested in the politics, they just want something to work on.

    Having to repeatedly read obnoxious comments to the effect of “if you disagree with it, shove off,” really doesn’t inspire community or participation.

  70. Martin Pilkington Says:

    @Jordan Henderson

    GCC is pretty much the end all for Open Source compilers today.

    It is today, but it has some pretty stiff competition from LLVM which is BSD licensed, which will allow for a much greater uptake and more powerful tools than GCC ever could have.

    webkit and bonjour aren’t OS technologies, they are application technology. Is darwin a real contribution? It was intended to be one, but is anyone really using it?

    You can’t nullify the fact that Apple open sources their kernel simply because it isn’t widely used by others. There is a lot of open source out there that is hardly used, but it is still open source.

    As for OS technologies Apple releases/contributes to that aren’t GPL you have ZFS, xQuartz, FSTools and launchd. They also contribute to various other projects such as LLVM and I believe Apache.

  71. Kaspars Says:

    I think there is one critical point that we all should agree on — developers like to be compensated for their work, even those of Open Source and Free Software.

    Here is my full response: konstruktors.com/blog/wordpress/1309-licencing-proprietary-vs-liberal-vs-gpl/

  72. Jordan Henderson Says:

    @Martin Pilkington

    GCC is pretty much the end all for Open Source compilers today.

    It is today, but it has some pretty stiff competition from LLVM which is BSD licensed, which will allow for a much greater uptake and more powerful tools than GCC ever could have.

    Did you only read my first line above? I pretty much conceded that there were new compilation tools that might challenge GCC, but that we wouldn’t be where we are today without GCC. There’s really little denying that.

    @Joshua Meadows

    So they aren’t using said code; and said code is suffering because less and less resources are available to continue it. Less and less eyes looking at it, less and less use.

    Less and less people are using the Linux kernel? It’s pretty much clear to me that Linux is a huge GPL success story. I don’t beleive that IBM and others would have contributed so much to it were it the case that their competitors could take their work and profit from it without contributing back to level the playing field.

    You and @Ty make the point that the GPL discourages contribution. I think that it does in some cases and doesn’t in others.

    Why is it an either-or? Why can’t we have an ecosystem where some projects are licensed GPL and others are not?

    @Dallas Hockley

    Leave the ideologies aside for a minute and lets try to discuss where the dynamics are today, not where they were 15 years ago.

    I’m unconvinced that the dynamics have completely changed. I think we have to look at the past to contextualize the present. I believe Linux has been a success where *BSD is fragmented has something to do with the license. I think this dynamic might come to play in other situations today.

    I also believe that GCC is as good as it is and has as many quality backends available, which creates powerful competition between chip architectures, has something to do with it being GPL’d. I know Intel, IBM, SUN, HP and AMD have all contributed to these backends and there would have been powerful temptation to lock their competitive advantages away had the GPL not been the license.

    I admit this is an extenuated hypothetical, but the anti-GPL people are doing this also in this discussion. They are saying there’s less contribution due to the GPL and I don’t agree.

  73. Dallas Hockley Says:

    @Jordan

    I do agree that understanding the past helps in understanding the present. I would actually point to leadership more than license for success though. LInus Torvalds is a very solid and respectable “benevolent dictator” and it wasn’t a GPL-led project. It was his project that he licensed under GPL. Look at the ongoing saga of RMS-supported kernel projects and how they have yet to distribute anything solidly usable in the last two decades, and I think that’s testament to the fact the license isn’t what made Linux successful. GNU Mach continues to languish, and the whole “GNU/Linux” branding was tantamount to a publicity stunt. GNU software is a huge part of Linux, but there’s no rant for “GNU/gcc” or anything of the sort. The license just is. GNU emacs was a popular name when many different emacs were in the popular landscape.

    I also need to point out that Intel hasn’t put the best things into GCC. Intel has optimizing compilers and optimized libraries that are *not* part of the gcc and run better than optimized gcc code on some of their architectures. Sun tried to do that but largely gcc outran them on SPARC. I think the point I would raise is enlightened self-interest. Those companies want software on their machines, and leveraging the GNU suite gets a lot more software on them than a commercial compiler and development suite (ask Sun for the facts on that one) as well as saves a whole pile of work on their part. But the real secret sauce for the extreme high-end is still reserved in commercial tools by some (not all) of those companies last time I checked. GCC is a hard compiler to tailor to a specific architecture mainly because it is geared to create very good code for all architectures it supports, not perfect code for a single instruction set.

  74. John C. Welch Says:

    Did you only read my first line above? I pretty much conceded that there were new compilation tools that might challenge GCC, but that we wouldn’t be where we are today without GCC. There’s really little denying that.

    That’s just a BIT of an exaageration, and by a bit, I mean a HUGE one. You may want to remember that there is a world outside of *nix, and they made, make, and are making money sans GCC. Seriously, the narrow, shallow, completely ignorant of computing history outside of what Stallman tells you view that the GPL fans have is appalling.

    I’m unconvinced that the dynamics have completely changed. I think we have to look at the past to contextualize the present. I believe Linux has been a success where *BSD is fragmented has something to do with the license. I think this dynamic might come to play in other situations today.

    And a perfect example of what I mean. The issue with BSD’s slow uptake has absolutely nothing to do with the license, just as Linux’s fast uptake has nothing to do with the license. Right after BSD came out, they were sued by AT&T, and that lawsuit, which of course, dragged on for two years. From http://en.wikipedia.org/wiki/Bsd:

    BSDi soon found itself in legal trouble with AT&T’s Unix System Laboratories subsidiary, then the owners of the System V copyright and the Unix trademark. The USL v. BSDi lawsuit was filed in 1992 and led to an injunction on the distribution of Net/2 until the validity of USL’s copyright claims on the source could be determined.
    The lawsuit slowed development of the free-software descendants of BSD for nearly two years while their legal status was in question, and as a result systems based on the Linux kernel, which did not have such legal ambiguity, gained greater support. Although not released until 1992, development of 386BSD predated that of Linux, and Linus Torvalds has said that if 386BSD had been available at the time, he probably would not have created Linux.

    So the license had far less to do with this than the lawsuit.

    I know Intel, IBM, SUN, HP and AMD have all contributed to these backends and there would have been powerful temptation to lock their competitive advantages away had the GPL not been the license.

    No, you don’t *know* this at all. You think it, you may even feel it, but you most certainly do not know it. For you to know it would require you to have been 4-5 people working in 4-5 companies at the same time, with access to pertinent data.

    I admit this is an extenuated hypothetical, but the anti-GPL people are doing this also in this discussion. They are saying there’s less contribution due to the GPL and I don’t agree.

    Yes, but you’re pretty much attributing every advancement in computing since the creation of the GPL to the GPL and pretty much the GPL alone, and that’s ridiculous.

    No one is saying the GPL is inherently bad, but we ARE saying it is very restrictive, esp. as compared to BSD licenses, and that in a lot of ways, the GPL’s gun does restrict its use in commercial products.

  75. mark Says:

    The GPL is extremely restrictive, there is no doubt about this. The BSD licenses are more liberal.

    My biggest complain is that Stallman touts as if the GPL gives you freedom – yes it does, but it also takes away freedom because you must stick to it. You can NOT opt out to not stick to it. In this regard the GPL is much more restricted than the BSD.

    The essence of the GPL up to version 2 however is okay – you give source code away and demand from people who modify it to contribute back to the rest of the world too. That is perfectly valid.

    GPL 3 is problematic because the FSF extended it to combat corporations, which may be a valid goal but has NOTHING to do with a license. It shouldn’t be part of a license and I refuse to use it. (I do use both BSD, GPL 2 and creative commons for my projects)

    The GPL is not the only business model – sqlite for example has a much better model than the GPL ;)

    Now, to the plugin stuff, I believe the argument of the FSF is problematic. A plugin that does not change the code of the “parent” application is NOT a derivative work. A plugin can exist on its own too, being an interface to another closed source program. The interpretation of the GPL would then dictate that everything is a “derivative” work, which is bullshit.

    The GPL would make it easier if they do this instead:
    “You may not combine your work with closed source software components.”

    This would solve the whole derivative work termn easily.

  76. Jordan Henderson Says:

    @John C. Welch

    Seriously, the narrow, shallow, completely ignorant of computing history outside of what Stallman tells you view that the GPL fans have is appalling.

    And someone was complaining about the tone used by the GPL supporters in this discussion… You don’t know that this view is narrow, shallow and completely ignorant, it’s just conjecture.

    Anyway, I’ve never really heard Stallman expound on the history of computing. Maybe some stuff about how his tools are responsible for Linux, which is hard to contradict.

    So the license had far less to do with this than the lawsuit.

    Yes, the AT&T suit stunted *BSD. But that was settled in 1993. BSD still had a HUGE lead on Linux at that time in terms of tools and stability.

    Look, Linus is by no means a Wild-eyed FSF fanatic, but he says himself that using the GPL was the best thing he’d ever done. People were attracted to working on Linux, while development on *BSD was siloed into entities like BSDi/FreeBSD/OpenBSD/NetBSD. I know, I know.. conjecture… Of course, your assertion that the “license had far less to do with it than the lawsuit” is also similar conjecture.

    I know Intel, IBM, SUN, HP and AMD have all contributed to these backends and there would have been powerful temptation to lock their competitive advantages away had the GPL not been the license.

    No, you don’t *know* this at all. You think it, you may even feel it, but you most certainly do not know it. For you to know it would require you to have been 4-5 people working in 4-5 companies at the same time, with access to pertinent data.

    Maybe I should have used two sentences to establish clear context. I know those companies contributed. No doubt about that. Are you denying that in no case there would have been temptation for those companies to keep their changes secret? Someone pointed out above that Intel keeps their best compilation secrets in their own compiler, why would they release a GCC with their changes at all (except binaries) if it weren’t for the GPL. Similarly for Sun, who found they couldn’t compete with GCC on Sparc.

    Yes, but you’re pretty much attributing every advancement in computing since the creation of the GPL to the GPL and pretty much the GPL alone, and that’s ridiculous.

    I did nothing of the sort. I only pointed out a few places where the GPL appears to have been a good thing.

  77. John C. Welch Says:

    Look, Linus is by no means a Wild-eyed FSF fanatic, but he says himself that using the GPL was the best thing he’d ever done.  People were attracted to working on Linux, while development on *BSD was siloed into entities like BSDi/FreeBSD/OpenBSD/NetBSD.  I know, I know.. conjecture… Of course, your assertion that the “license had far less to do with it than the lawsuit” is also similar conjecture.

    It’s not conjecture at all. re-read the section I quoted again:

    The lawsuit slowed development of the free-software descendants of BSD for nearly two years while their legal status was in question, and as a result systems based on the Linux kernel, which did not have such legal ambiguity, gained greater support. Although not released until 1992, development of 386BSD predated that of Linux, and Linus Torvalds has said that if 386BSD had been available at the time, he probably would not have created Linux.

    From Linus’ mouth to our ears, the reason he started Linux was not because of the license, but because BSD’s availabilty due to? The lawsuit. Note that the GPL would not have prevented the lawsuit, nor would the GPL have, as you oddly seem
    to imply, the different versions of BSD. It certainly didn’t prevent the forking of EMACS/XEMACS, nor did it prevent the gcc forking that resulted in the abandonment of gcc 2.0 for the forked version.

    I think it’s pretty clear that your attempt to imply the lack of a gun in BSD as the reason for BSD not being as popular as Linux is not going to play out, as it simply doesn’t reflect the facts.

  78. Chris Says:

    # What counts as a change to the original product?

    I think your confusion stems from this inaccuracy. The GPL doesn’t care about whether you “change the original product”. The conditions of the GPL kick in when you create anything that is a *derived work* of the original product, even if it’s not the same product.

    This makes the plug-in example very clear to me: when you write a plugin, it is a derived work of the application because it requires intimate knowledge of how the original application works to function, and clearly builds upon the work present in the core of the application, which is probably doing much of the heavy lifting for it.

    (How do you know whether a work is derived? That’s defined by copyright law, not the GPL, and in general we look to see a substantial relationship between the two works, such that the latter work isn’t able to stand alone without the former work.)

    But promoters of the GPL take the position that plugins, by nature of being loaded into the same code space as other GPL code, do constitute a modification of the original, and are therefore subject to the terms of the GPL

    No, I think promoters of the GPL take the position that plugins, by nature of being a derived work of GPL code are therefore subject to the terms of the GPL. It’s entirely irrelevant whether they modify the original code or not, just whether they derive from it significantly.

    - Chris.

  79. Chris Says:

    And on to the main argument:

    Now for the most controversial point of this article, where I suggest that the GPL does more to harm collaborative development than it does to help it.

    Well, okay, but let’s try to find some evidence for this. Is FreeBSD more popular with software companies than Linux? No, not at all — it’s popular with one company, Apple, who took the FreeBSD code ten years ago and hasn’t contributed much to that “collaboration” since; FreeBSD itself is looking more and more irrelevant each release. Linux, on the other hand, has major backing from most of the large IT companies who aren’t Microsoft/Apple that I can think of. Why weren’t they scared off to FreeBSD?

    I’m all for controversial statements, but this one seems to be lacking correlation with reality.

    It’s your party, and you’re entitled to write the guest list. But take a look around the room: not as many folks as you’d hoped for? Liberally-licensed projects are booming.

    I wouldn’t claim that Apple are “at FreeBSD’s party”. I’d claim they grabbed all the valuables and left years ago. ;-)

    - Chris.

  80. John C. Welch Says:

    Well, okay, but let’s try to find some evidence for this. Is FreeBSD more popular with software companies than Linux? No, not at all — it’s popular with one company, Apple, who took the FreeBSD code ten years ago and hasn’t contributed much to that “collaboration” since; FreeBSD itself is looking more and more irrelevant each release. Linux, on the other hand, has major backing from most of the large IT companies who aren’t Microsoft/Apple that I can think of. Why weren’t they scared off to FreeBSD?

    You keep repeating the “Apple gave nothing back” mantra, as though if you say it enough times, it will be true.

    http://www.opensource.apple.com/
    http://www.opensource.apple.com/release/mac-os-x-1057/
    http://www.macosforge.org/

    keep being the fly in your ointment. You also repeat the “Linux is more popular” mantra, as though popularity is an indication of anything but…numbers. If you keep trying to use popularity as validation, then the GPL AND BSD lose, and MS/IBM closed source wins.

    So maybe you should stop there, because it’s not going to work out for you.

    I wouldn’t claim that Apple are “at FreeBSD’s party”. I’d claim they grabbed all the valuables and left years ago. ;-)

    I can claim the moon is made of green cheese, but it wouldn’t be true. YOu can claim Apple gives nothing back, but the facts simply do not support your position.

    Unless of course, you’re trying to avoid making you *real* point, which is that you only live in binary, and if Apple doesn’t GPL EVERYTHING, then they give NOTHING back. But that would be inane, right?

  81. Dallas Hockley Says:

    @John C. Welch – Thanks for those links. I knew of macosforge, but the opensource were new to me. I would say you made the point that they contribute back a great deal to just about every license under the sun and a wide range of projects. Every time they fix a bug, it gets released as your facts show.

    I think the fact that Linux is popular and FreeBSD/NetBSD/OpenBSD aren’t as far as IBM, HP and the rest is that Linux has become a commercial venture they can get involved in, support and make money off of. The *BSD family never achieved the market penetration that the Linux distros did. I personally feel most of that was more due to drivers and easy to install distributions than license or tech or security, as various BSD flavours have exceeded Linux on various technical merits a number of times throughout the earlier lifecycle. Now I think the bulk of the coders that grok enough OS to push things forward and work for free are on Linux, and the rest are paid to work on Linux or proprietary systems. The BSD flavours are from loyalists, or people that don’t agree with some of the decisions that Raymond and Torvalds and the other core decisions makers have made. The money and bulk of the effort is going to Linux.

    I still claim the companies are operating with enlightened self-interest, not on any principled interest for Linux or the license. There is a commercial opportunity in either using, supporting, selling support, software and services on Linux or all of the above. So they support it and help move it forward. I maintain Linux got there because Linus pounded it forward guiding the masses and getting a lot of hardware working with it via a solid driver model and getting lots of drivers written for it.

  82. Jordan Henderson Says:

    @John C. Welch

    From Linus’ mouth to our ears, the reason he started Linux was not because of the license, but because BSD’s availabilty due to? The lawsuit.

    Linus’ statement only shows that had the lawsuit not been there, Linux probably wouldn’t have existed at all as he would have used BSD. That doesn’t explain how Linux took off after 1993 (when the lawsuit had been settled) vs. BSD. As I said, Linux was nowhere in 1993, and way behind BSD in functionality.

    People didn’t want to collaborate in the BSD source base for some reason even after the lawsuit had been settled vs. Linux which had a vibrant diverse community. I’d suggest it’s because of the license. Why do you think Linux was so much more popular in the years 1993-2001 vs. BSD? What impact did the lawsuit have after 1993?

    I think that same dynamic sometimes applies today, for some projects, others it doesn’t.

    Admittedly, things have changed now. BSD in the form of OSX may be more popular than Linux and it might well be due to the license.

  83. John C. Welch Says:

    Linus’ statement only shows that had the lawsuit not been there, Linux probably wouldn’t have existed at all as he would have used BSD. That doesn’t explain how Linux took off after 1993 (when the lawsuit had been settled) vs. BSD. As I said, Linux was nowhere in 1993, and way behind BSD in functionality.

    Read the history of the lawsuit again. It was settled in 1994. As to why Linus continued, who knows. Maybe he had realized that he had some interesting ideas on things that weren’t the way *BSD did it, and wanted to see it through. I’m glad he did. By actually getting a usable kernel out there, something Stallman and the FSF have yet to do, he helped make the OS market far more vibrant and interesting. The fact that every time you say “Linux” without the inane addition of “GNU” on the front, Stallman cries a little is just an added bonus.

    People didn’t want to collaborate in the BSD source base for some reason even after the lawsuit had been settled vs. Linux which had a vibrant diverse community. I’d suggest it’s because of the license. Why do you think Linux was so much more popular in the years 1993-2001 vs. BSD? What impact did the lawsuit have after 1993?

    Again, you keep saying this like BSD sat alone in a corner by the punchbowl wishing she was as popular as the Linux girl. This is of course not true. While *BSD didn’t have the PR and public eye that Linux did, it was hardly sitting alone and unused. Prior to being bought by MS, and for some years after, Hotmail ran on BSD, as did NeXTSTEP/OpenStep. That’s not small. Nor are other people using BSD who aren’t Apple, such as Ironport, Juniper, Nokia, Debian, Gentoo,

    Again, both the idea that the reason BSD failed was a lack of GPL and that a lack of GPL is why BSD is somehow languishing are demonstrably and factually *false*. The BSD license has not, is not, and I doubt will ever be a barrier to participation for anyone but those who think that the GPL is the only acceptable license.

  84. Cátia Kitahara Says:

    I’m sorry to intrude into your discussion and for my not so good English, but I think your discussion is narrowed by a lack of information on how the GPL has become popular outside your country. There’s a huge movement for it in my country, Brazil. Just last week we had the 10th International Free Software Forum, in Porto Alegre, which had the presence of our President, Luis Inacio Lula da Silva. (As you may know, Brazil is one of the biggest democracies in the world, with many problems, but still a democracy).

    … the GPL does more to harm collaborative development than it does to help it.

    The adoption of the GPL by our Government has been a real revolution that has nothing to do with political points of views, left or right. From financial Institutions, like our National Bank (Banco do Brasil) to educational institutions, such as primary schools and Universities, and to our army, in all areas the free software is being adopted. Not only it’s been adopted, it’s being developped by a growing community inside and outside the government, who is sharing its knowledge, so more and more people and institutions can use it and are getting benefits from it. In this repository you may see a list of some of the free software that’s being developped (in portuguese) available for download: http://www.softwarepublico.gov.br/pt/ListaSoftwares

    John C. Welch said above:

    To 90% of your users, the license doesn’t matter, only the features, and the price.

    The Brazilian Government is adopting the free software as a strategy of social inclusion as well as a democracy tool, where knowledge isn’t a property of a few, but it’s shared among millions. But above all, the adoption of free software also means public money is being saved. And in a poor country where corruption has drained our economy, that’s a huge thing. A recent research among 135 institutions which adopted free software pointed that our government saved 372 million reais (approximately 186 million dollars) in the last year.

    I hope this will bring a different perspective to your debate.

  85. Matt Says:

    Your biggest fallacy is “the liberal-license communities are attractive to developers from all 3 camps.”

    I’m a GPL-friendly developer that is hesitant to be involved with a non-GPL project the same way your “passion for it takes a bit of a dive” when coming into contact with the GPL.

    You could also make a fairly good argument that the majority of Open Source developers are GPL-friendly simply because the vast majority of Open Source projects are licensed under the GPL.

    I wrote more about all of this on my blog:

    http://ma.tt/2009/07/not-lonely-at-all/

  86. Chris Says:

    You keep repeating the “Apple gave nothing back” mantra, as though if you say it enough times, it will be true.

    I’ve only said it once, since this is my first reply that mentions Apple, but okay. Do you have evidence that contradicts the assertion that Apple hasn’t helped FreeBSD? FreeBSD is obviously doing very badly lately, yet Apple is doing very well compared to its competitors.

    Unless of course, you’re trying to avoid making you *real* point, which is that you only live in binary, and if Apple doesn’t GPL EVERYTHING, then they give NOTHING back. But that would be inane, right?

    I don’t live in binary. If Apple gave plenty back to FreeBSD, shouldn’t FreeBSD be in a better position than when Apple took code from it, rather than a worse one? Shouldn’t, to return to the thrust of the argument we’re having, FreeBSD be prospering in the bloom of collaboration, rather than left for dead? Maybe, in fact, the things Apple has given back aren’t really very related to or important to FreeBSD at all?

    - Chris.

  87. Dallas Hockley Says:

    @Cátia Kitahara – THANK YOU for your perspective. I remember Sun having a great launch down in Brazil a few years back. The idea of the government and public institutions using the GPL makes a great deal of sense. It is fully funded, and ensures the public knowledge is available to everyone as they all paid for it. “enforced donations” through taxes if you will.

    I don’t think that makes it more or less valid from a business point of view, but the use of it in public organizations is a very useful addition to the discussion. The downside is that the code can’t be used in a business to build the economy of Brazil unless the government allows dual-licensing. Does Brazil allow a proprietary license of the software as well for companies to use in commercial products? I think such a dual-license would be a great basis for innovation and a flurry of new startups. Everyone starts with a good platform of software and can build whole new industries upon it! And if the core is still GPL, and evolving, more and more companies can enter as time progresses, but the existing companies could have some “secret sauce” that would differentiate them and give some people some good work and jobs!

  88. Chris Says:

    Hi Cátia,

    Thanks for your post! The adoption of free software by companies that don’t want to be wholly-dependent on American corporations for their IT infrastructure seems a very important issue for growing those countries’ economies and their ability to manage their own technology needs. It’s great that President Lula showed up at the conference, I can’t imagine Barack Obama coming to a free software conference in the US. ;-)

    - Chris.

  89. John C. Welch Says:

    I’ve only said it once, since this is my first reply that mentions Apple, but okay. Do you have evidence that contradicts the assertion that Apple hasn’t helped FreeBSD? FreeBSD is obviously doing very badly lately, yet Apple is doing very well compared to its competitors.

    What ARE you basing this on? What, if it’s not as popular as you think it should be, it’s doing badly? Or is it that you don’t really know much about BSD at all, and therefore, use “I haven’t heard much about it, it must be in the tank” as your basis? You’re starting to get all over the place here, yet it’s obvious that you know little to nothing about the BSD community except that:

    1) It’s not based on the GPL and only the GPL
    2) It’s not as popular as Linux.

    *Neither* of those lead, on anything even vaguely resembling a logical level, to the conclusion that BSD is in the tank, or “doing badly”. Considering that a rather large chunk of Mac OS X is based on FreeBSD, and that as i’ve shown, Apple is contributing back to the community, even though there is no gun at their head, you keep moving your goalposts so you can satisfy your position that because BSD is not based on the GPL, it’s in the tank, and if it was based on the GPL, it would not be.

    I’ve shown, repeatedly that contrary to what you and others evidently want to believe, BSD is not in the tank, that using a license without a built-in threat is not a death knell to a community, and that Apple is actually contributing back to the community, even without a threat.

    Now, because BSD isn’t as POPULAR as Linux, it’s in the tank? Goalposts, they keep moving, but okay, since it’s all about POPULARITY now. If we SOLELY go by popularity, Windows wins, and obviously the GPL or any open source license is the death knell for a project.

    A silly assertion, to be sure, but if we’re now using popularity as our sole criteria for success, that’s the result.

    I don’t live in binary. If Apple gave plenty back to FreeBSD, shouldn’t FreeBSD be in a better position than when Apple took code from it, rather than a worse one?

    Prove this assertion with something besides popularity compared to Linux.

    Shouldn’t, to return to the thrust of the argument we’re having, FreeBSD be prospering in the bloom of collaboration, rather than left for dead? Maybe, in fact, the things Apple has given back aren’t really very related to or important to FreeBSD at all?

    Or maybe you are unwilling to admit that the GPL is not the only way to achieve success in FOSS. If you want to continue stating this, then prove it with something resembling actual data.

    Barring that, I’m just seeing blind advocacy for the GPL as the only valid license for FOSS, and a refusal to acknowledge multiple right ways of doing things regardless of data.

  90. Jordan Henderson Says:

    @John C. Welch

    From what I read, the lawsuit was settled in 1993:

    http://en.wikipedia.org/wiki/USL_v._BSDi

    Anyway, this discussion isn’t useful. You keep trying to put words in my mouth:

    Again, you keep saying this like BSD sat alone in a corner by the punchbowl wishing she was as popular as the Linux girl.

    I never said anything like this. I said Linux grew much faster and I attributed it to the license. If you want to attribute it to a lawsuit settled in 1993, fine. Noone will ever know.

    You also tend to argue by assertion, like:

    Again, both the idea that the reason BSD failed was a lack of GPL and that a lack of GPL is why BSD is somehow languishing are demonstrably and factually *false*.

    You’ve not demonstrated this to me and I doubt that your “facts” would stand up in any kind of court or scientific enquiry, which is where facts are evaluated.

    I never advocated a single license to rule them all. I said that the GPL is an important part of the ecosystem and you seem to disagree, although it’s hard to tell with all your ranting.

  91. Chris Says:

    @John C. Welch:

    Now, because BSD isn’t as POPULAR as Linux, it’s in the tank? Goalposts, they keep moving, but okay, since it’s all about POPULARITY now.

    Actually, I think popularity is a reasonable metric to use, given that the argument we’re having involves comparing the amount of collaboration happening over each software project. What is “collaboration”, other than having many disparate companies using and contributing to your source code? Should we compare the number of patches from outside companies to each? I think we both know that Linux comes up winning in every metric. If the amount of collaboration happening is something you’re indifferent to, are you perhaps answering a different question than the one Daniel’s post has raised?

    I think the amount of collaboration from different groups is especially important when the claim is that business will be turned away from software with a particular license, which is demonstrably untrue in this case.

    - Chris.

  92. John C. Welch Says:

    Actually, I think popularity is a reasonable metric to use, given that the argument we’re having involves comparing the amount of collaboration happening over each software project. What is “collaboration”, other than having many disparate companies using and contributing to your source code? Should we compare the number of patches from outside companies to each? I think we both know that Linux comes up winning in every metric. If the amount of collaboration happening is something you’re indifferent to, are you perhaps answering a different question than the one Daniel’s post has raised?

    If popularity is your major metric then based on every metric, historical, user base, third party contributors, all of them, closed source, non-free software wins.

    Maybe you don’t want to use popularity as your major criteria for sucess. You also may wish to not indulge in zero-sum. It is easily and entirely possible for a community to be alive, thriving, and healthy without being the biggest or being in lockstep with your political views. BSD has, outside of Mac OS X never been a particularly user-oriented OS. So, it doesn’t directly compete with windows, nor is it considered “sexy” by most. So it is in some ways a smaller community, in other was a larger community.

    However, the assertion that because it doesn’t subscribe to a specific political platform, doesn’t put a gun at the community’s head, or is seen as being as popular as Linux means that it is a dying or even stagnant community is, in every way possible, ludicrous.

    It further shows that the GPL faction is only interested in software and software development peripherally to the political stances it pushes.

  93. Pedro Figueroa Says:

    Two things I’ve not seen yet in this discussion are an explanation of the purpose of the licenses and background information as to the purpose’s why.
    BSD, MIT, etc, (university) type licenses were issued at universities. Their purpose was/is to allow alumni to take the software developed in the institution and use it to further their carriers. This in turn served as prestige enhancing promotion of the university to new students.
    So alumni would go for their $multibillion companies (SUN, SGI, etc.) while the university attracted super talented students that would repeat the cycle.
    The purpose of the university licenses has not changed and this is independently of who adopts one of them for their software. Even today, it is to provide software in exchange for prestige enhancing promotion.
    The GPL on the other hand is the product of one man who, after having developed the most advanced editor of the time, found himself without access to enhancements to it made by some third party. It’s been a long time and I don’t remember if RMS had to pay for emacs but this (and an issue with a printer driver. The manufacturer refused to give him printer specifications) marks the birth of the GPL which has as its purpose to guarantee the four freedoms. Study, use, change and distribute GPL licensed software.
    Both license types reflect the historical context in which they originated as well as the intention of their creators.
    On the argument of which is freer, it depends on whose view point we’re talking about.
    Kerberos was free to MS but their “enhancements” were not to the users or developers.
    The GNU tool chain is also free to MS and to the people they distribute it to. the software and developers are not affected in that case.
    Basically BSD, etc. software freedom can be too ephemeral whereas GPL software is free generation after generation.
    I would suggest that when you want GPL software to not be GPL, remember this business of selling emacs to RMS.

  94. What_GPL_means Says:

    to Pedro Figueroa:
    “Two things I’ve not seen yet in this discussion are an explanation of the purpose of the licenses and background information as to the purpose’s why.”

    Yes, I tried to outline the general, political context of the GNU movement in a comment buried somewhere in teh thread.
    Check the comment by “What_GPL_means” above

    It’s very characteristic that apart from sniggering no one took the issues raised there.
    It’s also very telling, that I was threatened by a ban by the author of the blog just for expressing those ideas.
    American “free speech” as understood by americans, aha.

    And to add: the two points that Brasilian etc. – non-american – authors added, that of freedom from control of their information infrastructures by US corporations and yours, on different purpose of even “open source” as reflecting positions of institutions versus a group of commoners united in their work on a project,
    are very true indeed

  95. Watts Says:

    Sort of an interesting discussion, although not entirely unpredictable.

    Nobody’s actually brought up the best argument I’d have using the GPL, though: sometimes you might actually want to restrict what people can do with your code. If you’re a company that’s decided, for whatever reason, to release a given software package as open source, maybe you don’t want your competitors to be able to take it and build something proprietary on top of it and charge money. Even if you’re a sole not-for-profit developer, you might not want that. It doesn’t strike me as too difficult to understand why, if the developer of FantasticWidget decides to give his stuff away for free, he might choose a license that makes it impossible for somebody else to repackage it as FantasticWidget Pro for $99.95.

    Granted, describing the GPL as being a good thing when you consciously want to restrict the use of your code runs counter to the whole “it’s all about freedom” line, but it strikes me as far more accurate. Restricting what people can do with your code is your prerogative as the copyright holder.

    @Chris: do you have evidence that supports the assertion that “FreeBSD is obviously doing very badly lately” or the assertion that Apple hasn’t helped FreeBSD (it’s not clear what kind of “help” you mean, since it’s not clear in what sense you think FreeBSD is doing badly)? I’ve seen arguments that FreeBSD 5 was something of a fiasco and that the project lost a lot of momentum around that time, but even if that’s true, it’s hard to see what it has to do with Apple or anyone else but the FreeBSD core team.

  96. Scott Wilson Says:

    A few points:

    I find the ‘GPL gun’ analogy unhelpful, and actually demeaning to the parties involved, who are after all free agents entering into a voluntary agreement. To be blunt, if you feel using GPL’d software points a gun at your head, well, you’re the one who put it there. The GPL has no power to force people into agreements.

    I work in academia, and I think in that context the GPL is very useful, and is in keeping with traditional (i.e. non-corporate) academic ideas and values about the exchange of knowledge, and good-faith reciprocal relationships. I don’t think it’s the best license for every situation. Social benefit and monetary profit are sometimes overlapping and sometimes conflicting goals.

    It is obvious that in terms of maximising the potential for monetization by individuals or corporations the GPL is not the least restrictive license. However most of the discussion here of how it limits this has been in terms of the software business (probably indicative of the audience!). In terms of making money through software *use*, the GPL is a very liberal license, and provides great potential for profit and economic benefit. The fact that you can extend and use the software in house without releasing your improvements is fantastic in this respect.

    I’d like to think that we can agree that simply using the GPL does not mean you agree with everything Stallman and the FSF says. To many people it’s really just a software license, and they’re interested in what that does for them and their project, not anybody’s political agenda. The slow uptake of v3 demonstrates this I think, as many people (e.g. Torvalds) feel it does go too far in a political direction. There is nuance here!

    Unfortunately, it seems it’s impossible to use the GPL (v2) without being accused of being part of the ‘GPL Faction’. For this reason I’d like to propose a fork: the GNG License. GNG is short for ‘GNG’s not the GPL’. In function it’s exactly like the v2 but has no association with Stallman, the FSF, or any confusing rhetoric about freedom. Sound good?

  97. John C. Welch Says:

    Nobody’s actually brought up the best argument I’d have using the GPL, though: sometimes you might actually want to restrict what people can do with your code. If you’re a company that’s decided, for whatever reason, to release a given software package as open source, maybe you don’t want your competitors to be able to take it and build something proprietary on top of it and charge money. Even if you’re a sole not-for-profit developer, you might not want that. It doesn’t strike me as too difficult to understand why, if the developer of FantasticWidget decides to give his stuff away for free, he might choose a license that makes it impossible for somebody else to repackage it as FantasticWidget Pro for $99.95.

    The GPL doesn’t stop this in the least. All it says is that you have to make the source for FantasticWidgetPro available. But you can easily sell your modifications as a commercial product if you want. So it won’t stay proprietary for long.

  98. John C. Welch Says:

    I’d like to think that we can agree that simply using the GPL does not mean you agree with everything Stallman and the FSF says. To many people it’s really just a software license, and they’re interested in what that does for them and their project, not anybody’s political agenda. The slow uptake of v3 demonstrates this I think, as many people (e.g. Torvalds) feel it does go too far in a political direction. There is nuance here!

    I’d like to think that too, however, when you start any discussion that posits the idea that there are disadvantages to the GPL on any level, you soon see that the percentage of pragmatists in the GPL world are really, really small. This discussion is a (small) example of this.

    Unfortunately, it seems it’s impossible to use the GPL (v2) without being accused of being part of the ‘GPL Faction’. For this reason I’d like to propose a fork: the GNG License. GNG is short for ‘GNG’s not the GPL’. In function it’s exactly like the v2 but has no association with Stallman, the FSF, or any confusing rhetoric about freedom. Sound good?

    Well, to be blunt, if you use the GPL, that is an indication that you do support at least some of the political aims of the FSF et al. It’s unavoidable, because Stallman and the FSF have made the GPL far more political than pragmatic.

    That’s a shame, because while yes, the GPL is a gun at your head, (While things like LLVM/clang are being done because the gcc team tends to be slow to respond on certain compiler issues, it’s also a way to create an alternate tool chain that is truly free of any form of encumbrance. There’s been a slow movement towards rewriting GPL code under an actually free, as opposed to politically free license), there are times when that gun is handy.

    While I disagree with the central GPL paranoia (NO ONE WILL CONTRIBUTE OR KEEP CODE OPEN SOURCE IF YOU DON’T FORCE THEM TO!!!!), the effectiveness of the GPL, especially with regard to Linux, is undeniable. But I think, as some others have pointed out too, that a lot of companies are seeing the advantage in contributing and being a helpful part of the FOSS community for a pragmatic reason:

    It makes your life easier in the end, and helps you make money.

    A quick example: Early on in OS X’s history, up to 10.1, Apple didn’t use CUPS. Instead, they tried to implement their own print architecture, “Tioga”. It was okay I guess, but they realized that it was kind of stupid to do this when there was a perfectly good printer architecture out there already, and face it, there’s nothing earth-shattering about printing. It’s kind of a well-understood process. No matter how hard you try, the chances of doing anything new with printing approach zero.

    Apple used CUPS, made some contributions to it, most notably DNS-SD, so it would work with Bonjour, and eventually hired the developer and bought the dev’s company. They’re still making CUPS available under a split “Apple Fork”/GPL license from what I’ve read, so the people who use CUPS who aren’t Apple still can.

    Apple didn’t do *any* of this because of any pie-eyed optimism, or political cause. They did it purely out of pragmatism. CUPS solved a problem for them better and faster than they were going to invent it on their own, and they keep it GPL’d because that will help them, and the rest of the CUPS community continue to solve problems better in the future.

    IBM realized this…well in some ways ages ago, in other ways not so much. Sun always got it, even MS is getting it, (although because of the lawsuits, they are in a VERY weird place. For example, from what I’ve heard, MS Devs are not allowed to even LOOK at non-MS source for anything related to MS projects. Straaaaaange Brew.)

    I think this will continue and expand, with or without the GPL, (and if more projects go GPL 3, the “without” will accelerate), but not because there’s any political advantage. It will continue to happen because it makes good business sense for the companies involved.

  99. Scott Wilson Says:

    I’d like to think that too, however, when you start any discussion that posits the idea that there are disadvantages to the GPL on any level, you soon see that the percentage of pragmatists in the GPL world are really, really small. This discussion is a (small) example of this.

    I disagree. IME, most developers using the GPL are pretty pragmatic, and really just want to exert some control over how their intellectual property is used, and to potentially benefit from that use. That’s anecdotal, but I’ll pit my anecdotal against yours any day.

    I suspect that the percentage of vocal GPL pragmatists is small compared to vocal GPL evangelists, but that’s almost by definition.

    Well, to be blunt, if you use the GPL, that is an indication that you do support at least some of the political aims of the FSF et al

    Okay, which ones?

  100. Chris Says:

    @John C. Welch:

    FreeBSD is obviously doing very badly lately, yet Apple is doing very well compared to its competitors.

    What ARE you basing this on? What, if it’s not as popular as you think it should be, it’s doing badly? Or is it that you don’t really know much about BSD at all, and therefore, use “I haven’t heard much about it, it must be in the tank” as your basis? You’re starting to get all over the place here, yet it’s obvious that you know little to nothing about the BSD community except that:

    It’s true, I thought that FreeBSD’s decline was going to be accepted as known fact. Here, then, are some simple metrics:

    * the number of CVS commits (as measured by the cvs-all list) in the first six months of 2004 averaged 5041 (min 4476, max 5907).
    * the number of CVS commits in the first six months of 2009 averaged 2357 (min 1924, max 2759).

    If anyone would care to propose another way to measure contributions to FreeBSD code, I’m happy to try to look at that.

    So, we keep coming back to the main argument: if it’s true that the GPL forces companies to run away, and that BSD license more strongly suggests that a project’s going to prosper, why is the available evidence showing a GPL project with a healthy contributor base and many large companies invested in its success, and a BSD project with less than half of the “collaboration” it had five years ago?

    - Chris.

  101. John C. Welch Says:

    Mike, you um, may have noticed that there’s more to BSD than just FreeBSD. OpenBSD. NetBSD. Etc.

    As well, seriously? CVS commits? You abandon “popularity” as your sole criteria, (because face it, that was so non-specific that you were losing), and now, you decide as your new sole measurement that CVS commits are all that count?

    Sigh. So since MS doesn’t use CVS, then no one develops any code whatsoever for any MS products, therefore Windows is a complete failure in the real world, and no one uses it. No one is using any OS at IBM but Linux and maybe one guy using AIX, because the public CVS commits approach zero. Fail.

    Oh wait…

    Let’s see…CVS as a sole criteria..so all SVN-based projects are also failures, because hey, they aren’t trackable on your one metric.

    All projects not on CVS don’t count in Chris’s world.

    This.Is.Not.A.Single.Counter.Issue.

    The issue here is simple:

    In your world, if it isn’t GPL-based, it’s a failure. Period, and you’ll keep changing measurement criteria until you find one that you like that shows only GPL-based projects are a success.

    A further problem for your attempt to wall off BSD from GPL is that there is no wall in reality. There’s a lot of GPL code in BSD, and a lot of BSD code in various versions of Linux. Why? Because the licenses are compatible, so you can mix and match both. So the truth is, there’s a GOB of cross-pollination between the two. OpenBSD is a bit different, but OpenBSD has a different set of criteria than the other BSDs and Linux: Security, Security, Security. Oh, did I mention Security? So you can probably get away more with looking at OpenBSD separately than the others, but the idea that you can completely separate the other BSD’s and Linux is insane.

    In addition, you offer no specifics on what you’re even talking about for CVS commits, which means you leave off the natural flattening on a mature project. For example, if you start writing new code, or start a new version of existing code, your CVS commits are going to be REALLY HIGH compared to a project that is not in active development. Does that mean your project is better?

    Of course not. It could be at a .1 version, buggy as a swamp, and completely unusable for more than a second or two. But because it’s new, or sexy, or both, it’s going to get more work done, hence your SCM commits go waaaay up. Even if in the end, a very small number of people directly use it.

    The other project could be used by millions, but because it’s not terribly sexy, or doesn’t need a lot of work, the SCM commit-count on it is going to be low.

    Using the commit count for a *single* SCM implementation as the sole criteria for saying something’s dying is exactly as valid as using downloads as the sole criteria: Not at all. I’m glad you say it’s a simple metric, because it is, but it’s only valid for one thing: CVS commits to FreeBSD. It is not, in any way, a valid measurement for the health of an entire *community*.

    Have I ever said that *BSD overall, discounting Apple, (because well, Apple, and their developer community, is a rather huge problem for your BSD IS TEH FAIL argument, and we’ve already clearly shattered your attempt to say Apple contributes nothing back, so I guess this is all you have left) is as big or as popular as Linux? No.

    What I have said is that the *BSD communties are doing well, by their own standards. They are not Linux, which is a good thing, because we already have Linux.

    But whatever. I’m sure you’re going to come back with yet another “statistic” that shows only GPL projects you like are successful, Apple has contributed nothing to any community anywhere, and all non-Linux OS’s are failures.

  102. Otto Says:

    On the contrary, WordPress being GPL is one of the primary reasons for its success, and the main reason that it gets so much development for it in terms of plugins and such. Without the GPL, somebody can simply steal your code, make it commercial, and make a profit on it.

    The so-called “liberal” licensing model you mention stifles innovation because such code gets adopted by closed source developers who then fail to contribute back to the project. Mac OSX is a prime example, when has Apple ever contributed back to the OS that they stole to build their own operating system around?

    True freedom doesn’t cover the freedom to get your work ripped off, IMO.

    Liberal-license communities are off-putting to many developers simply because they’re acting as unpaid coders, not getting anything back in exchange for their participation. With a GPL community, you get back improvements to the software, guaranteed. Your contributions are recompensed by others contributions.

    That said, I’ve released code under both models in the past. Code I don’t care actively about anymore gets a BSD style license, allowing anybody to do whatever they like with it. Code I do care about gets GPL-licensed, to ensure it remains open and free for all to use. Which code would you rather run?

  103. Daniel Jalkut Says:

    @Otto: Your argument stands on its own merit without resorting to inflammatory, inaccurate accusations of theft. It’s inappropriate to refer to commercialization of liberally-licensed code as “stealing.” I don’t know what compels you to use language like this but it weakens your argument and makes you sound like your arguments are politically motivated.

    Misidentifying a legal, licensed use of source code in a closed commercial product as “stealing” is not only disrespectful to the licensees who are doing nothing wrong, but to the original code authors who have made a point of granting the most liberal of licenses to their work.

    I encourage anybody to commercialize and reap profits from my MIT/BSD licensed code.

  104. John C. Welch Says:

    The so-called “liberal” licensing model you mention stifles innovation because such code gets adopted by closed source developers who then fail to contribute back to the project. Mac OSX is a prime example, when has Apple ever contributed back to the OS that they stole to build their own operating system around?

    http://www.opensource.apple.com/
    http://www.opensource.apple.com/release/mac-os-x-1057/
    http://www.macosforge.org/

  105. Otto Says:

    @Daniel Jalkut: I call it stealing because that is exactly what it is. If somebody uses a piece of code I wrote and doesn’t compensate me for it in some way, then it’s theft. The method of that compensation can vary, of course.

    Like I said, I’ve used those licenses before. Code I don’t care about gets a BSD style license. No compensation is expected in those cases, because the code has no value to me.

    @John C. Welch: Darwin is not the same as OSX. OSX is, and remains, closed source.

  106. Daniel Jalkut Says:

    @Otto You seem to be willfully overlooking the fact that the code you accuse of having been “stolen” is in fact licensed under BSD or MIT licenses. So the authors of that code “don’t care” either.

    It’s presumptuous and offensive for you to cast accusations of theft on transactions that don’t affect you, and which have absolutely zero indication of theft. People who license their code with liberal licenses do not expect compensation, and that is sort of the point.

  107. Daniel Jalkut Says:

    NOTICE: Comments closing tomorrow Tuesday July 7.

    There has been a lot of good dialog here but it seems to be spiraling now into a lot of circular debate where bluster is the tone of choice on both sides.

    Rather than allow this to go on in perpetuity, I’m planning to close comments tomorrow.

    For those of you who feel invested in the debates that have been taking place here, please wrap up your thoughts as you see fit by the end of the day, today.

    Thanks for taking part in my blog’s community. I’m always impressed when a lively conversation rises out of the aftermath of one of my posts.

    Daniel

  108. Chris Says:

    @John C. Welch:

    Let’s see…CVS as a sole criteria..so all SVN-based projects are also failures, because hey, they aren’t trackable on your one metric.

    John, I think you’ve seriously misunderstood how FreeBSD development works. The entire distribution is checked into CVS; that’s where releases are made from. I agree that it would be inaccurate to only look at CVS counts if FreeBSD were also using another SCM for its code, but it isn’t — the CVS repo is the home of the distribution by definition.

    Sigh. So since MS doesn’t use CVS, then no one develops any code whatsoever for any MS products

    Now you’re being ridiculous. The reason I chose CVS is that it’s the SCM that FreeBSD uses, see? If it used a different one, I would have chosen that.

    I’m glad you say it’s a simple metric, because it is, but it’s only valid for one thing: CVS commits to FreeBSD. It is not, in any way, a valid measurement for the health of an entire *community*.

    That’s fine. I’m not totally satisfied with it as a metric either, which is why I asked for suggestions on something else to look at. It should not, after all, be impossible to work out whether the gradient on collaboration to FreeBSD code is positive or negative, even if we have to use crude measurements. Do you have any suggestions?

    In addition, you offer no specifics on what you’re even talking about for CVS commits, which means you leave off the natural flattening on a mature project.

    This sounds like it might be a reasonable explanation. We have two competing hypotheses: one is that FreeBSD development has naturally flattened, and one is that FreeBSD is just not a very healthy community anymore. If it is true that Unix distributions see flattening over time as a natural course, I expect we will see the same phenomenon in other distributions such as Linux/Ubuntu/Fedora and so on. If we don’t, I don’t think it makes sense to claim that a Unix distribution would naturally flatten out after some years; again, I think it contradicts reality.

    I think that Linux is receiving monotonic growth year after year. (Again, which I can crudely measure with commit counts if you like, or use a better metric if you have a preferred one that we can get to.)

    - Chris.

  109. Chris Says:

    @Otto:

    I call it stealing because that is exactly what it is. If somebody uses a piece of code I wrote and doesn’t compensate me for it in some way, then it’s theft. The method of that compensation can vary, of course.

    I’d like to make it clear that I thoroughly disagree with Otto here, and agree with Daniel. If someone distributes a piece of code you wrote *outside of the wishes you made clear when you released it*, that’s theft, whether it’s a pirated copy of Windows or a copy of Linux without corresponding source. If you made it quite clear that your wishes amounted to “This is my code, please use it for whatever you want, including making proprietary software”, it’s ridiculous to come back and claim theft later.

    - Chris.

  110. Scott Wilson Says:

    @John C. Welch

    As this is going to close down, I’ll try again:

    .

    Well, to be blunt, if you use the GPL, that is an indication that you do support at least some of the political aims of the FSF et al

    Okay, which ones?

    Seriously which ones does it indicate that you support? I’ve seen this accusation made in many forms, but rarely clarified with specifics. You have to admit it’s a bit vague, something like saying if you support one policy advocated by a politician you must support all of his or her policies.

    It seems to me like guilt by association, but perhaps I’m misunderstanding you. What specifically do you mean by this? Which political aims does using the GPL indicate that you support in your opinion?

  111. Chris Says:

    Scott said:

    It seems to me like guilt by association, but perhaps I’m misunderstanding you. What specifically do you mean by this? Which political aims does using the GPL indicate that you support in your opinion?

    As I think Scott’s already pointed out once, Linus Torvalds identifies as fundamentally disagreeing with the most basic of the FSF’s politics, including “software should be free”, and has said publicly that he thinks the FSF is pretty crazy. I can’t imagine a more compelling example of someone who uses the GPL, likes the GPL, and rejects pretty much all of the FSF’s politics.

    - Chris.

  112. Otto Says:

    @Daniel, @Chris, you’re both assuming that the authors of the code are implicitly okay with their code being used because it was BSD licensed (or equivalent).

    However, I’d argue that unless you have spoken to every developer of that project, ever, you cannot make that claim. As can be pointed out by others more skilled with words than I am, perhaps the developers to this project didn’t know the implications of the license, or maybe they simply contributed to the project which was already licensed in that manner.

    My point is that while commercial use of such code may be perfectly legal, what is “legal” and what is “right” are not the same thing at all. Somebody could easily feel ripped off when their code is used in such a way, and no compensation is given. The bad part about it is that under these “liberal” licenses, there is no legal recourse.

  113. Chris Says:

    @Otto:

    Oh, okay, that makes more sense. I contribute to X, and would prefer it to be under the GPL instead of BSD, because there are regular instances of companies taking the X code and producing non-free work on top of it. I can’t say that I feel like they’re stealing my code, though — if I did strongly feel that way, I wouldn’t have much motivation to contribute in the first place. It was my choice whether or not to join a project that I knew used the BSD license.

    My point is that while commercial use of such code may be perfectly legal, what is “legal” and what is “right” are not the same thing at all.

    I think that, when code is BSD-licensed, it is both legal and right to use it in accordance with the license. I’m not going to take advantage of that to make proprietary software myself, because that’s not something I’m interested in, but I don’t think I have reasonable justification to criticize someone else for doing so.

    If you, or a consensus of developers working on a project, want it to be GPL instead of BSD there’s nothing stopping you from re-licensing it. If that hasn’t happened, one has to conclude that the developers really meant that they wanted to use the BSD license when they decided to choose it.

    - Chris.

  114. Dallas Hockley Says:

    @Otto , &Chris – If a developer contributes code to a project without understanding the license they are releasing it under, I’m afraid they have no case and no grounds to complain. As most have stated in this entire thread, the developer has a choice. As does the user. Developers don’t need to write code for a project with a license they don’t agree with, and developers don’t need to use projects that are released under a license they can’t or don’t wish to use. Nobody can read the mind of the developer. If you want control over the uses of your code, then don’t release it as open source. If you are willing to release some control, find a license you agree with *regardless of the company that uses it*. The user needs to abide by the legal terms of the license.

    What you can’t do with open is make arbitrary “I like this company I don’t like that one”. The license is a bidirectional open agreement with open source. You don’t need to contribute to use it. BSD, MIT and others *can* be commercialized by companies.

    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
    1. Redistributions of source code must retain the above copyright
    notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
    notice, this list of conditions and the following disclaimer in the
    documentation and/or other materials provided with the distribution.
    3. The name of the author may not be used to endorse or promote products
    derived from this software without specific prior written permission.

    That’s the end of your conditions in the BSD sample license. You waive all other rights by not asserting them in the license. For developers that don’t understand the license, please, please don’t release your work under it then. Just as you shouldn’t sign a contract you don’t understand, you shouldn’t provide software under licenses you don’t understand, as the two things are very much the same concept.

  115. Sigivald Says:

    The GPL position on plugins is, indeed, bullshit.

    That one must have “intimate knowledge” to make one is not only a) false if the API is good and b) irrelevant.

    The license says what it says, and it’s a legal document made for legal purposes (the FSF’s propaganda); to try and extent it for political reasons where it does not go isn’t going to cut it under any sort of challenge.

    Basically, you can’t force anyone to use any given license in some code they wrote from scratch using arbitrary tools on an arbitrary system. You can say “we don’t support non-GPL plugins” or “non-GPL plugins make The Baby Stallman sad” or anything else, but a viral license simply can’t cross the boundary into some other code just because it was loaded on the same machine and implements an interface*.

    I can’t comprehend any legal framework under existing copyright law where that could possibly work – and as far as it being “morally justified” outside of a legal context, well, that’s hilarious. Lots of luck with that one.

    (* Or uses the right sort of IPC or whatever mechanism is used for the plugins.)

    (And on the “GPL/FSF” thing, I think that using the GPL means only that you think something you wrote should be freely available, and you chose the GPL for it.

    It might mean nothing more at all other than not wanting to write your own license or caring. It might mean you agree with everything Stallman ever said. But the only thing it definitely means is that you chose that license – and that doesn’t mean you put any thought into it or its implications.)

  116. Daniel Jalkut Says:

    @Otto – the debate over licenses is difficult enough when you base it no the logical premise that people who are granting their work under a specific license are doing so with full knowledge of what that means. I think it’s a useful, separate conversation, whether people are liable to grant an inappropriate license for their work because of ignorance or through coercion, but it’s not really pertinent to the discussion here.

    Consider the hypothetical victim of “theft” that you describe, who is somebody who contributed code to a BSD/MIT project without a full understanding of the implications the license had on their work. It’s no fault of the license if their code is used in projects that defy their wishes. In the worst case, blame could be laid on the project who accepts the changes, for not making it clear what license the author is granting by contributing code. But most logical of all is to put responsibility on the author to understand what rights they give up by when donating work.

    As an example of how fruitless this kind of “hypothetical” is in evaluating the true merits of a license, I can turn it around easily and suggest that the contributors to GPL projects have been hoodwinked into allowing their code to be used in restrictive projects that do not allow the freedom they had hoped for.

    The only reasonable premise from which to argue the merits of these licenses is to assume that the licenses are being applied legally by authors to their own work, and that they accept the implications of the license.

  117. Phi.Sanders Says:

    Instead of debating the licenses, take a step back at the source of the frustration Daniel wrote about. He was looking at some GPL project and thinking that it had some value to him, that by using it he could make something new and charge for it.

    Left there, it sounds like a good thing… user gets new feature, developer gets new revenue, win/win.

    Except that, to create this thing, according to the GPL license, he would have to open source his work, and give his labor to all comers.

    Of course, legally, he could still sell the product, it’s just that someone else can trivially use the published source to make the same product/service, which would have the practical effect of reducing the easily remunerable value of Daniel’s labor.

    In short, the business case no longer makes sense to him, unless he can guarantee exclusive monetary capture of the required labor. Of course, that is a fearful thought, of sinking time (therefore money) into a hole.

    It follows then, that the obvious alternative is to still create the new product/service, but to do so by either licensing a proprietary library of equivalent functionality; or by creating the needed functionality in-house, at a greater expenditure in time/money than envisioned. That a GPL library may exist that uniquely does something does not change the equation, other than the magnitude of what you would have to do to replicate it, or pay to license some equivalent of it.

    So again, the business case is weakened for this new proto-creation. It’s hard to make it profitable. Frustration sets in and the thought arises :

    “If only the GPL didn’t restrict me from taking this library, and forking it, to extract value from it exclusively for myself…”

    In short, it’s a case of greed, and I mean that non-pejoratively as it’s a natural human response to this sort of catch-22. You wish to change the constraints that reduce your idea’s viability as a product, so that you can realize it’s potential. It’s just that it may not economically viable.

  118. Frank Says:

    Wow. Quite a discussion you kicked off there, Daniel. Considering how emotions can run high on such topics, it’s been amazingly civil all things considered.

    Just a few observations if I may. First, to be clear, I’m what I would call a pragmatic idealist. That is, I tend to be idealistic in my thinking, but I’m not an idiot when it comes to the ways of the world (i.e., I’m not a zealot). So the emotional levels shown in this thread, while all valid and in most cases articulated well, just don’t strike a nerve for me.

    I believe it takes all kinds, and as noted early in the comments, you basically have proprietary licenses and open source licenses, and in the open source arena there are the GPL-ish licenses and the MIT/BSD/etc. licenses. Personally, there’s room for all kinds of licenses, and regardless of people’s emotional feelings, that’s reality. As much as we might want product A to be GPL’d or product B to be BSD licensed, that’s not our decision to make. The decision of a software license is up to those creating that software.

    Now for some developers, they choose proprietary licensing because they feel it is their intellectual property, they’re insecure in having others see their code, they’re afraid of competitors taking their code and–in essence–taking food from the developer’s plate, what have you. In fact, correct me if I’m wrong, Daniel, but your Mac products–Mars Edit and Black Ink–would fall into this category… that is, proprietary licensed. You don’t offer the source code to your products, or did I miss that on your site? (Seriously, I looked for a license page but didn’t see it.) And assuming this is correct, this is your choice. You’re an indie Mac developer, after all, and let’s face it, if you gave away the source to Mars Edit, someone might take it, rebrand it, and cut off your income.

    But it does unfortunately smack of irony when a developer of proprietary software complains about an open source license. I realize you were making a specific point about WordPress plugins, but you can see how, to an outsider, that might sound a bit contradictory. Of course you’d prefer a BSD/MIT style license. You could in such cases, if you so chose, take without ever giving back. As an indie developer, that’s a very attractive proposition. Why reinvent the wheel when you can copy/paste or use libraries others have written?

    And yes, realistically, that is what happens with such liberally licensed software. But then, that’s the authors’ intent, isn’t it? I mean, if they didn’t want you using their code without necessarily “kicking back” code improvements/etc., they would not have used that license.

    But those who chose a “viral” license like the GPL have their own reasons for doing so. And yes, while it’s very clear that there are ardent folks in both camps and emotions can run high, I don’t really agree with those who say one side or the other “rants” more or, in the case of GPL supporters, that they’re all about… what did one person write?… “hippies giving corporations the finger” attitude.

    Different developers choose the open source license they choose for a variety of reasons. Some folks create incredible libraries or tools that they want to simply share with the world in a purely altruistic way, and they choose a liberal license. Others do so in hopes that their code will become the de facto standard for whatever it is they’re doing. Still others, who may also be altruistic but have a more jaded view of the world and have seen how certain companies (and here you can insert pretty much any major corp. at some point in time) take open source code and never contribute anything back (even a “thank you”, let alone financial or coding support to the original project), choose a license like the LGPL/GPL because they want to share their code with the world, but they think it requires such a license to make sure everyone benefits should someone use the software.

    I do agree with some who wonder about the possibility of a GPL-like license that applied only to the GPL’d code itself, not necessarily “spreading” to the entire application that may use a piece of GPL’d code. But that’s a tough one to write I suspect. How do you draw the line between modifications to code and an app which just uses the code? If I link to the (currently GPL v2 licensed) libpurple library that is the foundation to Pidgin and Adium in an app that incorporates XMPP but also does calendaring, is that a modification? What if it does calendaring, email, and word processing?

    The truth is, we can debate all we want. Licenses are here to stay. As for one being any more “right” than another, I can’t honestly say that. Each license has its advantages/disadvantages, and it’s the developer’s right to choose which fits his/her view of the software world best.

    I enjoyed (for the most part) reading the comments to your post as it reminds me of the constant evaluations I have had to make over the years. I idealistically believe in the general open-source movement. I am not a fan of “silos”, of software potentially locking my data up without having recourse (though this is more open open standards than open source), and I like the idea that, if I wanted to, I could get under the hood.

    For those who say this only applies to those who can program, I’d posit that nobody would be terribly keen on buying a car that came with the hood welded shut and that only the dealer could get into. I may not be a mechanic, but I can certainly tell if my oil is low, change a headlight, and do other basic work. And for other work, having the choice of who to take that car to is important to me. Ditto for software.

    But as to which license I would pick if I were creating a new project? It depends. Ditto for which open source software I might use in a project (e.g., Trolltech’s Qt or wxWidgets?). For those who say one license trumps all others, I would say that I beg to differ. Each has demonstrated its successes and failures in certain instances. While we may want software to have one license or another so that it fits our view (e.g., a BSD-licensed library sure would be more flexible for me to use in my own projects), would any of us want to be denied the choice of license to use for our own software?

  119. Stephen Says:

    Chris, I think you’ve forgotten the most compelling evidence for the demise of BSD: Netcraft confirms it.

  120. Chris Says:

    @Stephen:

    Chris, I think you’ve forgotten the most compelling evidence for the demise of BSD: Netcraft confirms it.

    Especially apropos given that I previously worked at Netcraft. ;-) (But did not have “confirming the death of BSD” amongst my job responsibilities.)

    - Chris.

  121. Arnold J Says:

    Every OSS survey out there shows that MOST OSS is GPL. Therefore any OSS which is not GPL is not playing nice with the rest of the OSS world. It is very easy to be GPL compatible and many licenses are but the GPL still dominates.

    Had you researched anything, like the distribution of licenses in OSS projects you wouldn’t have made these silly claims.

  122. The Mad Hatter Says:

    Daniel,

    This about the fifth time in the last 5 years that someone has had an epiphany about the GPL, and came to exactly the same conclusion. Isn’t that curious? Very curious?

    As to an answer to you, Developers don’t form groups like that. Instead Developers form groups based on the software that they want (unless they work for a closed source company, in which case they are assigned a project).

    So the Project comes first. Next comes the license. Here are a couple of examples:

    You want to build a newer, better, TCP-IP stack. You want the world to use it. Obvious choices are the BSD and MIT licenses.

    You want to build a super duper media player with TIVO like capabilities, because, hell, you can’t afford a TIVO. An Apple TV would be nice too, but you can’t afford it either. This is not a simple project, you want to make sure that you get code contributions back because otherwise it might never be finished. Obvious choices are the GPLV2 and GPLV3 & Later licenses.

    You want to build a new Desktop using a user interface you’ve designed yourself. You’d like to get code contributions back, but you want to let it be used in other projects, so you dual license it under the GPLV

    super duper media player with TIVO like capabilities, because, hell, you can’t afford a TIVO. An Apple TV would be nice too, but you can’t afford it either. This is not a simple project, you want to make sure that you get code contributions back because otherwise it might never be finished. Obvious choices are the GPLV2 and GPLV3 & Later licenses.

  123. The Mad Hatter Says:

    Sorry Daniel – mouse problems caused this to post before I finished it.

    *****

    This about the fifth time in the last 5 years that someone has had an epiphany about the GPL, and came to exactly the same conclusion. Isn’t that curious? Very curious?

    As to an answer to you, Developers don’t form groups like that. Instead Developers form groups based on the software that they want (unless they work for a closed source company, in which case they are assigned a project).

    So the Project comes first. Next comes the license. Here are a couple of examples:

    You want to build a newer, better, TCP-IP stack. You want the world to use it. Obvious choices are the BSD and MIT licenses.

    You want to build a super duper media player with TIVO like capabilities, because, hell, you can’t afford a TIVO. An Apple TV would be nice too, but you can’t afford it either. This is not a simple project, you want to make sure that you get code contributions back because otherwise it might never be finished. Obvious choices are the GPLV2 and GPLV3 & Later licenses.

    You want to build a new Desktop using a user interface you’ve designed yourself. You’d like to get code contributions back, but you want to let it be used in other projects, so you dual license it under the GPLV3 or later, with a note that special licenses are available.

    While the license used by a project is part of the attraction, the reason a project gets developers is that it’s something that the developer needs or wants.

    Very few people who are interested in Free/Open Source Software will be interested in working for a closed source project. Very few people who work for closed source projects will be interested in working for Free/Open Source Software projects. So you can count the closed source people as not being in play.

    And as to license usage, check the Black Duck site, I think that GPL licensed projects account for over 70% of the Free/Open Source Software projects that they track, so it’s obvious that a lot of developers like what the GPL does for them.

  124. Chris Says:

    @Mad Hatter:

    And as to license usage, check the Black Duck site, I think that GPL licensed projects account for over 70% of the Free/Open Source Software projects that they track, so it’s obvious that a lot of developers like what the GPL does for them.

    In particular, that’s:
    http://www.blackducksoftware.com/oss

    I think Daniel’s actually making a more subtle point than “the GPL is unpopular”, though — he’s saying that, even though most free software projects use the GPL, they might be getting more contributions if they didn’t. Since 99% of the software industry currently thinks that free software in all forms is crazy, the argument goes, that’s a large pool of developers who might contribute to free software if they weren’t being put off by all the presence of all the people who require that their donated code shouldn’t turn into non-free code later.

    I don’t agree with Daniel’s conclusion, because I think it flies too much in the face of observed reality regarding examples like FreeBSD vs. Linux, and I think an extraordinary claim (“the most popular free software license, as used by some of the most successful free software projects which have plenty of backing from big business, is actually a really poor license because it doesn’t strongly attract contribution”) should require extraordinary evidence.

    But it’s true that his what-if scenario of “maybe your project would be doing better” is harder to knock down than by merely saying that, amongst free software licenses, the GPL is a popular one. So you haven’t done that.

    - Chris.

  125. Dallas Hockley Says:

    I just did a search on Google Code using their license search feature. Quick scouting with their estimate numbers does show a majority of GPL, but interestingly, there are quite a few BSD and Apache files INSIDE GPL projects. In many cases these are more utility libraries and functions that provide some fundamental services and features that are often present in more modern language cores like Java, Ruby and others.

    I’ve got the full count and table over at my blog for anyone interested in looking at the numbers.

    Maybe there is a hierarchy of licenses, in the utility code in Apache, BSD, MIT etc and the commercially viable protected from getting commercialized if so desired by the GPL. Either way *both* communities and styles of projects benefit from the liberal licenses. Even the GPL. I wonder if the coders contribute back to the BSD license utility libraries when they fix things and modify and extend them? ;-) (I’d guess yes as it’s not that political with the majority of developers, and it’s the right thing to do)

  126. Cátia Kitahara Says:

    I don’t think that makes it more or less valid from a business point of view, but the use of it in public organizations is a very useful addition to the discussion. The downside is that the code can’t be used in a business to build the economy of Brazil unless the government allows dual-licensing.

    Dallas Hockley, but it may be used in a business, why not? Also, free software as well as any other software needs support, this is a great incentive for small businesses to grow and without royalties all their profit sticks with them.

    Thanks for your post! The adoption of free software by companies that don’t want to be wholly-dependent on American corporations for their IT infrastructure seems a very important issue for growing those countries’ economies and their ability to manage their own technology needs. It’s great that President Lula showed up at the conference, I can’t imagine Barack Obama coming to a free software conference in the US. ;-)

    It is really an important issue. Let me add some more numbers, to illustrate how true is what you said: In year 2007 Brazil exported 250 million dollars and imported 3 billion dollars in software, just think about it! Why is that? Maybe because 97% of our computers runs Windows?

  127. Dallas Hockley Says:

    @Cátia Kitahara – ah, let me clarify.

    Dallas Hockley, but it may be used in a business, why not? Also, free software as well as any other software needs support, this is a great incentive for small businesses to grow and without royalties all their profit sticks with them.

    You cannot extend the software and then market it as a proprietary solution. Many businesses including those I’ve worked for use many open source software projects and tools. They don’t market products based on them though. There is nothing to stop a competitor or your customer from simply downloading the code if your product is GPL. You need to sell support to pull in revenue. I didn’t clarify which role the software was fulfilling. My bad. If you want to make a business off of support, that can be done on either GPL or any other licensed software should you choose. Absolutely true.

    As for the trade deficit, I would venture a guess that if you take Microsoft Operating Systems, Microsoft Office, Oracle and Microsoft databases, and Oracle, Microsoft and SAP business software you probably account for well over half the 3 billion dollars. Just a guess based on experience from IT shops in a few big companies. “One throat to choke” is a mantra of many a CIO, and there aren’t many open source projects that warranty their software. You need to pay for the throat. :-)

  128. Daniel Jalkut Says:

    Thanks, everybody for participating. Closing comments now. This makes a pretty good artifact I think for anybody who wants to read into to the thoughts & motivations on all sides of the argument.

Comments are closed.

Follow the Conversation

Stay up-to-date by subscribing to the Comments RSS Feed for this entry.