Follow Slashdot blog updates by subscribing to our blog RSS feed

 



Forgot your password?
typodupeerror
×
News

Ask Slashdot: Comparing Open Source Licenses 104

El-ahrairah asks: "I've been working on several projects over the course of the last few years, each of which have reached the stage where we are planning their release to the public under Open Source licenses. I have done quite a bit of research into various OS models, but I am nevertheless no legal scholar. what I am wondering is this: what are the pros and cons of various licenses, are any YAOSL (yet another Open Source licence) models valuable, does a line by line comparison of longstanding and new licenses exist?"
This discussion has been archived. No new comments can be posted.

Ask Slashdot: Comparing Open Source Licenses

Comments Filter:
  • by Anonymous Coward
    Michael Maxwell has an article in DaemonNews which is a (BSD-biased) comparison of GPL with the BSD-style licence.

    Restrictively Unrestrictive: The GPL License in Software Development [daemonnews.org]

  • by Anonymous Coward
    RMS has never written any kind of naming restriction into a license, AFAIK, since that doesn't materially affect others' rights to use the code. And unless you're assembling yet another instance of Project GNU, he wouldn't even care.

    I do wish the GPL had stronger requirements for effectively informing recipients of their rights. There are still too many people who don't know what they can do, in part because of the community's mysterious shame about Project GNU.
  • by Anonymous Coward
    Basically, software licenses in free software are a form of social engineering. Your choice of license should steer people towards doing what you really want them to do.

    This assumes that steering people is something you want to do. A license does not have to be a form of social engineering.

    If I release something as free software, I want it to become part of the generally available pool of knowledge of mankind. Hence, I make it public domain.

  • by Anonymous Coward
    When picking a license you should consider who you want or expect to use your software, and what for...
    If you expect that projects under GPL will want to use some or all of your project, you need to remain GPL-compatible. Modern BSD (no advertising clause) and all GNU licenses are GPL-compatible
    If you expect that proprietary projects will want to use your code, and that's OK (because you're trying to popularize a standard, or protocol, not save the world) then you should choose LGPL (if they just need to link with it) or BSD or even Public Domain, so that they can just use it without worrying about lawyers...
    If you just expect people to use it, with you or your team doing all or most of the maintenance, then you could pick any license you like. If users don't like it, they'll explain why and since you still own the copyright you can change to a different/ better license later.

    Another thing to consider (but less important) is - who do I owe for all this?
    Linus for example, has said several times that his decision to license Linux under the GPL was influenced by the high quality of GNU tools like GCC, which were essential to continuing kernel development. If there's a tool which was a godsend when you were working on these projects, consider whether you should mimic the licensing of that tool.

    Finally - note that some people have found it appropriate to make things available under two or more licenses. Perl, AFAIK, is an example of such a project.
  • by Anonymous Coward
    There are some very good Open Source license comparisons in the book 'Open Sources : Voices from the Open Source Revolution'. Especially the article by Bruce Perens and Brian Behlendorf are very informative regarding different licenses.

    Incidentally this book has just been released under the GPL. You can fetch it from http://www.oreilly.com/catalog/opensources/book/to c.html

  • by Anonymous Coward
    All of the discussion and ranting about the various licenses leaves me convinced of one thing ....

    If Linux had been under a BSD style license, MS would have an easy and clear way of destroying it as a competitive threat. They would create a prorietary fork, flood the market with it, and we would all live in an MS world for the indefinate future.
  • by Anonymous Coward on Monday May 17, 1999 @07:03AM (#1888734)
    Many people happen to like the BSD credit where due clause.

    If someone takes my code and sells it as part of their product, the *least* they can do is be gracious enough to acknowledge my contribution to what they're selling.

    What the BSD license basically does is make this a requirement. Is this obnoxious? Well, if someone was going to do the right thing anyway and give credit to the people who actually wrote the code, then this creates no real additional burden. If someone was going to *not* provide credit where it's due, well, not giving any recognition either credit or financial to the people who's code you're selling is pretty obnoxious, don't you think?

    Also, you misinterpreted the wording of this clause in a major way. It says:

    All advertising materials mentioning features or use of this software must display the following acknowledgement

    Suppose I write code for a specific cool-neat-feature and you put it in your product. This clause does *not* require that all advertisements for your product contain the credit statement. It only requires that advertisements that specifically mentions my code or the use of my code acknowledge that it's my code. That's a big difference.
  • by Anonymous Coward on Monday May 17, 1999 @06:54AM (#1888735)
    Basically, software licenses in free software are a form of social engineering. Your choice of license should steer people towards doing what you really want them to do.

    Some examples of goals to consider:

    * Credit given to you. Beyond simply asking people to give credit where it's due, you also might want to have a way to refute when other people claim to have written your code. (it happens)

    * Integration into commerical products. Some people want this, for example in order to get the code/feature/technology more widely used. Some people don't want this, for example to prevent others from making a profit off your work.

    * Control over the "official" distribution. Some people want to make sure that the software named "foo" is theirs; if someone else creates a derivative, they should name it something other than "foo" so as to not confuse things and potentially hurt your reputation.

    * As a general rule, you want to disclaim everything you can and even things you can't. Otherwise some scumbag will sue you for their misuse of your free software.

    The first item basically summarizes the goals of the BSD license: prevent others from claiming that they instead wrote the code, and to require others to give credit where it's due. The BSD license is very typical of licenses that allow commercial products to take your code.

    The second item's other side basically summarizes the goal of the GPL: preventing your free code from becoming someone else's non-free code and someone else's profit.

    The third item basically summarizes the goal of the Artistic license: prevent bozos from releasing branch versions of your code with the same name and making you look bad in the eyes of users who confusedly thought their version was your program.
    Reputation protection.

    There are a whole lot of yet-another-licenses out there. Most of them suck and should be avoided. In particular, they have served to greatly confuse what used to be a relatively simple thing. Use a standard license if at all possible. Really. Better to have slightly less optimal legal terms that are well understood than optimal legal terms that people can't decipher. By the time lawyers are reading the licenses, something is usually wrong.

    Many of the new generation of "open source" licenses are "you have to be free, but we don't have to be free" licenses, which might also be phrased as "we want other people to write code for our product for free" licenses. Don't go there.
  • Posted by the.big.cheese:

    Why not use the Cartesian Burro-Friendly License? It works as a standalone license or in combination with other more headache-inducing licenses. See http://www.revoltingdevelopment.com/cbfl01.html for details.
  • Well, the GNU/Linux debate has nothing to do with the name of the kernel (Linux). Linus created the kernel, so he gets to pick the name. He chose to call it "Linux", and so everybody else (including RMS & the FSF) calls the kernel "Linux". The FSF created an OS completely consisting of free software (some of it is written by them, some of it is written by other people) and they chose to call it "GNU". However since their kernel wasn't finished, some people chose to use Linux (the kernel) together with the rest of GNU.

    So you see, the GNU/Linux debate has nothing to do with Linux being GPL'd. The problem is that people chose to call a GNU OS with Hurd replaced by Linux, "Linux". The same thing would have happened if Linux was licensed differently.

    If you don't want people using your code in their proprietary programs use the GPL (or the LGPL). Otherwise, use the X license.

    Also, the comparison between the GNU/Linux thing and the BSD advertising clause isn't really fair, since the GNU/Linux debate has nothing to do with licensing, it's simply a question of what to call a system made of a huge number of components made by different people.

  • ...as the software it is going to be used together with, unless you have a really good reason not to. It gives the least problems.

    I.e., if you are writting a Perl program, use the Artistic License. If you are writting a Gnome program, use the GPL. If you are writting a Mozilla plug-in, use the MPL. Und so weiter.
  • by Frater 219 ( 1455 ) on Tuesday May 18, 1999 @07:16AM (#1888742) Journal

    > All GPL'ed stuff belongs to Stallman, read the license.


    You can find the GPL here [fsf.org]. If you actually do read it, you will find that noplace within it does Stallman, nor the FSF, claim copyright nor special privilege over GPLed software.

    The license does contain some passage specific to software copyrighted by the FSF, for instance the following:


    # 10. If you wish to incorporate parts of the Program into
    # other free programs whose distribution conditions
    # are different, write to the author to ask for permission.
    # For software which is copyrighted by the Free Software
    # Foundation, write to the Free Software Foundation;
    # we sometimes make exceptions for this.


    Read that carefully. FSF does not claim to be the author nor the copyright holder of all GPLed software. Your claim is at best a myth, and at worst a lie which comes close to being FUD.

    If you object to some particular provision in the GPL, release your software under a modified version. You could, for instance, strip out the versioning provision (the part which specifies that the licensed software may be licensed under newer versions of the GPL) or add a BSD-style credit-due provision.

    In the future, when you call on others to RTFM, please don't make claims which contradict the text of the relevant FM.
  • by Frater 219 ( 1455 ) on Tuesday May 18, 1999 @09:29AM (#1888743) Journal
    You are correct on the matter of revising the license, but not on the matter of versioning. In order for the versioning provision to be in effect, the author has to either explicitly state that the software is licensed under the GPL version N and "any later version", or not mention any version number.

    It may be that the FSF's model copyright notice uses the "any later version" language. However, the copyright notice is separable from the license itself; you can write your own copyright notice placing your software explicitly under the GPL version 2 and no other version.

    Furthermore, the original poster claimed that Stallman owned all software released under GPL. ("All GPL'ed stuff belongs to Stallman") This, of course, remains false. Copyright vests in the author, not in Stallman or FSF, unless the author assigns it to Stallman or FSF. While Stallman might like authors to do that, it's not a requirement of using the GPL, nor does the GPL even imply that Stallman or the FSF want copyright over all free software.
  • Um.... when did either of your examples change their licensing? Perl is distributable under either the Artistic (which is generally considered legally dubious but the duality does seem to make the raving anti-GNU forces calm) or the GPL and XFree is of course released under the very BSDish X license because of the vast quantities of X code in it.
  • INteresting disconnect there. YOu don't want people profiting from your work but prefer the BSD license. Doh!

    Ever looked at the docs to a Cisco router? Yup, they took the BSD codebase and stuffed it in a little box. Granted that over the years I'm sure they have modified the hell out of it so that very little of the original remains, but the license requires the credit in the docs to this day. How many billions did they make off of the BSD license? Granted they could also have used GPL code but they would have had to give their changes back to the community which I suspect all reading this would have considered a square deal.
  • No way this thread can answer the question for you unless you tell us what YOU want to accomplish.

    As for me, I'm a selfish bastard so I'd never consider anything but the GPL or LGPL for any code I happen to generate. The only reason I'd let others have my stuff for free is to be able to get patches back.

    Others have different motives so would pick a BSD license. I can tell you that as a practical matter your choice is between a BSDish or GPL license. Any other sillyness in a license tends to just kill a project. It might not seem logical, but it is true.
  • Whatever you use, please choose an existing license if it suits your needs (or try to make it suit your needs, or your needs suit it). This reduces your headaches in figuring out what code from other projects you can use. It also saves potential developers from figuring out exactly what this new license is trying to do and whether you're shafting them somewhere. Especially when a company is mentioned by name in the license--that raises all sorts of red flags for me.

    Using known licenses encourages developers--there's a trust of what's known. Plus, I'd rather code than read licenses.

  • Check the copyright [oreilly.com], specifically:

    "Freeing the Source" is copyright © 1998 Netscape Communications Corporation. It is printed here with permission from Netscape
    Communications Corporation.
    "Giving It Away" is copyright © 1999 O'Reilly & Associates. All rights reserved to O'Reilly & Associates and Red Hat Software.
    All other material is copyright © 1999 O'Reilly & Associates. All rights reserved.
  • Given that copyright law relates to when one is allowed to copy something, attempting to restrict someone's use of a program once they have legally obtained a copy is not something that you can do with a copyright based software license (AFAIK).

    Hence, If I download a copy of your code, to have a play with it (i.e. obtain a legal copy). Then, once I have the legal copy, it seems to me that I can quite legally use it to run my business --- I just cannot copy it further, and distribute it.

    The only way to enforce this, is to get me to enter into a contract prior to giving me access to the code, in which I agree not to use the software for anything commercial.
    [uic.edu]
    Dan Bernsein's take on the situation is probably worth reading, since I'm not a lawyer.
  • FUD implies an intention to mislead people. I suppose technically one could argue that any argument made without a clear understanding of the facts could potentially cause FUD, but that's just blurring the lines a bit much.

    The people afraid of TT being bought out by MS were bringing up a legitimate concern. It just happens that this concern was already being addressed in the licencing.

    FUD implies to me that these people were intentionally bringing up points which were not legitimate, or that they were misleading people in order to bolster support for their favorite competing product. I really don't think this is the case.

    There were a good number of people arguing on both sides of the TT licencing issues who were guilty of not being clearly informed. By arguing that people who reject KDE based on the TT license are guilty of spreading FUD, you could just as easily say that if a magical hole in the licencing is found and everything falls to hell, that the people arguing on the part of KDE are suddenly guilty of creating pro MS FUD? Why not? They were arguing that Gnome was inferior to KDE and that KDE's licencing issues weren't an issue.

    And this post is not FUD! It's an opinion.

  • That would make it non-open source/non-free. The Alladin Public License does something like that.
  • There are people out there (MOSIX, NeXT) who don't really want to give out source, but will if they have to. So I suppose it's an evaluation of how many of those we have vs. how many will give out derived works even when they don't have to.

    It is also an evaluation over how many derived works will be created, and what benefit that will lead to. I know that I have done quite a bit of FreeBSD code on paid time due to products we would never have made if FreeBSD had been under the GPL. Approx 80% of the mods I did to FreeBSD to support our product has been contributed back; the rest are either not cleaned up enough (so I won't contribute it back due to being ashamed of the state of the code, stylewise), or it is special performance tweaks for just our situation, with no value for anybody except people that would want to create a competing product.

    When it comes to both MOSIX and NeXT: Both of these are examples of people that has misunderstood what they could and could not do, and has done work on GPLed codebases only due to misunderstanding. Do we really want our source of software to be people that have been fooled?

    Eivind.

  • Choose a license based on your goals. Be really, really careful about evaluating how the license will bring those goals about, taking care to remember that coorporations are extremely license sensitive, and will not work on badly (from the view of them making money) licensed codebases.

    Example: If you goal is to destroy the market for properitary software, use the GPL. If you goal is something else (like my goal, maximizing the amount of good open source software), choose a license that aligns with that.

    From my analysis, the GPL is directly counter-productive to my goal - it is, however, effective for what seems to be Stallman's goals [gnu.org] - forcing all software to be free software. (See especially the end of the manifesto).

    A common fallacy is to believe that "all software is free software" is equivalent to "maximize the amont of free software" - it is not.

    Personally, I usually choose to use a BSD-style license, in order to optimize the amount of use my sourcebase gets. If somebody use my code in a properitary product - great! They're working on the code, and are likely to send back bug-fixes and enhancements - and if they don't, I'm no worse off than I would be if they didn't use the code.

    Besides, usage of free code is much more common in small, innovative comapnies than in the large juggernauts (who can usually just cross-license code anyway). Effectively, I help the innovative part of the commercial segment, kicking the juggernauts in the balls - which doesn't exactly detract from the experience :-)

    Eivind.

  • by joe_fish ( 6037 ) on Monday May 17, 1999 @08:30AM (#1888754) Homepage Journal
    I've been working on a project for the past 6 months that is just about is a state worth releasing - and I've been considering which licence to use.

    I would have GPLed it already but for these concerns.

    • People go around saying things like 'GPL means you can't link with non-GPL stuff' Now IANAL but I don't think it does, and the confusion is not good.
    • There appears to be a GPL3 in the works and I would expect that it will address some of the issues that RMS complains about. So maybe it will restrict plug-ins. Is this good? Do I want RMS to be deciding how my project is controlled? (Maybe I'll be forced to call it GNU/Project! :)
    • I'm not sure I want to be involved with a project that simultaneously criticizes the BSD self advertisement clause, and engages in obvious self advertising with the GNU/Linux debate.

    Opinions?

  • People go around saying things like 'GPL means you can't link with non-GPL stuff' Now IANAL but I don't think it does, and the confusion is not good.

    You can only link GPL with non-GPL stuff, if the non-GPL stuff can be legally re-licensed under the GPL.



    There appears to be a GPL3 in the works and I would expect that it will address some of the
    issues that RMS complains about. So maybe it will restrict plug-ins. Is this good? Do I want RMS
    to be deciding how my project is controlled? (Maybe I'll be forced to call it GNU/Project! :)
    I'm not sure I want to be involved with a project that simultaneously criticizes the BSD self
    advertisement clause, and engages in obvious self advertising with the GNU/Linux debate.


    These are good points, and part of the reason why I won't use the GPL for my own projects. I am leaning towards using the artistic license.

  • When did the perl project get killed? What about the Xfree86 project?

    Simply put, there are other viable alternatives to *GPL and *BSD around.
  • 1) Why is it such a bad thing if MS sold a decent OS?

    I think it's just the way MS tends to operate, there drive is not to sell cool technology, but rather to dominate whatever market they enter and not compete in that market, but destroy the competition, so that people have little choice but to go with the MS offering. That's why we avoid anything MS, we like to have a choice.

    Why is it that Linux users seem absolutely convinced they would adopt the Microsoft version if Microsoft released a proprietary fork of it?

    I would chalk that up to irrational fear. I'm sure most Linux users would avoid the MS offering. But the same FUD was used against KDE, that MS was certain to buy out Troll Tech, and would own Linux if people started using KDE

  • There's one you've missed ... the best license I've seen for a long time, and I write as someone owning a GPL T Shirt ;)

    SETI@home. Check it out.

    SETI@home, version 1.0: License Agreement


    You should carefully read the following terms and conditions before using this software. Your use of this software indicates your acceptance of this license agreement and warranty.

    Disclaimer of Warranty

    THIS SOFTWARE AND THE ACCOMPANYING FILES ARE DISTRIBUTED "AS IS" AND WITHOUT WARRANTIES AS TO PERFORMANCE OR MERCHANTABILITY OR ANY OTHER WARRANTIES WHETHER EXPRESSED OR IMPLIED. NO WARRANTY OF FITNESS FOR A PARTICULAR PURPOSE IS OFFERED.

    Adviso

    I understand that strong signals will occasionally be detected and displayed on this screen saver during the course of data analysis. I will not get alarmed and call the press when such signals appear, as I understand that thousands of signals have so far all proven to be due to interference (human made artificial signals) or test patterns used to test the hardware and software. I understand that potential signals this program identifies must be checked by SETI@home scientists to insure they are not from terrestrial origin, thencompared with other observations from the same star, then independently confirmed by different group of astronomers with different equipment.

    Distribution

    There is no charge for this software. Distribution of this software is prohibited.
  • On the first point, the people you refer to are correct. But the LGPL is your friend.
  • > Whether you like to have your program possibly being turned closed source is a matter of personal
    > belief, but do NOT tolerate this obnoxious advertising clause! If you decide to use the BSD
    > license, do the community a service and remove that clause from your license, or consider another
    > license.

    Examples are the XFree86-style license [xfree86.org] or the Modified BSD license [debian.org].

    See for more information about this topic the BSD License Problem [gnu.org] article.
  • For graphics or text you might want to look at the OpenContent License (OPL) [opencontent.org].

    For free software licenses see the Debian GNU/Linux Waht does free mean? [debian.org] page which lists all the commen licenses.
  • by Carl ( 12719 ) on Monday May 17, 1999 @08:13AM (#1888762) Homepage
    Nice summary.

    If you want to read more please read the preamble of the GPL [gnu.org]. And other articles on the fsf/gnu site starting with What is Copyleft [gnu.org] article.

    Another good place is the Social Contract [debian.org] of the Debian project. There is some more info on their What does free mean [debian.org] page where they list some different licenses and the features of those licenses. (And a warning against creating Yet Another Free License).

    Cheers Carl

    P.S. You might also like the diagram showing relationship between different categories of software [gnu.org].
  • If Linux had been under a BSD style license, MS would have an easy and clear way of destroying it as a competitive threat. They would create a prorietary fork, flood the market with it, and we would all live in an MS world for the indefinate future.
    I find it rather ironic that Linux folks regularly scream about FUD from MS and others, and then go and spread it themselves whenever they see the letters BSD.

    The free versions of BSD haven't suffered at all because of the proprietary, commercial version out there. In fact, there's been a moderate amount of benefit from it in terms of broadening the user base and code and knowledge sharing. Nor has XFree86 (which is a notable part of Linux!) been destroyed by MS or anyone else, despite not being under the GPL.

    If Linux weren't under the GPL, and a proprietary version were released by MS, would you use it? Would anyone you know use it? It's only if you would that Linux could be killed. Free software projects can't be killed from the outside, no matter what license they're on; as long as there are coders who are willing to work on the free versions, they will survive. But a loss of interest from those coders will always kill a project, even if it's under the GPL.

    Now are you Linux folks finally going to stop spreading FUD about your fellow free software projects?

    cjs

  • It seems to me that as long as I am not making money by distributing the code I should be able to do this?
    It's got nothing to do with whether you're making money from the code or not. The restriction the GPL places on you is that if you give someone--anyone--a binary of a program, you must give him the source as well. That's all.

    cjs

  • You loose interoperability precisely because of GPL resctictions, nothing else. BSD type is much more about freedom. Do whatever you want as long as you give due credit. With GPL, you are _forced_ to be free - what kind of freedom is that ?
  • Does anyone have/know of a list of licenses? It would be certainly useful so we could compare them.

    Mainly I'm looking for something to release not software, but graphics and other intellectual property under, and I was wondering if there was a precedent for that. But the list of licenses would be nice for any code I happen to write, too.
  • The free versions of BSD haven't suffered at all because of the proprietary, commercial version out there.

    Of course, afaik, the free BSDs haven't presented a threat to a market leader like Linux has to M$. In other words, there's been no attempt to use the BSD license maliciously against BSDeities. It's been, imho, rather friendly.

    If Linux weren't under the GPL, and a proprietary version were released by MS, would you use it?

    Obviously not. But then again, /.-ers don't make (I'm guessing here) the purchasing decisions or 'corporate road maps'. Suits do. And suits tend to be clueless/"safe choice" makers. FreeBSD or MS^2(w/MS Office support!)? MS^2 all the way. Stability and market share!

    If you're lucky, BillG will send you a 'Thank You' note for all your hard work.

  • How 'bout the GNU LGPL?
    GNU Lesser General Public License [gnu.org]
  • This is a higly controversial question and I don't think it'd do much good to bicker about the issue much longer. However, it should be noted that while the BSD license gives you more freedom, it also takes away freedom because it doesn't make sure that additions or changes to the program remains free.

    Also, it should be noted that the BSD license contains an obnoxious advertising clause that forces you to include "This product includes software developed by the University of California, Berkeley and its contributors." with all advertisments for your own product.


    Whether you like to have your program possibly being turned closed source is a matter of personal belief, but do NOT tolerate this obnoxious advertising clause! If you decide to use the BSD license, do the community a service and remove that clause from your license, or consider another license.

  • It is quite clear that you only have to give due credit when the software with said clause is being totted as a feature of whatever you are advertising.

    Yes. This is a problem. For example, if you have thirty different credit clauses in your TCP/IP network stack, and you say that you support TCP/IP networking, you'll have a big credit block in every ad.

    If you want credit, ask for it on a splash screen or in the manual. This doesn't turn into advertising gridlock, and nobody really minds adding an extra few pages to their documentation. The credit clause wouldn't be so obnoxious if it only said "UC Berkley"--it's when every single developer wants separate credit.

  • by Eric Kidd ( 21408 ) on Monday May 17, 1999 @11:58AM (#1888772) Homepage

    The best license choices are (in no particular order) the GPL, LGPL, XFree86 and fixed BSD license.

    The GPL

    The GNU General Public License is used for Linux and GCC. It allows anyone to make copies of your code--and change things as they wish--but it doesn't allow one user to take these rights away from another user. Use the GPL if you want every user of your program to always have source available.

    The LGPL

    The GNU Lesser (or Library) General Public License is like the GPL, but allows proprietary software to link against a free library. The Linux C library uses the LGPL. Use this if you want your code to remain free, but don't care about who uses it in their program.

    The XFree86 License

    This license allows anybody to do anything with your code, but it tries to prevent people from suing you. For example, a software company could take your program and turn it into a proprietary product without giving you any money. The X Window System uses this license.

    The BSD License

    The BSD license is sort of like the XFree86 license, but older versions had a bad bug. The older BSD licenses required certain phrases to appear in advertisements for the software. Because of this, it used to be illegal to advertise a NetBSD CD-ROM without giving credit to 75 people in every ad. Newer versions of the BSD license often remove the obnoxious advertising clause. If you want to use the BSD license, it's probably safer to use the XFree86 license instead--they both do the same thing, but no version of the XFree86 license contains bugs.

    Custom Licenses

    Avoid these if at all possible. Writing new open source licenses is very, very difficult and most people (even good lawyers) screw it up. The licenses listed above should cover most possibilities, and each one is known to work.

  • There was a company in Australia who suggested a similar license; there was an old slashdot article on it.

    One thing which I didn't see pointed out then, but which I think also applies to your license idea, is what the Securities and Exchanges Commission (or the analogue in your nation, the SEC is a US organization) would say about it. Specifically, this license model could, I hypothesize, be turned into a pyramid scheme. Assuming that every programmer who adds code to a program is entitled to a piece of the money from a given end user, a pyramid payment structure could be built.

    There are legal pyramid structures in business (e.g., Amway, although they were investigated for being a pyramid scheme -- apparently they got off); the critereon is that you have a "real" product. So assuming you can convince a judge that this is a real-life piece of software, you should be okay. Anyway, something think about (IMHO IANAL B/F/F).

  • The GPL perfectly protects the author. It ensures that people can use the code, but not make it their own.

    The BSD license is nice, until someone makes some changes, and then releases the program as binaries only. Sure, they may be required to say that you wrote some of the early code, but that's a small benefit.

    The reason the GPL applies to all future revisions of that source code is so that people can't steal your work.

    You the author always have the ability to do anything you want with your source code. You are protected by the GPL because the GPL makes sure that you always do have the ability to keep someone from closing your open source project.

    If BSD had such a clause, Microsoft couldn't have 'borrowed' network code from them and put it into the closed monstrosity that is Windows. They'd have had to either make the networking subsystem open source, or write their own code. I don't know about you, but if I write code, I want to make sure it won't be used by monopolistic jerks.


    The *most important* part of the GPL is that it applies to all future versions. All of Stallman's other accomplishments pale before this. Keeping code free is the chief thing which makes people trust projects like Linux. (Who would dev for it, if MS could come along, make a few KDE themes, and call it Win 2000?)
  • I was thinking about OSS licenses after reading the "Restrictively Unrestrictive" article. The mother of a friend of mine is a published SF/fantasy author; some other friends of hers include a band on an indy label. As a result, I've picked up some stories here and there about the troubles artists sometimes have trying to get artistic integrity and a decent paycheck to coexist.

    When these two topic threads collided in my brain, the idea that sprung forth was this: Essentially the FreeBSD license, but with an extra clause stating that if someone wants to incorporate part of the licensed code into a product to be sold for money, they need the programmer's permission to do so. The programmer reserves the rights under the license to negotiate conditions for the codes use: if he likes the company and feels charitable, he can just tell them to go on and do it; if he has ethical problems with the company or what they might do with the code, he could flat out refuse; or for various points between, he could negotiate payment for the code, either as a flat fee or a royalty (knowing more about the lit. and music business than the software business, I have no idea if the royalty thing would ever happen).

    Also, it should be clearly stated that previous arrangements for commercial distribution IN NO WAY set a precedent for future agreements (this would hopefully protect the programmer when he tells WeSaySo Inc. that he wants sagans of dollars for his code, and they yell and scream about how he let Applix use it all for just a free commecial-use license).

    Thoughts, anyone? Do I have a good idea here, or should I just lay off the crack?
  • I presume the these open source licenses will let me profit from (for example) GPL'd code if I do it without distributing it. As an example, lets say someone writes some intelligent code for predicting stock price movements. Can I start a company using this code with my own closed-source improvments? It seems to me that as long as I am not making money by distributing the code I should be able to do this? Anyone know better than me?
  • > People go around saying things like 'GPL means
    > you can't link with non-GPL stuff' Now IANAL
    > but I don't think it does, and the confusion is
    > not good.

    It depends on the non-GPL stuff, but generally speaking, this is true. You're required to link the derived work under the GPL. If the non-GPL stuff is under another license, it will typically prevent you from doing this. Fortunately, you can use the LGPL if you want to allow linking to non-GPL source.

    > There appears to be a GPL3 in the works and I
    > would expect that it will address some of the
    > issues that RMS complains about. So maybe it
    > will restrict plug-ins. Is this good? Do I want
    > RMS to be deciding how my project is
    > controlled? (Maybe I'll be forced to call it
    > GNU/Project! :)

    Nothing says you have to upgrade to GPL3. Someone else can take your code and GPL3 it, but you can still continue to use GPL2. If they add an enhancement and you want it, you would have to go to GPL3 to take their version.

    > I'm not sure I want to be involved with a
    > project that simultaneously criticizes the BSD
    > self advertisement clause, and engages in
    > obvious self advertising with the GNU/Linux
    > debate.

    You are free to use the GPL without otherwise having anything to do with the GNU project.
  • Well, I wouldn't really call that a FreeBSD like license, since the right to commercially use the code is the foundation in the FreeBSD license idea. More like some combination of GPL and FreeBSD with more restrictions.

    The FreeBSD license allows anyone to use the code any way they want. The GPL prevents proprietary use of the code, but does not prevent inclusion into commercial products. The GPL does not prevent you from making a separate license deal if you wish to sell proprietary rights to companies you like tho.

    Also, you do not need a precedent, this is implicit from your ownership of the copyright.

    Your idea is good, it's just sorta redunant; both the points are already implicit through copyright law. If you release code under GPL, you still retain those rights, with the only difference that people who will abide by the GPL have the rights set forth in that license.

    IANAL, whatever.
  • Well, not quite. Section 2b reads as you bolded, but IMO, that means that you have to distribute the work under the _terms_ of the GPL, not under the GPL in itself. That means that you can distribute BSD code combined with GPL code, and as long as they are distinct (different source files, for example), you can separate the BSD code later again and not be subject to the GPL. The combined work has to be under the terms of the GPL, but as long as any alternate licenses do not conflict with those terms they can retain their original license.

    But that doesnt really affect the point. If you choose to distribute code under GPL, to which you retain copyright, nothing prevents you from selling that code under a different license to someone else. As copyright holder you can license it however you want how many times you want to whoever you want.

    Also, you should be careful with how you would write such a license that you are considering. The most tricky part is what constitutes use in a commercial product. Is it if your code is sold? Would that include CDROM distributors? Not-for-profit organizations who sell CD's at cost? Web based advertizement schemes charging nothing for the code? Only proprietary use? Or opensource use too? It's very easy to end up with a license that does not allow distribution at all due to what constitutes selling the code.

    Oh, and IANAL, anyway.
  • by Neil Franklin ( 32480 ) on Monday May 17, 1999 @07:37AM (#1888780) Homepage
    > GPL protects the rights of the author
    > BSD license is more free

    I do not think that that describes the crucial difference. I fact it is borderline to being simply wrong.

    Both licenses aim at protecting the author(s), but they have different ideas of what constitutes "the author(s)".

    - BSD assumes an small central group ("cathedral") of authors (such as CSRG), who want to retain control over the end product.

    - GPL assumes multiple/many distributed ("bazaar") authors who want to attract more participants by guaranteeing no hording.

    So it is mainly an centralism/anarchism thing, an issue of social organisation style.

    To select a license for your project, read above two descriptions and select which authorship model you are more comfortable with. Then use the license developed for that type. Now what about that for choice?

    --
  • Hmm... and so instead of denying me my right to free speech, or the right to *not* speak, you are going to *FORCE* me to speak???

    Who is trampling on whose rights there?

    Freedom isn't really free if its *FORCED*.

    Of course, the wonderful thing about this whole argument... which all the zealots on both sides refuse to see... is that this whole thread is a perfect example of freedom of choice!!!

    If I choose to GPL my source... its my free choice to do so!! And if I choose to modify some code I have the choice to modify GPL source and publish the mods, or to choose non-GPL source (or write my own) and keep my ideas to myself. Or GPL my own rewritten version.. or BSD it.. or whatever.

    If I choose to BSD my source... its my free choice to do so!! Maybe I *want* to let businesses around the world use my code for profit if they want to... maybe I write for the fun & challenge of it and don't want to force anybody to publish their mods if they don't want to... guess what folks, its *MY FREE CHOICE* to do this if I choose this license! And if I choose this, who the heck are you to tell me what I should do with *MY* code???

    If I choose to write my own license terms... guess what?!?!? I'm free to do so!!!

    So isn't freedom great?!? And if you don't agree with my choice of licenses?? Great!! You are perfectly free to have your own opinion, think I'm a total a-hole jerk moron, or whatever!! Isn't that WONDERFUL?!?!? And do I care what your opinion is??? NOPE, because I chose my license out of my own free will because it is what fits my idea of how I want *MY* code to be used!

    FREEDOM is such a wonderful thing... isn't it?

  • ...and I think you do, too.

    Actually, I prefer the BSD license...

    You focused on the "first tier", but if the author chooses the GPL license he is not only removing choice from the *next* level of user, he is removing the choice from *ALL* levels of users. It completely removes my freedom of choice as a 2nd, 3rd, or beyond level of user.

    With the BSD license, each "tier" of user has a choice.. I am not restricting their choice of whether they want to publish their mods or not. Interestingly enough, given the choice there seem to be an awful lot of users who modify BSD licensed code and redistribute the source. I myself am working on some things that are BSD licensed that I certainly will be putting back out into the user community. I believe in open software, and if I modify something that is open source (whether BSD'd or GPL'd) I personally belive that I should give it back to the world... carrying on the open source "tradition" if you will. But I prefer not to have a legally binding contract *forcing* me to do it...

    Actually, from what I've heard, MS *did* have some BSD network code in Windows at one point. I think its funny... a company worth billions of dollars with a team of hundreds (probably thousands) of paid programmers can't write their own code, they have to grab someone elses?? Its actually a testimony to how well open-source software is designed that they'd do that... And then you could say, gee.. I spend $400 to get BSD network code from Micro$oft, without source, or get it for free on the net...

    Remember that, no matter what mods a user makes, the original source is still open-source BSD. If someone wants to make mods and keep them private, its their freedom to do so... I don't want to *force* them to, no matter how much I disagree with it... anymore than I'd want to *force* you to buy a Chevy because I like them, even though you like Ford's. (Actually I don't even own a Chevy, but just to illustrate the point...)

    Would I be frustrated as a 2nd tier user to have a program that was BSD'd that someone modified the original source and didn't BSD their mods?? Maybe.. depends on whether I needed those mods. But then again, since I enjoy programming I'd take it as a good challenge to modify the original to do the non-BSD'd functionality and more... and then send it out BSD'd it. Thats what open-source is all about... taking the functionality of someone else's proprietary code, re-writing it yourself and giving it away to the community.

    Just my opinion. Your preferred license is, of course, your free choice. Not up to me to choose your license, nor do I really care...

    I'm often curious how many people who get into the venomous license debate actually write code... ?? I see so many people arguing about the BSD bozos or the GPL losers and wonder if they'd even comprehend a simple statement like:

    for (blah=0;blah 5;blah++) *bufptr++ = *zz++;

    or is it just because they *can* have it that they feel its important. "I want a schematic diagram for my TV... I can't read one, will never use one, but I'll be pissed off if I don't get one". I'd gladly take an OS kernel without source if it was free and rock-solid stable and did what I wanted it to do...

    I use M$Word at work, it prints my little one page memo's and whatever documentation I write up just fine... why would I need the source? Even if I had it how long would it take me to figure out where the code is for font kerning, how it works, and how to modify it to fix whatever problem I'm having. Probably by the time I got through that the memo would be horribly out of date and meaningless, and I'd probably be fired for not doing what my job really is!!
  • thats "blah (less than sign) 5"... my less than got stripped out... :-(
  • Given that copyright law relates to when one is allowed to copy something, attempting to restrict someone's use of a program once they have legally obtained a copy is not something that you can do with a copyright based software license (AFAIK).

    I went and had a look at the law. Thanks for the reference. I'm not a lawyer either, still less a US copyright lawyer.

    However I don't see anything in here that prevents a license to own which terminates unless certain fees are paid. You can only run the program if you own a legal copy. If you run it without paying the fees then your ownership becomes illegal and you can no longer run it.

    Is Dan Bernsein a lawyer?

    Paul.

  • by Paul Johnson ( 33553 ) on Monday May 17, 1999 @07:18AM (#1888785) Homepage

    You might want to consider Liberal Source Software as a licensing model. We haven't produced an actual license yet, but its in the works. See here [elj.com] for details.

    Briefly, the idea is to distribute software with source code and a license that allows experimental use, modification, and the distribution of modified copies, but requires payment for any kind of "real use", for whatever value of "real" is appropriate to the software. In most cases that would be commercial use, but for example with a game it would mean actually playing the game. A key part of the scheme is that the revenue is shared amongst the developers in proportion to their contributions.

    This was extensively discussed on Slashdot a while ago, under the heading "Commercial Open Source Software". Some people thought it was a good idea, others did not like it. Since then I've added some more explanations and clarifications based on the comments I received.

    Paul.

  • - BSD assumes an small central group ("cathedral") of authors (such as CSRG), who want to retain control over the end product.

    Yeah? I thought it was the BSD license who would let anyone do whatever they want with the code, while GPL not only imposes restrictions to it's distribution (source must be made available) but also to your freedom in changing it (all changes should be distributed under the same license).

    Don't FUD.
  • The older BSD licenses required certain phrases to appear in advertisements for the software.

    This is FUD spread by the obnoxious GNU people.

    Here is the clause:

    3. All advertising materials mentioning features or use of this software must display the following acknowledgement: [...]

    It is quite clear that you only have to give due credit when the software with said clause is being totted as a feature of whatever you are advertising.
  • You forgot to mention that after the Microsoft flooded the market with the "proprietary fork", and all Linux users started using it for unknown reasons, we would end up in a world where the dominant OS didn't actually s*ck.

    There are two things *I* would like to know, though:

    1) Why is it such a bad thing if MS sold a decent OS? and
    2) Why is it that Linux users seem absolutely convinced they would adopt the Microsoft version if Microsoft released a proprietary fork of it?
  • Let me quote:

    3. All advertising materials mentioning features or use of this software must display the following acknowledgement:

    And now, let me quote you: with all advertisments for your own product.

    It is very explicit that you must only place that comment *IF YOU MENTION THE CODE YOU ARE USING IN THE ADVERTISEMENT*. For example, the new OS by Apple need only have that in it's advertisement if it said "includes NetBSD code!" or something like that.

    In other words, it's a claim credit clause. If they are going to use the presence of the code as advertisement, they need to give credit to it in the advertisement.

    Stop spreading baseless FUD.
  • Oops. I seem to have mispasted something and missed it.

    The link I screwed up on. [freebsd.org]

    Sorry.
  • The BSD-style license FreeBSD uses in fact does remove that particular clause. You must only give credit to the original developer(s) of the software in any binary reproductions of the original product.
  • by cmc ( 44956 ) on Monday May 17, 1999 @05:52AM (#1888792) Homepage
    While the GPL protects the rights of the author if the author wishes to keep the code open for others to contribute to, the BSD license is more free in that it allows people to integrate BSD-licensed code into closed source products, allowing people to make money. They both allow the code to be sold, but only one allows it to be sold only in binary form, with source made unavailible.

  • First off, IANAL, so I may be wrong on any of this.

    Just last night I was looking over each of the licenses. I may have misinterpreted the GPL because it is very wordy and lawyerish, but I know I understood the FreeBSD, its only got 2 clauses.

    Basically w/ FreeBSD you agree not to take credit for something you didn't write, but otherwise gives them full control over the code.

    The GPL however says that if GPL'd code is used in a program, the resulting program must be released under the GPL.

    From the GPL:
    2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:

    a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.

    b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.

    c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)

    These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.


    IMHO, this does not give people the most freedom, just forces people to play along with the FSF. It seems like a virus, because if someone wants to use a part of someone else's GPL'd code, they have to make their program GPL. That is not always in the 2nd party's interest. However, if the programmer WANTS to force his social ideas on other people who may find a use for the code, then by all means, the GPL is the way to do it.
    I agree with the original poster in that a modified FreeBSD license would be the best way to go... and I had also thought of doing the exact thing last night.
    I thought, "my ideal license would be a FreeBSD with a clause stating that if the code was going to be used in a commercial product, they must negotiate with the original author for permission".

    ~unyun~
  • by CBM ( 51233 ) on Tuesday May 18, 1999 @07:18AM (#1888794)

    People go around saying things like 'GPL means you can't link with non-GPL stuff' Now IANAL but I don't think it does, and the confusion is not good.

    The GPL doesn't govern what you do internally with copylefted code. As it states,

    Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program).

    The only question comes when you want to distribute a work based on copylefted code. Then you need to be sure that you comply with all of the modification and distribution terms of the license. The GPL thus does not prevent a person from downloading libreadline (which is licensed under the GPL) and combining it with their own non-free work, as long as they do not distribute the combined work. If they do want to distribute it, then the terms of all components must be made compatible with the GPL.

    The LGPL may also be relevant. It does permit an author to distribute non-free works which link against a LGPL library. The non-free work can be distributed under the authors own terms, as long as it contains no library-derived code. As the license states,

    A program that contains no derivative of any portion of the Library, but is designed to work with the Library by being compiled or linked with it, is called a "work that uses the Library". Such a work, in isolation, is not a derivative work of the Library, and therefore falls outside the scope of this License.

    Again, if the library and the program are linked, then the resulting derived work must be distributed under a compatibly free license.

    Therefore, I would argue that while there are still significant responsibilities to the author when he links against GPL or LGPL code, it is incorrect to say that "you can't link [GPL code] against non-GPL stuff."

  • Hello all. I've been struggling with licensing for 2 years now, especially with one for http://jos.org , I've written up a possible alternative. It is at http://distributedcopyright.org [distributedcopyright.org]. It seems to have the best aspects of open-source, yet allowing a return on investment for a developer. I'd love to hear your feedback, please join the discussion list! Thank you! Clark Evans

Always leave room to add an explanation if it doesn't work out.

Working...