Slashdot Mirror


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?"

22 of 631 comments (clear)

  1. Danger Will Robinson, Danger! by AKAImBatman · · Score: 3, Insightful

    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. ;-)

    1. Re:Danger Will Robinson, Danger! by AKAImBatman · · Score: 4, Insightful

      I'm certainly not arguing your point (although one needs to expect users to exercise their licensing rights to the fullest extent), I'm only arguing that businesses and developers have differing goals.

      Where the BSD license really shines is in areas like the Apache project. Businesses donate to the project so that they don't have to reinvent the wheel every other day. They are then free to take the resulting work and bury it deeply inside the code where they don't worry about it any longer.

      In the case of GPLed code, a business must make an up front decision to accept the change in business procedures that the GPL requires. This is good for GPL developers because they see a return on their work other than money. It's bad for a business because it may invalidate their business model. (i.e. How they make money.)

      As with all things, everyone has to meet in the middle on this stuff.

    2. Re:Danger Will Robinson, Danger! by GrouchoMarx · · Score: 5, Insightful

      Your analysis is blindingly oversimplified. Most companies would rather GPL their own code than release it under a BSD license, but would rather have others release their code under a BSD license.

      Which is one reason I am personally fond of the LGPL. It says, in essence, "MY code is Free and must stay that way. Do what you want with you parts." It also has the side-effect of encouraging good, modular, component-based design. That's a win-win for everyone. Why people keep forgetting the LGPL in these flamewars I don't know, as it is a perfectly reasonable compromise between the "do anything" BSD and the "hand of Midas" GPL. I am particularly fond of it for libraries, frameworks, APIs, etc.

      That said, can we mod this entire story flamebait? I mean really, is the next Slashdot story going to be "Vi or Emacs, what does Slashdot think?"

      --

      --GrouchoMarx
      Card-carrying member of the EFF, FSF, and ACLU. Are you?

    3. Re:Danger Will Robinson, Danger! by R.D.Olivaw · · Score: 5, Insightful

      Note that the author doesn't have the right to complain. People (companies?) are using the way he licenced it. The GP was giving an axample of why BSD style licences are bad for authors if they expect something (code) in return. Some company and other developpers might contribute back to BSD projects but that relies completely on their goodwill.

    4. Re:Danger Will Robinson, Danger! by bersl2 · · Score: 3, Insightful

      WINE, for one. I'm pretty sure that they claim that moving to the LGPL stopped the commercial leeching and greatly increased the amount of code they received in contribution.

    5. Re:Danger Will Robinson, Danger! by Scarblac · · Score: 5, Insightful

      I've seen a bunch of projects that chose to go with the BSD style licence and it's bit them in the ass. People are using their code left and right, but hardly anyone is contributing back since they don't have to. [...] As long as there are human beings involved, there's going to be people taking advantage of you.

      I don't get this. Surely he wanted everyone to use his code, without any further obligations? Since that's exactly the point of the license he used? How can you call that "biting him in the ass", or "taking advantage of"?

      BSD is clearly too loose, if you don't want people to keep their changes for themselves. But well, duh, don't use that license then. Most people in the BSD projects are perfectly happy if there code is used somewhere, regardless of ever seeing anything back (or so I've heard - I'm a Linux weenie).

      Anyway, in between GPL and BSD license, there's always the LGPL.

      --
      I believe posters are recognized by their sig. So I made one.
    6. Re:Danger Will Robinson, Danger! by LWATCDR · · Score: 3, Insightful

      However that issues doesn't really go away with the GPL. I have seen people in slashdot complaining about how this or that free program sucks. MythTV was a big one. But did any of them contribute code or money? Not on your life. I am amazed that someone would spend there time complaining and insulting the developer of a free program but it happens.

      --
      See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
  2. And he is right too. by Anonymous Coward · · Score: 5, Insightful

    The GPL license is perfect for developers.

    The BSD license is perfect for everybody else.

    1. Re:And he is right too. by QuantumG · · Score: 3, Insightful

      Yep, pretty fundamental in my way of thinking about open software development is the concept that users of proprietary software are getting a raw deal. If you don't share that idea then I'm sure you'd have no problem actively helping people to make proprietary software. Of course, there are times when doing so has advantages. A project I started and is still actively developed is licensed under a two clause BSD license with the outright intention that it help proprietary software makers enter a hard to define market. The idea being that if they can base services on this software they won't have to invest so much to get started. They can keep their changes to themselves and hopefully when there is some competition we'll see some innovative things. But when you're talking about free software in already established markets, you really are just throwing away your work.

      --
      How we know is more important than what we know.
  3. Wow, that is pointless. by Toba82 · · Score: 3, Insightful

    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.
  4. Oh dear Lord... by Anonymous Coward · · Score: 3, Insightful

    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?"

  5. I vote BSD style (but LGPL's ok)... by qaffle · · Score: 4, Insightful
    I work for a government lab that develops both free software and private software (specifically when under contract with private companies) and we have to deal with this issue constantly. We try our best to not reinvent the wheel and to use pre-existing libraries that are out there, but sometimes you find a perfectly fitting library only to find its GPL'd, which kills any possibility of using it since not all of the work a company like ours can do is able to have a GPL style license.

    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...

    1. Re:I vote BSD style (but LGPL's ok)... by AuMatar · · Score: 4, Insightful

      You see, as a GPL developer, thats exactly the reason why I only use GPL. You want to be able to take my work and sell it. Ok, thats fine. You want to be able to do so while not contributing back and improving the software for the rest of the users- you want all the benefits of open source with none of the responsibilities. Thats not cool.

      My goal in life is not to be your free development resource. My goal is to produce software to help my fellow man. If your company can benefit too, thats a bonus. But if you aren't willing to do the same thing, then you can pay for my work to replicated on your own dollar. You can't have it both ways. Pay me in code, or pay me (or other developers) to do it in cash. But you will pay for the use of it in another project.

      --
      I still have more fans than freaks. WTF is wrong with you people?
  6. Depends on where you are by Todd+Knarr · · Score: 3, Insightful

    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.

  7. WTF? by orz · · Score: 3, Insightful

    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.

    1. Re:WTF? by Scarblac · · Score: 3, Insightful

      Use the GPL if you have strong philosophical objections to the basic idea of intellectual property.

      I don't get this. Without intellectual property (read: without copyright law), it would be like everything was BSD licensed. The GPL relies entirely on copyright law to do its trick.

      --
      I believe posters are recognized by their sig. So I made one.
  8. Re:The GPL good when ownership is well-defined. by Sheepdot · · Score: 5, Insightful

    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?

  9. Re:FSF's stance on linking by JanusFury · · Score: 3, Insightful

    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();
  10. GPL is the worst of both worlds by Skuto · · Score: 4, Insightful

    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.

  11. Re:FSF's stance on linking by jbolden · · Score: 3, Insightful

    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".

  12. Re:What a retarded question. by drsmithy · · Score: 3, Insightful
    The GPL motivates development because DEVELOPERS are enticed by the idea that derivatives of their code will REMAIN open, and that their projects will flourish.

    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".

  13. FUD by temojen · · Score: 3, Insightful
    1. LGPL has different conditions for "works based on the library" and "derived works".

    That's exactly why the LGPL exists.

    2. LGPL states that using material from the header file of LGPL library makes the binaries produced a "derived work" which is more strict than "works based on the library".

    You shouldn't be copying from the headers anyways. You should be #include-ing them.

    3. LGPL states that "works based on the library" may be distributed under your own terms BUT ONLY IF your own terms permit modifications and reverse-engineering by end-users.

    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.