Forgot your password?
Software Businesses

Is Apache Or GPL Better For Open-Source Business? 370

Posted by Soulskill
from the less-filling-tastes-great dept.
mjasay writes "While the GPL powers as much as 77% of all SourceForge projects, Eric Raymond argues that the GPL is 'a confession of fear and weakness' that 'slows down open-source adoption' because of the fear and uncertainty the GPL provokes. Raymond's argument seems to be that if openness is the winning strategy, an argument Michael Tiemann advocates, wouldn't it make sense to use the most open license? Geir Magnusson of the Apache Software Foundation suggests that there are few 'pure' GPL-only open-source projects, as GPL-prone developers have to 'modify it in some way to get around the enforcement of Freedom(SM) in GPL so people can use the project.' But the real benefit of Apache-style licensing may not be for developers at all, and rather accrue to businesses hoping to drive adoption of their products: Apache licensing may encourage broader, deeper adoption than the GPL. The old GPL vs. BSD/Apache debate may not be about developer preferences so much as new business realities."
This discussion has been archived. No new comments can be posted.

Is Apache Or GPL Better For Open-Source Business?

Comments Filter:
  • by zooblethorpe (686757) on Wednesday April 29, 2009 @11:21AM (#27759733)

    [The] essential matter is whether the software in question is a tool you use or the product you sell itself. If it's just a tool, the GPL makes sense, so you get contributions back. If it's your product itself, neither GPL nor Apache makes sense.

    And there you hit the nail on the head. If the software is the means to some other end, then yes, the GPL or some derivative would seem to make the most sense, in order to ensure that any improvements someone else might come up with are propagated back into the main branch. I would wager that this holds true for most FOSS projects -- and the SourceForge figures of 70% of projects using the GPL would seem to back this up.

    But if, as you note, the software is the end in itself, if it is the product one is trying to sell, then proprietary is really the only way to go, simply from the perspective of locking others out.

    And therein lies the crux of the conflict -- those keenest to use any piece of software are also keenest to see it spread and improve as quickly and efficiently as possible, while those trying to sell any piece of software are less interested in improvements than in maintaining exclusive control. These would appear to be orthogonal goals. The alternate model of giving the software away for free and charging for service instead adds an interesting wrinkle to the equation.


  • by Animats (122034) on Wednesday April 29, 2009 @11:52AM (#27760117) Homepage

    From the FAQ: Why is someone else's User Name appearing on my User Page's Menu?
    This is not a bug. This is a feature! That name is the last user page (besides your own ;) that you have visited. This is useful when you want to hop around between your user info, and someone else's: to compare friends and foes for example. Your account has not been hacked, this is totally by design.

    It's a badly implemented feature. You don't really have someone else's identity, it just looks that way. Maybe. It may have a bug that lets you use someone else's mod points. I just got a "Moderate" button from someone else's account.

  • by ChunderDownunder (709234) on Wednesday April 29, 2009 @12:01PM (#27760269)
    He and Stephen Colebourne are engaged in a bitter propaganda war with Sun (now Oracle) over JCP licensing for Apache Harmony.

    The linked article's comments should be seen in that light.

    Long before Harmony existed, there was a GNU clean-room implementation of Java called Classpath. In the interests of the community, the thing to have done for free software would be to obtain implementation completeness and then 'pony up' the money to Sun to certify (Cacao/JamVM/Kaffe + Classpath) as Java compatible.

    Perhaps Sun wouldn't have allowed that but... Instead, the backers of Apache sought to create a second clean-room implementation, namely Harmony (Code and financial resources of IBM, & others - according to wikipedia). 'They' choose to hire developers to implement Java again from scratch a second time in the hopes of bullying Sun into giving them the JCK for free. It would have been sensible before work started on Harmony 4 years ago to negotiate licensing. Now there's a standoff but in whose interests does it serve to have 2 almost compatible implementations? As one javalobby poster bluntly put it recently []:

    Apache Harmony is just a cheap IBM trick to attempt to wrest control of Java from Sun. It failed miserably when Sun GPL'd Java so that the source could not be integrated into Harmony. Apache is not an altruistic organization formed of developers donating code off hours. It's financed and draws developers from large companies such as IBM that have their own agendas, good and bad.

    So in this case, the Apache license benefits faceless corporations. I believe GPL is a good license for Sun's Java, as it prevents closed forks. Apache are arguing it's good to have a JVM distinct from the reference implementation. Again, good for whom? IBM, so they can release a proprietary JVM for Websphere? Google, so they can plunder bits of it for Harmony?

    In response to the above quote, Oracle may also have their own agendas for Java but at least now the code is GPL'd. Red Hat, the main contributor to IcedTea, could fork it at their leisure for the goodwill of the people - any changes they make would be subject to the GPL. Forks of Harmony don't have the same protections. And yeah, I trust Oracle more than I would IBM!

  • by 2short (466733) on Wednesday April 29, 2009 @12:03PM (#27760293)
      I work for a company that makes closed source software. We have a few pieces of core code we're not willing to open. But to make that stuff useful, we integrate with vast amounts of other tools and libraries that aren't our critical core, that we're perfectly happy to share with others.
        So the first thing we look for when we need some particular functionality is a BSDish license. We can use it however we need to, but we, and others can all share our improvements. As a result, we wind up spending a fair bit of money paying developers to write open source code on BSD projects.
        GPL is a deal killer. We can't use how we need to, so we respect the authors wishes and don't touch it. Unfortunately, that means we're never going to contribute any code to a GPL project.
        So while in theory GPL requires quid-pro-quo contributions, in practice BSD gets more. At least from me.
        Please note that if you are just philosophically dedicated to GPL and don't want no stinkin' code from dark-side sometimes-closed-source developers like me, I have no problem with that.
  • by ActusReus (1162583) on Wednesday April 29, 2009 @12:03PM (#27760303)

    The business model for making money off support doesn't really change all that much when you use the GPL vs. whatever. If anything, you MIGHT get more business if your code uses a permissive license... because more companies are willing to adopt permissively-licensed products. I haven't really seen that play out anecdotally, though. I still think it's neither here nor there.

    As for your claim that the GPL is "better" for standards and protocols... better for whom? It may be "better" for the creator in terms of giving him power to block proprietary derivative works. However, it will have less adoption in derived works precisely because it limits that flexibility (which, for a protocol or standard, is not better). This is the age-old heart of the GPL-vs-permissive debate... how to balance "freedom" for end-users vs. freedom for derivative works.

    For an example of licensing a "standard", look at GTK vs. Qt. The Qt library follows your advice and uses the full-blown GPL, while the GNU-backed GTK library uses the more permissive LGPL. I note with irony that GTK is FAR more widely adopted, in both open and proprietary products, than the Qt library which follows RMS to the letter. The thing is, if you build your application around Qt you lose the flexibility to someday sell the thing without having to buy a commercial license. This reveals an unpleasant reality: that underneath all the Che Guevara and V for Vandetta ranting, many free software guys simply don't want to pay for stuff... yet they want to retain the right to get paid themselves.

    Human nature is human nature... and even on free software's home turf, people are more reluctant to adopt a GPL'ed library or protocol than a permissive-licensed one.

  • Realities (Score:5, Interesting)

    by PhotoGuy (189467) on Wednesday April 29, 2009 @12:15PM (#27760505) Homepage

    While I appreciate all Stallman and FSF has done, I still prefer the BSD-style license (you're free to do what you want with this code, including not being free with your changes :). Forced freedom isn't true freedom, IMHO. But that's a philosophical debate.

    In more practical terms, businesses operate with restrictions. They have fears of licensing problems, code contamination, and lawsuits and such. A less restrictive license such as BSD/Apache/X Windows (which, if I understand correctly, merely require attribution, not giving away your business code if it interfaces too tightly with open source content).

    Honestly, what's the problem with BSD over GPL? So I take a BSD kernel (for example), hack it up with my fancy mods, resell it as a proprietary product. I am required to note, hey, this product uses BSD software under the hood. Any competitor is free to grab the same base software, and apply his own talents to competing with me.

    I take a a GNU product, apply some of my special magic to it, and I'm screwed (businesswise, at least). I have to give away any enhancements I make. Blah. LGPL at least lets me use compilers, interpreted languages, libraries, and so on, as a bit of dodge. (I feel LGPL only exists because if it didn't, everybody would run screaming from GPL, and it would have died long ago. I can't link to a freakin' library without releasing my code? No thanks.)

    I think that bears repeating: LGPL has helped keep GPL'd software in use. That a sign there's a problem there, IMO. With the lines between libraries, compilation, interpreters, interfacing, web access, becoming blurred (and Stallman wanting web services to have to release code), I think it's becoming more and more of a problem.

    In a perfect happy world where all our needs and wants and income is taken care of, GPL all the way, man... But in world where one has to express one's talents to make a living, the socialistic ideal of GPL just doesn't jive with business.

    In practice, I use GPL'd software a lot, and I am appreciative. But other than for the odd bug fix, I shy away from *ever* touching the source code, period; from a business standpoint, it'd be death.

    On BSD style code I've used, I've gone in, made enhancements, and redistributed things; and when I found bugs in the core of the stuff I've worked with, I've contributed back. (But not my new, proprietary enhancements.) So I've been motivated to contribute more to the BSD-style-license world, than the GPL one.

    If I'm rich some day, and can afford to work on some projects for free, I will likely contribute to GPL projects as much (although I still have the restricted-freedom philosophical problem). But while I'm in business, I won't spend any significant amount of time enhancing GPL code. It's sad, but it's a harsh reality of our world.

  • by coryking (104614) * on Wednesday April 29, 2009 @12:21PM (#27760583) Homepage Journal

    Feel free to write your own if that doesn't fit in with your plans

    Your assertion that I'd have to suffer the "punishment" of writing my own is a false dichotomy that hinges on me either being able to "write my own" or use GPL code. This isn't the case.

    GPL doesn't have a monopoly on open source. GPL has some real competition from alternative open source licenses. Unless your GPL code has a very compelling reason for me to use it, I'll pick the BSD code every time. If enough people do the same thing, the GPL will become a small player in the open source market. If GPL becomes a small player, the GPL backers lose all their leverage.

    You are free to hold your world view, but don't think I have to conform to it when I can just pick up some BSD code down the block, use it, and contribute to that instead. The competition in the open source world is heating up, and to be frank, I dont see a bright future for GPL.

  • by coryking (104614) * on Wednesday April 29, 2009 @12:28PM (#27760665) Homepage Journal

    77% of sourceforge projects are under GPL

    95% of the projects on sourceforge are rubbish that either has no release or hasn't been updated since 1992 so what does that 77% tell me? Nothing. Here is something more intereting:

    Firefox - Used everywhere, Not GPL
    Apache - Used everywhere, Not GPL
    OpenSSH - Used everywhere, Not GPL
    Perl - Used everwhere, Not GPL
    PHP - Used everywhere, Not GPL
    Ruby - Used everywhere, Not GPL
    Rails - Used everywhere, Not GPL
    PostgreSQL - used everywhere, Not GPL

    My point? Dunno, but I woudn't be using sourceforce for gathering statistics.

    Not in need of your pity right now

    No pity. I dont really care, honestly. Software is a tool, dammit. Not a religion. I left linux because of the politics. I just want something that works.

  • by chris-chittleborough (771209) on Wednesday April 29, 2009 @12:29PM (#27760683) Journal
    The FA is not about licenses in general. Instead, ESR makes a fairly narrow point about the long term economic efficiency of producing software. Assume for the sake of argument that the Free/Open-Source approach to development is superior to closed-source approaches. (Most of us, including ESR, think this is true.) In this case, he argues, the GPL has no economic advantages for software production over less restrictive licenses, though it is useful as a

    ... signaling behavior, like wearing a crucifix or yarmulke or pentagram - it helps build trust groups. But it has costs, too â" it creates a lot of needless fear from potential allies and users who suspect they wonâ(TM)t be able to control their exposure if they let it in.

    He goes on to say

    So the correct question to ask is this: Is the GPLâ(TM)s utility as a form of in-group signaling worth the degree to which fear and uncertainty about it slows down open-source adoption? Increasingly I think the answer is âoenoâ.

    There's some useful discussion in the comments, but you'll probably have to wait until the slashdotting dies down before you can read them.

  • by mellon (7048) on Wednesday April 29, 2009 @12:31PM (#27760729) Homepage

    It's actually pretty difficult to contribute to dual-license GPL projects - they'd rather do the changes themselves and not risk legal hassles. What they want is bug reports.

    When I was maintaining the ISC DHCP distribution (BSD license, BTW), I dreaded getting large patches, because I'd have to go through the whole damned patch and figure out what it actually did, and correct it. I much preferred bug reports. The idea that patches are why people open source things is really a red herring - sure, if you get a regular contributor who's really good, you can start to trust their work, but that only works for projects like linux where you have a huge number of interested geeks.

    So really, what's going on with a dual-licensed model is that the owner of the copyright is using the FUD of the GPL to get people who don't trust open source or don't want to open source their own code to pay for non-GPL copies. At the same time they are offering the GPL version to the community of people who like the GPL, which spurs adoption. It's a win for everyone.

    The problem with the BSD license is that the only way to get money out of it is charity, because there is no license FUD. Nothing wrong with charity, but it can make paying the bills a bit difficult.

  • Just look at Unix (Score:3, Interesting)

    by gr8_phk (621180) on Wednesday April 29, 2009 @12:35PM (#27760775)
    To answer your question - no. If Linux were BSD licensed, it would have essentially been another BSD Unix. The big Unixes could use code from BSD if they wanted and they kept themselves closed and eventually died (except for IBMs Unix). BSD itself is not nearly as well supported as Linux.
  • by coryking (104614) * on Wednesday April 29, 2009 @12:53PM (#27761035) Homepage Journal

    See, you are rational. Your "team", like any, has plenty of zealots on it that are more than happy to mod "my team" down, or call me a leech, or whatever. I think part of the reason you guys get more traction is cause you have more lout-mouth activists. BSD folk are pretty chill, so we dont get much visibility.

    Of course you have RMS. We've just got that OpenBSD guy Theo. I'll take Theo cause at least nobody outside of a small group has heard of him :-)

  • by tennesseejim (1294164) on Wednesday April 29, 2009 @01:11PM (#27761299)
    GPL vs. Apache really does matter a great deal. I work for a very large (15 billion) dollar news and information corp. Apache licensed projects are aok to use for any of our products. GPL is strictly verboten by our legal division. Like it or not, GPL precludes the retention of corporate IP, even if the libraries are used unmodified. I would encourage any open source projects that want to be considered in mainstream (for profit) IT shops to use an Apache or an Apache style license.
  • by Bruce Perens (3872) * <> on Wednesday April 29, 2009 @01:28PM (#27761567) Homepage Journal
    You make me really glad that I use GPL3 and AGPL3. I want customers or Open Source developers. You aren't asking to be either.
  • by spitzak (4019) on Wednesday April 29, 2009 @02:00PM (#27761991) Homepage

    There were good posts above but this has devolved into a typical flameware between people who see the GPL and the BSD as the only two possibilities.

    What I would very much like to see is something that is "what people think the LGPL probably means before they read the fine print":

    You can use the source code unchanged in any way you want in your software and distribute the result. However if you modify the source code to use it in your result, you must release your modifications (but not the rest of your program) under the same license.

    In my opinion additions that don't require modification of your code are going to be creative work and thus should belong to you. But you should not be able to "steal" my code by making tiny changes to it and closing the result. I think a lot of people feel the same way.

    Now this sort of license has been made dozens of times, and is often called "GPL plus a linking exception". The problem is that there is no common three-letter name so nobody can easily refer to this license, so there is license proliferation.

    I think the FSF is to blame for forcing thier philosophy by activiely avoiding creation of the license described above and giving it a nice short name with a 'G' in it. No other organization seems to have the clout of the FSF to get a name standardized.

    There are also commercial intereste to blame, they know this sort of license would address all the arguments against the GPL without removing the ability to compete that the BSD does. Their tactic seems to be to argue that there is no middle ground, and also to pollute the license namespace with hundereds of BSD licenses so that any such license that gets any popularity is buried.

  • by Geof (153857) on Wednesday April 29, 2009 @03:46PM (#27763319) Homepage

    Here is political scientist Steven Weber, writing about the tendency toward different governance styles for projects using BSD-like and GPL licenses (when he writes "Linux" he means it as an exemplar, not the only instance):

    BSD-style projects typically rest with a small team of developers who together write almost all the code for a project. Outside users may modify the source code for their own purposes. They often report bugs to the core team and sometimes suggest new features or approaches to problems that might be helpful. But the core development team does not generally rely heavily on code that is written by users. There is nothing to stop an outside user from submitting code to the core team; but in most BSD-style projects, there is no regularized process for doing that. The BSD model is open source because the source code is free. But as an ideal type, it is not vitally collaborative on a very large scale, in the sense that Linux is.

    Weber, Steven, The Success of Open Source, 2004, pp. 62-63.

    Assuming his claim is true, this may be because developers see the two licenses differently (e.g. contributors may feel greater incentives to contribute to GPL projects, or they may have principled reasons, or it may have to do with their identity and membership in a community). Or it may be because of the kinds of projects that pick the licenses: the typical BSD structure he describes mirrors that of big companies, perhaps because they tend to choose such licenses. Personally, I suspect all of these factors contribute. But then I find them to be compelling reasons to pick the GPL.

  • by Angst Badger (8636) on Wednesday April 29, 2009 @04:03PM (#27763543)

    If your goal is wide acceptance in the business world, then yes, the Apache license or BSD or, for that matter, public domain is far better than the GPL in most cases -- other posters have noted the glaring exceptions.

    If your goal is maximum utility for individual users, then the GPL or a close relative is the way to go.

    The thing about ESR and RMS is that they approach the issue from diametrically opposed positions and assume that everyone must follow their lead, when the fact is that motivations vary. I was interested in Free Software from the beginning for reasons that were (and remain) essentially altruistic: I wanted to help develop software that would be useful to individual users and accessible to individual developers of like mind. I don't care one way or the other if anything I've done becomes especially popular or widely adopted in the business world, though I have contributed to projects that were.

    ESR and many of his supporters, on the other hand, do care very much whether their work is adopted by the corporate world, and many of them are hoping to profit from it. While that's not to my personal taste, it's all fine and well, and I support their freedom to take that approach.

    That said, it has often seemed to me that if you want to write software for the corporate world and to make decent sums of money at it, it makes a lot more sense to just get a programming job at a corporation or start a closed-source software company. I know there are a lot of folks out for world domination with varying amounts of tongue-in-cheek, but I've never been convinced that there is any tangible benefit for individual users (including myself, when I'm using rather than coding software) to be derived from massive corporate adoption of most FOSS software. Conversely, there is a great deal of risk, not to corporations playing with "viral" licenses, but to the freedom of free software itself, when you play games with large corporations with lots of money and attorneys. In such a contest, the small FOSS project is always overmatched unless it aligns itself with another large corporation, which entails even more risk.

    Anyway, the long and the short of it is that we have many different kinds of free/open licenses for the simple reason that developers have many different goals for their projects. One size does not fit all, ESR and RMS to the contrary.

  • Some sort of dividend? Sounds interesting, and .... simple enough.

    That is possible. What I am thinking of is a covenant to continue the development as Open Source for two years after the contribution, or to remove the contribution.

  • by Bruce Perens (3872) * <> on Wednesday April 29, 2009 @08:49PM (#27766827) Homepage Journal

    To make sense of this you have to think about quid-pro-quo. If the company has contributed a lot of code under the GPL, and expects to continue to do so, having a way for the company to pay for that is a fair quid-pro-quo for the company.

    If the contributor gets something back for their code contribution, that is fair for the contributor. The problem is that most dual-licensing projects don't even promise the code will continue to be free for one day after your contribution! And a few years back, Sun made an agreement with Microsoft in which they promised to rat out on their own Open Source developers and help Microsoft prosecute them for infringement. Fortunately, it appears they never really did that, but it didn't make people happier about signing over copyrights to Sun.

    So, I propose to give my developers a covenant that the company will keep development in Open Source for two years after their contribution, or remove their contribution.


Bus error -- please leave by the rear door.