The FLOSS licensing mega thread

Discussion in 'Other Operating Systems' started by elvis, Sep 4, 2008.

  1. elvis

    elvis Old school old fool

    Joined:
    Jun 27, 2001
    Messages:
    36,000
    Location:
    Brisbane
    A previous discussion has started in another thread, and I think it warrants it's own here.

    Lets talk licenses - specifically FLOSS (Free/Libre/Open-Source Software) licenses. What limitations do they put in "free", and why?

    The crux of the previous discussion was a quote I read once on Slashdot:

    BSD: You have every freedom.

    GPL: You have every freedom, except the freedom to take away another's freedom.

    Is such a caveat/exception/limitation necessary? Does putting in an anti-abuse clause immediately destroy true freedom? Should FLOSS licenses give those with nefarious/evil/abusive intent the freedom to do wrong, and potentially harm the hard work of millions of FLOSS developers, all for the dogmatic stance that true freedom should have no exceptions?

    Discuss. What are your preferred FLOSS licenses, and why?
     
  2. cleary

    cleary Mental in the Face

    Joined:
    Apr 25, 2003
    Messages:
    4,244
    Location:
    Griffith NSW
    Does it destroy it? Maybe a little harsh words, but it certainly reduces the freedom, which by definition, implies it's no longer "truly" free


    harsh words again - generally the intent is none of those, but the spirit the code was given is not carried on by end users... having someone work on and improve your code generating a bit of community is a sincere form of flattery and good encouragement to keep working on it. someone taking your code and never hearing back from them saps the (my) enthusiasm a bit.

    I'd be tempted to rewrite your post to be less inflammatory/bit more objective.
     
    Last edited: Sep 4, 2008
  3. phreeky82

    phreeky82 Member

    Joined:
    Dec 10, 2002
    Messages:
    9,472
    Location:
    Townsville
    Spot on. I think there's a bit of "good will" involved in it. There are plenty of large corps that use such code, sell their products without source, but certainly do provide a fair chunk of development back to the particular OS projects that they've utilised.

    Hell, some of these businesses even release their products for free anyway.

    If these businesses couldn't do it this way, then some of them simply would never have happened, and their contributions would likewise never have taken place.
     
  4. fatall

    fatall Member

    Joined:
    Aug 3, 2001
    Messages:
    380
    Location:
    Upper Ferntree Gully
    I'm trying to understand it a bit more, but if I do have it right, the new
    APPLE OS is based on BSD....I think I remember reading about that some where? and if I understand the discussion correctly, Apple grabbed BSD modified it kept all the code and released nothing back to community...correct :confused:
     
  5. cleary

    cleary Mental in the Face

    Joined:
    Apr 25, 2003
    Messages:
    4,244
    Location:
    Griffith NSW
    The apple osX kernel is based on the darwin kernel which is bsd licensed.
    Apple do release some stuff back to the community:
    http://developer.apple.com/opensource/index.html
     
  6. MistaKa0s

    MistaKa0s Member

    Joined:
    Nov 14, 2002
    Messages:
    51
    You have to remember this is in regards to copyright, which is an important point to remember. There are no restrictions to YOUR use of the software.

    BSD, gives you the right to do whatever you wish to the code

    GPL, gives you the right to do whatever you wish to the code.

    But both has restrictions when you wish to DISTRIBUTE software/code containing BSD or GPL coding.

    The wording of the BSD licence allows you to make changes and keep them to yourself. So long as you include an acknowledgement of previous authors before you (and perhaps a copy of the licence?).

    Even Windows has a file which lists the contributions made by BSD coders.

    The wording of the GPL licence says that you can make changes, but if you distribute a product/software that contains GPL code, you must make the changes you made to the GPL component available to your users/clients.

    If you don't distribute the product and use it internally, you're free to make as many changes as you want.

    Likewise with proprietary code. If your product is based off an open source platform, but you have written your own code/application (and assuming you don't have any GPL code inside it), you don't need to release that under GPL.

    It's better to think of them as copyright licences (which they are), which places conditions on your use of the code if you wish to "copy" (distribute) them.

    As for which licence I prefer?

    Out of the two, I would probably prefer GPL, only because I feel that it's only right to contribute back to the community if you profit off it. Keeping improvements to yourself, disadvantages the very same community that you leverage off.

    -------

    Just another point I thought of is, think of the maintenance of the code as well. If you don't contribute the code back, it's up to you to ensure that it works with newer versions.

    The example in my head is, the linux kernel. You make changes to it to suit your own hardware, but you keep the changes to yourself (and not redistribute it).

    However, if you wish to update to a newer kernel (perhaps to take advantage of some improvements made by the community), you then may need to make changes to the your modifications to ensure that it works.
     
  7. GumbyNoTalent

    GumbyNoTalent Member

    Joined:
    Jan 8, 2003
    Messages:
    7,024
    Location:
    Briz Vegas
  8. OP
    OP
    elvis

    elvis Old school old fool

    Joined:
    Jun 27, 2001
    Messages:
    36,000
    Location:
    Brisbane
    "Generally", for sure.

    I'm quite certain the "restrictions" put in place by the GPL are not there for the "general" case, but completely intending to protect code from a select minority who would very much like to abuse the system.

    So again I ask, what are people's feelings on this? Should such a "restriction" be put in place because there theoretically exists such a minority? Is the general consensus that such a restriction is not necessary in this day and age where the majority of individuals are of good intention? Or, like many laws in society, does it need to stay to keep that minority from doing harm to anyone, even if it is at the expensive of the elusive "true freedom" goal?

    I don't believe such a question is "inflammatory" at all. There is great criticism of the GPL because it is not "truly free". My question to anyone thinking that is: do you think this makes the license a poor choice? Do the people criticising it believe that potentially risking abuse from a minority group is a valid risk to take in order to achieve the idealistic goal of "true freedom"?
     
  9. resonator

    resonator Member

    Joined:
    Aug 21, 2005
    Messages:
    141
    Location:
    Melbourne
    I've been thinking about licenses for a project of my own for a couple of months now. It is a web app that I'd like people to be able to install into personal servers and modify as much as they like, but not be able to make a competing service from my code base.

    What I want is a license that basically says, do what ever you want with my code except attempt to profit from it in any way, unless I, the copyright owner grants permission.

    Does anyone know of a license that fits this requirement?
     
  10. yoink

    yoink Member

    Joined:
    Feb 19, 2002
    Messages:
    3,436
    I personally find this topic really interesting at the moment - I'm about to release a Javascript framework in a similar vein to EXTJS, and judging by their license debacle, I'm quite nervous about what license to choose.
    Personally I like the BSD license, but again, if it is to be a commercial product, that license may be too loose, and someone could run away with the product.

    So, what do you guys think, specifically to do with dual licensing a Javascript framework?
     
  11. OP
    OP
    elvis

    elvis Old school old fool

    Joined:
    Jun 27, 2001
    Messages:
    36,000
    Location:
    Brisbane
    Have a trawl through the various Creative Commons licenses:

    http://creativecommons.org/licenses/

    One of them is bound to fit your needs.

    [edit]
    This one:
    http://creativecommons.org/licenses/by-nc/3.0/

    Seems to be similar to what you say above.
     
    Last edited: Sep 4, 2008
  12. OP
    OP
    elvis

    elvis Old school old fool

    Joined:
    Jun 27, 2001
    Messages:
    36,000
    Location:
    Brisbane
  13. phreeky82

    phreeky82 Member

    Joined:
    Dec 10, 2002
    Messages:
    9,472
    Location:
    Townsville
    I know it's a little different and not directly related to the licenses, but one of my biggest problems with open source software is in some cases its quality (obviously I'm not talking about all of it!).

    An example, I was having problems with mythweb, which interacts with mythtv backend and provides a web interface. So I go looking through the source code, and well, fuck that, that's horrible. Bugs everywhere, some of the components just asking for errors. So I've made the decision to write my own version - sure it wont do everything that the current one does, nor work the same way, but will do what I need.

    So off I go, looking for info on the mythtv backend comms protocol, and well what do you know, it has never actually been properly defined. wtf.

    http://www.mythtv.org/wiki/index.php/Myth_Protocol
    http://winmyth.sourceforge.net/mythprotocol.html

    Drives me insane. Have had the same problem with I tried to setup SugarCRM and various other open-source projects, the code was a disgrace, the documentation was non-existant - a way to keep an "open source" project closed source almost!
     
    Last edited: Sep 4, 2008
  14. HeatVision

    HeatVision Member

    Joined:
    Nov 2, 2006
    Messages:
    322
    I agree that 0.21 version of MythWeb is shit. The trunk version is quite an improvement but with the QT4/MythUI port in progress it's not really usable.
    Seeing as though you're going to have to figure out the database schemas, etc, to write your own version of MythWeb, why don't you write one and contribute it?
     
  15. phreeky82

    phreeky82 Member

    Joined:
    Dec 10, 2002
    Messages:
    9,472
    Location:
    Townsville
    I may contribute it yet, I'm got to do some more research. It's looking more and more like a closed group that don't really want to let the project get out of their control at all (i.e. they either provide no documentation, or simply don't have any). Looks like a bit like a "club" if you get what I mean, I hate that mentality, that's not true open source IMO.

    Anyway, like I said, more research needed.
     
  16. yoink

    yoink Member

    Joined:
    Feb 19, 2002
    Messages:
    3,436
    Too often quality code is sacrificed at the sake of getting the product / functionality out the door, this happens a lot in closed source products too ;)

    To get back OT: Does anyone here have an opinion on JavaScript framework licences? :)
     
  17. OP
    OP
    elvis

    elvis Old school old fool

    Joined:
    Jun 27, 2001
    Messages:
    36,000
    Location:
    Brisbane
    Having run a few development projects in my time, I can tell you now proprietary/closed-source projects are no different.

    Disciplined coding is a rare thing.
     
  18. phreeky82

    phreeky82 Member

    Joined:
    Dec 10, 2002
    Messages:
    9,472
    Location:
    Townsville
    Not that it makes it any better though. I guess my type is rare then...
     
  19. carton

    carton Member

    Joined:
    Sep 5, 2008
    Messages:
    10
    these licenses have a track record

    I find something missing from the tired discussions of the form ``[GPL|BSD] license is better because it encourages _________.'' We've nearly two decades' experience with both licenses. Judge the two licenses by the things BSD advocates say they care about:

    1. maximizing the amount of corporate-funded putbacks
    2. largest number of people and corporations able to get use from the codebase, no matter what they're using it for
    3. programmers able to make a living through working on the code

    By these criteria, I think the GPL is the hands-down winner.

    Most people, myself included, thought BSD was going to completely clean up in the embedded space because companies making celfones and tivos would want full reign to tinker inside the kernel without tainting any of their proprietary code with obligations to freedom. This didn't happen.

    Many companies developed BSD-based embedded projects in secret, and the boot-licking BSD lovers dutifully kept the corporate secrets because they ``didn't want to antagonize ANYone'' even though their license guarantees them credit where their code is used. Consequently, other embedded projects looked around when choosing a kernel and saw, ``looks like everyone else is using Linux. I want to use something that works, none of this unproven fringy BSD crap.''

    Lots of evaluation boards and finished products are similar, but the BSD-licensed ones had no obligation to give back their changes, so each individual company had to re-invent the wheel. What started out as a lead for BSD (especially NetBSD, which was really well-factored because of its portability goal), over a few years turned into a substantial lead for Linux because each eval board manufacturer was forced to donate their fixes back to the project. If not for Linus's questionable ``interpretation'' that linking modules into the kernel does not qualify as ``linking'', I think this lead would be even bigger (yes, linking, even shlib linking, spreads GPL taint. That is why key shared libraries in GNU/Linux are under LGPL, not GPL.). Now Linux is far more widely-ported than NetBSD, supports weird platforms a lot more thoroughly on the platforms where both run, and includes embedded features like JFFS2, a good NAND flash filesystem, that NetBSD doesn't have.

    Embedded stuff is just what I know about best, but I suspect if you dig deeper into the colossal lead Linux has over BSD in the proprietary/closed/corporate world (not to say BSD isn't used, just that Linux's lead is so decisive), I think you'll find something similar. While seeming to ``restrict'' corporations' desires to wall off their work from competitors, the GPL seems somehow to be acting in their long-term interests much better than the BSD license.

    This result STILL isn't what people expect, even though it's ALREADY HAPPENED. We could focus the discussion on why it's happened, but why is a really slippery imperfect all-too-human idea when confronted with reality. I think what's more important is to learn from the admittedly odd experience that the GPL license is better at doing what the BSD developers wanted to do than the BSD license is.

    Personally, I could give a shit about what the BSD developers wanted to do. I'm in favor of radical copyright change. I care about my own software freedom. I want a legal and industry climate where certain types of devices that corporations would like to sell, such as the iPhone, would be impossible to construct, or at least so onerously expensive as to put them at a huge disadvantage compared to more open competitors. I also share Eben Moglen's interest in educational parity, and the idea that a brilliant mind is too valuable to global humanity that we can afford to let the brilliant children born in the global south flicker, or waste their lives, because we were counterproductively trying to ``monetize'' tiny bits of knowledge and tax their flow.

    But suppose you completely disagree and care overwhelmingly about the status quo, don't give a shit for training the next generation, don't find the term ``intellectual property'' to be deviously misleading and legally dishonest, think pumping up first-world corporate profits is the best way to give everyone a fair go, and lazily think all this political mumbo jumbo has no effect on the lives of simple geeks. Well, have a look at the record. You'd be a fool to advocate the BSD license---compared to GPL projects the only development happening under it is government-funded Uni work, their code-bases have been basically stagnant for the last decade, and their projects get much less corporate attention even when they compete directly with GPL projects that do the same thing.

    All this ``GPL is a virus'' stuff boils down to ``do as I say, not as I do.'' If you look at what companies are doing, they *love* the GPL. They just don't seem to know it.
     
  20. Crinos

    Crinos Member

    Joined:
    Jul 1, 2002
    Messages:
    4,027
    Location:
    Tasmania
    Very nice post. As much as people like whining about how viral the GPL is, it does work damn well to minimise the exploitation of others' works.

    It really does two things:
    1) Prevents people from taking without giving
    2) Prevents people from having exclusive code and/or features

    Both of these things could be a positive or a negative, depending on your point of view.

    Most people think in terms of IP(the second point) and the fact that they would have to share their code is abhorrent to them, even though many people would love to base "their" project on an existing GPL one and take all the good stuff, close it up and make money from it. Overall, in practice, I think the first point has proved to be much more valuable than any negatives from the second point.

    Sadly, most people can't be trusted as far as you could kick them, so BSD might be at the core of a lot of things, but who would know it? Expecting companies who get a free product to base theirs on to contribute back downstream out of the goodness of their hearts is wishful to say the least.

    As much as it seems contradictory to "enforce freedom", in the real world it's proven to be the best way to get as close to free as possible.

    Does anyone have any sort of information as to how the BSDs have benefited from having Apple shamelessly take and close their code? Linux is powering along, and BSD seems to be at the same place it was 10 years ago...

    The GPL has contributed more for me, but I think it's great that both types if licenses exist :thumbup:
     

Share This Page