Open-source Licensing: BSD or GPL?
BSDForums.org writes "Mark Brewer of Covalent Technologies argues BSD is better for the enterprise. As open source licensing models, both the Berkeley Software Distribution license and the General Public License have advantages and disadvantages. But in the end, the BSD offers more benefits to enterprise customers. Matt Asay of Novell makes the case for GPL. He says, no one open source license is ideal in every circumstance. Different licenses serve different ends. Berkeley Software Distribution-style licenses have been used to govern the development of exceptional open source projects such as Apache. Clearly, BSD has its strengths. However, all things being equal, he prefers the General Public License (GPL ). The GPL is one of the most exciting, innovative capitalist tools ever created. The GPL breaks down walls between vendors and customers while enabling strong competitive differentiation.
Which is a better licensing model for open-source applications: BSD or GPL? What do you think?"
The GPL is one of the most exciting, innovative capitalist tools ever created. The GPL breaks down walls between vendors and customers while enabling strong competitive differentiation.
;-)
Buzz word overload! Take cover! Buzzword overload! Take cover! Buzz...
* Robot's head EXPLODES in a shower of sparks!
Would it kill people to speak in normal sentences instead of Market Speak(TM)? This entire article is just silly. Of course businesses prefer the BSD license. It places fewer restrictions on them, and allows them true ownership of derivitive works. That gives them something to later sell or use as a barganing chip.
Of course many OSS authors prefer the GPL. It forces companies and other users to help pay for development by giving back. The benefit to OSS authors is very clear. The benefit to businesses, however, is still questionable in many circumstances.
In the end it comes down to the usefulness of the software. If a business can't build upon BSD licensed software, they'll go with GPLed software. But if they can help it, they'll just go for the public domain stuff.
Javascript + Nintendo DSi = DSiCade
The GPL license is perfect for developers.
The BSD license is perfect for everybody else.
First you say they work to different ends and then ask which is better. Isn't that like comparing swiss cheese to nuclear physics?
I pretend to know more than I really do by mooching off google and wikipedia.
Why not mark the entire post and resulting thread as -1 flamebait now and get it over with? While it's an interesting question and I'm sure there are places where people could have a nice mature and rational discussion about it, /. is just NOT one of those places...
Anyways, as an encore, I think the next posting should be "VI vs. Emacs: Which is the best text editor for your needs?"
It is not logical to expect (IMO) that a company contracting another company is always going to want (or be willing to accept) a GPL style license, so GPL'ing something limits its use in corporate sectors (again IMO).
Now many times if you go and ask the library authors' they'll grant special permission especially in a case like this, but it's a hastle to work with. And you can argue that you should fight for free software all over, but it doesn't make business sense in every case, especially when your company is not in the business of providing support.
Also the LGPL solves this sort of issue to some extent, but I'd say the LGPL is more BSD then GPL, but that's a bit of an overstatement...
The BSD license offers more advantages to companies looking to sell software derived from existing software. They can take BSD-licensed code, do what they wish with it and treat the results as their own proprietary code.
The GPL license offers advantages to end-users long-term. Anyone wanting to take advantage of the starting point GPL'd software offers has to return the favor in the form of their code. Essentially it makes developers let other people take advantage of their work in the same way they took advantage of others' work. It also guarantees that, as an end-user, you're never in a position where you can't get fixes and modifications to the software.
Which one is better for you as the author of the software who has to decide on the license to release it under depends on your goals for the software.
The article submitter should be flayed alive. The /. editor should be drubbed soundly.
Use the GPL if you're going to get upset if someone uses your code commercially without paying you. GPL won't quite prohibit that kind of thing, but it will make most business models involving it impractical.
Use the GPL if you have strong philosophical objections to the basic idea of intellectual property. If, eventually, a sufficiently large portion of code is GPLed, then it might become prohibitively difficult for anyone to make non-GPLed code without re-inventing the wheel. Dream on.
Use the BSD license if you just want your code to be useful to as many people as possible.
Otherwise you're just doing free work for some software venture capitalist, which is stupid. I mean, if you want to help people, go spend time with sick children or something.
Apparently there are some mods who only read half of the comments.
So I suppose the Apache Foundation should just give up the work they've done? I suppose name-recognition for a popular BSD project isn't enough for you?
If anything, licensing under BSD instead of the GPL is the most selfless act a software developer can make. It means they are coding for the love of coding, not because of a political or philosophical agenda. Is there something wrong with that?
Likewise, is there something wrong with working for Habitat for Humanity, the Peace Corps, and The Hunger Project?
The dynamic linking issue is probably my only real gripe with the GPL. It makes it almost impossible for me to realistically consider using the GPL for any of my code. The LGPL is much easier to work with and still provides almost all of the same benefits as the GPL for me as a developer, and my users get the same basic freedoms from it as they would from the GPL (theoretically, they actually get more), so most of my projects are licensed under the LGPL (or occasionally just the plain ol' zlib license).
On a side note, I recently asked one of the XviD developers about including the XviD codec with a LGPL application I had written. I don't directly use the XviD codec; I use the standard Win32 VFW API to load video clips and play them back. I wanted to include XviD in the installer so that my users would have a quality codec ready to go without having to pay any license fees. The developer stated that because XviD is GPL, all of my code (and any scripts my users wrote, as well) had to be GPL, otherwise I would be violating the GPL. Because of this, I ended up having to include a commercial codec with a less insane license instead.
using namespace slashdot;
troll::post();
TROLL
Because:
1) It offers *zero* real protection, *especially* for *small developers* with no legal team to back them up.
2) For people that *are* honest, it causes a hell of a lot of interworking problems.
These are quite simply the facts, regardless of all the religious beliefs that are continously being flaunted above by misguided GPL zealots.
END TROLL
I marked this as a troll because that is how most people will percieve it. Nevertheless it's the truth.
y biggest problem with the GPL is the FSF's position that even dynamically linking against a library under GPL is enough to make the resulting code a derivative work (and thus also subject to the GPL).
The FSF doesn't define derived work, that's a legal term from copyright law. Most lawyers are of the opinion that the FSF is being far to liberal and that much more stuff would constitute derived than even they believe (stuff that most programmers would consider "mere aggregation".
Unless you subscribe to the loony definition of "derivative code" that RMS does, the GPL encompasses a hell of a lot more than "derivatives of their code".
That's exactly why the LGPL exists.
You shouldn't be copying from the headers anyways. You should be #include-ing them.
It's really not that big of a deal to make most programs dynamically linked... it's standard industry practice.
That the user can replace some libraries is actually a good thing... for example, the SDL shipped with Neverwinter Nights does not work with some recent versions of nvidia-glx, but newer versions of SDL do, so I just replaced the SDL in NWN with a symlink to my more recent SDL library. If I couldn't do this, I wouldn't be able to run the program, and I wouldn't have bought the expansion packs.