Is Apache Or GPL Better For Open-Source Business?
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."
GPL or Apache doesn't really matters -- what matters is if you can make money. There 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.
Be relentless!
in that the Apache license dealt with patents (which, being outside copying is still able to ensure you can never use the original BSD licensed code if someone takes a patent on it) and therefore was a better BSD than the BSD license.
It isn't
"If you want to make money modifying the software, the GPL is a disaster."
It's if you want to make money modifying SOMEONE ELSE'S code, the GPL is a disaster.
If it's your own code, you can add non-GPL bits to your code and still make monopoly rent.
If it contains someone else's code under GPL, you can still make money from the modifications, but you won't make a monopoly rent from it.
Woops, you seem to have heard some rumor, misunderstood it, and then attempted to spread it as if it were truth.
The real story is that hard work has been done to make the GPL3 *compatible* with the Apache License 2 (or APL v2, ASF is the 'Apache Software Foundation' and not a license).
Compatible, ie that GPL3 software can link too APL software, is new (GPL2 code wasn't able to link to/include Apache licensed code), is new.. But that is not at all the same as being *equal*, the APL is a BSD like license which means you can do pretty much almost anything with it (as long as you include the copyright headers and notice/readme files), while the GPL3 has many restrictions that the APL doesn't have, the best known one being the viral clause that says you can only link to GPL'd software if your product is GPL too.
Please stop telling people the APL2 and the GPL3 are 'equal', legal issues around licensing are confusing enough without this type of miss-information :)
Moot point, not "mute".
I opened this article and was somehow in a different users account; I refreshed several times, and got at least a half dozen user accounts other than my own.
The only reason people ask this question is because they take a simplistic "one fits all" view of Open Source.
A great many ways have been tried to make money from Open Source. Dual-licensing is one of the best. It requires a strong copyleft license.
On the other side, if you are investing your own time, without pay, in an Open Source project, having folks run away with it in their commercial product makes you feel like an unpaid employee with no rights. So, a lot of people use the GPL because of that.
Apache or BSD licensing is really good if you want everyone to use your stuff regardless of what they do with it. There are many strategic reasons to do that, for example if you are trying to evangelize a standard way of doing things (that, perhaps, ties into some other aspect of your business and will eventually make you money).
Companies that apply BSD or Apache licensing to their products are really severely limiting how they can possibly make money from that product. Having seen some of these companies fail (I've not been directly involved in one, yet) it sounds like a bad idea.
The company I'm working on now does use dual licensing.
Bruce Perens.
Good for you.
I, personally, don't see many companies getting behind BSD. Neither would I, personally, want to contribute to a piece of code that could be taken, used, altered and distributed in a closed way with no recourse to having people open it.
The fact that you say I can trust you to contribute back does not help.
There will always be a significant number that think my way, and a significant number that think yours. Just don't pretend like I'm losing out by not doing things your way, it's by design and it's very simple.
What you see as not letting you contribute back, I and others would see as refusal to open up more of your work.
Exactly, it's an 'if you aren't with us then you're against us' mentality, and most people decide to pick 'against us' when confronted by that attitude. Which of these do you think benefits the Free Software community most:
Personally, I'd pick option 3. In an ideal world, the new project would be open too, but I have the option of not using it and I don't really care if people create a few million proprietary programs that I don't have to use. If they contribute back any code to the community, it's a net win.
The problem with the GPL is that it doesn't permit compromise. Unless you fully agree with the FSF's philosophy then the GPL keeps you on the outside. Take a look at GCC for an example of this. Apple wanted to be able to use the parser and semantic analysis bits for syntax highlighting. The GPL stopped them from doing this without opening up all of XCode, which they didn't want to do. The outcome? Apple stopped contributing the GCC (a loss - they wrote a lot of the PowerPC back end, did a lot of work on SSA and vector optimisations) and switched to focussing on LLVM and writing a new C language family front end for it. Apple gets a new modular parser for C-family languages and can use it in XCode. The rest of the world gets a BSD licensed C/C++/Objective-C compiler built on top of a powerful optimisation framework. And what does GCC get? The switch to GPLv3 also managed to alienate the BSDs, so they lost more contributors there.
So, did we lose an IDE? Maybe, but considering that Apple were willing to write a new parser for it, it doesn't seem like open sourcing XCode was really very likely. What did we gain? A new front-end for C-family languages. A new back-end for ARM systems. I suppose you could say we lost a GLSL implementation when Apple implemented their shader fall-back JIT on top of LLVM too, since the license meant that they didn't have to release their code. If you said that, however, you'd be missing all of the improvements they made to LLVM to make it suitable for this which are now being used by Tungsten Graphics' new graphics driver architecture for *NIX systems (Gallium3D).
I am TheRaven on Soylent News
"Firefox - Used everywhere, Not GPL"
Actually, it is. Firefox is triple licensed as GPL, LGPL and MPL. All of these licenses are so-called "copyleft" to some extent, requiring back contribution.
"Perl - Used everwhere, Not GPL"
Again. It is. PERL is dual licensed GPL and the Artistic License. The Artistic License has less restrictions than the GPL, but more restrictions than the BSD license.
"Ruby - Used everywhere, Not GPL"
Yet again. It is. Ruby is dual licensed GPL (all of it) and the Ruby license (some of it). The Ruby license does allow commercial and proprietary use, but certain parts of Ruby is not covered by the Ruby license.
Besides this name dropping is pointless. I can counter with other examples (at least with your definition of 'everywhere').
Linux - Used everywhere, GPL
OpenOffice.org - Used everywhere, GPL
MySQL - Used much more everywhere than PostgreSQL, GPL
Samba - Used everywhere, GPL.
The main point is that loads of projects see great adoption even if they use the GPL. So using the GPL to cover your bases, doesn't seem to be a great deterrent.
The Free Software Foundation considers the Apache License, Version 2.0 to be a free software license, compatible with version 3 of the GPL.
As always with these sorts of rants:
Please name exactly the GPL project that you would use if it was BSD licensed. You may need a pretty elaborate and bullet-proof explanation as to how it is impossible for you to use this project without releasing your source code as well.
In reality all reusable code is LGPL or linking-exceptions or BSD or whatever. You list the reasons developers do this, but you seem to like turning it into an anti-GPL rant, rather than realizing that your own arguments are exactly what makes GPL not affect you.
GPL is used on projects where the author cannot imagine any modification that would be anything other than a competing project.
Then don't use it, your choice. Please stop thinking that Open Source == Public Domain. GPL is specifically written to make sure that it can only be used by pieces of software that are similarly licensed.
No, the actions of those folks were unethical.
But, and here's the thing, the BSD license allows them to do that! That's precisely the behaviour that use of the GPL seeks to stop!
Nope. Your "loophole" doesn't exist, you cannot link either dynamically or statically on top of a GPL'ed piece of software without your code being GPL'd. But as with all copyright infringement (which is exactly what you are describing), a copyright owner has to complain / sue you. In the case of proprietary Linux modules, they are tolerated by Linus and other kernel developers because they feel they add value anyway. So it's a tolerance that might as well stop tomorrow.
:). So what you're saying will work only if the original authors don't want to enforce the GPL for a particular case, and you should ask them first -- they will never say they don't care officially, but you can still test the water if you like to play.
Why is Nvidia safe? Because they don't themselves distribute GPL'ed code. They only distribute their modules which are very similar to Windows or Mac drivers. The only Linux-specific parts are the interface/hooks and this is rarely considered as derivative work (it really depends on the interpretation of the judge at the trial), so that's how far the legal uncertainty goes for Nvidia.
If the user himself links proprietary to GPL'ed software, he is safe: the GPL has no provision preventing the end-user from any usage. However, the ones who are distributed GPL'ed software automatically linking proprietary modules to the kernel are.... Ubuntu and other distributions (note that Debian does not). They are actually the ones most likely to be sued if a kernel developer with copyright relevant to the graphical subsystem in the Linux kernel (or some code from which it was derived) wanted to go against the flow (because, most kernel hackers stopped caring even if Greg K-H complained about it, and obviously Linus doesn't give a shit because he's "rational").
Now, do the same with a GPL'ed project whose copyleft belongs to the FSF and it will be another story altogether. I think it might hurt
I agree this licensing stuff is tricky, but the GPL actually works and makes sense (but if I lack sleep I can't wrap my head around it).
Seriously, troll much?
It's not so people can't take the code away, it's so they can't even use it without giving changes and enhancements back.
What's shocking is your ignorance of the reasons behind people using the GPL.
"And that's why it's unethical: because it attempts to dictate its morality on other people. It's headfucked."
And you're dictating yours, you fucking moron.
"These people should work for free and let me do what I want with their code! WAAAAAAAAH!"
Don't like the license, don't fucking use it. But stop bleating, for god's sake, it's pathetic.
After my last comment, i went to look a bit at wikipedia, and, what do we get:
http://en.wikipedia.org/wiki/Darwin_(operating_system)
----------------8----------------
On July 25, 2006, the OpenDarwin team announced that the project was shutting down, as they felt OpenDarwin had "become a mere hosting facility for Mac OS X related projects," and that the efforts to create a standalone Darwin operating system had failed. They also state: "Availability of sources, interaction with Apple representatives, difficulty building and tracking sources, and a lack of interest from the community have all contributed to this."[15] The last stable release was version 7.2.1, released on July 16, 2004.
----------------8----------------
So I guess I'm not the only one feeling that way.
I'm sorry, but why exactly are you implying that you can't dual with BSD as well if you own the code and accomplish the same thing? A public BSD licensed version and a private proprietary licensed version with your extensions to the core.
You're right, of course, but what the GP failed to mention (but probably thought about) is that with the GPL you can have a dual-licensed product *without* propietary extensions and still have a workable business model, all thanks to some businesses' fears of open-sourcing their own code. Not so with BSD.
With Mac OS X you're confusing two parts of the system as if they were one. The OSS portion of OS X is perfectly usable.
But how useful is it? the F/OSS part has almost none of the features that are commonly associated with OSX, can run practically none of the OSX-exclusive applications, and I've yet to see a single reason to use it instead of Linux or the BSDs. And I believe that was the point of the GP's argument, not that it was broken and couldn't even compile but that it could hardly be called OSX.
Purely OSS projeccts are for geeks alone to use. There isn't a large scale OSS project anywhere that can be considered end user ready with a good interface, reliablity and good performance that isn't backed by some company using it to its for its own means.
Which single company do you consider is behind the Linux kernel, for instance? or GCC? it's obvious that once a project gets big and useful enough, companies will start investing in it but that doesn't mean they're controlling the project's direction, certainly not if there's more than one contributing large amount of patches.
No problem is insoluble in all conceivable circumstances.