Ask Slashdot: Comparing Open Source Licenses
Posted by
Cliff
on Mon May 17, 1999 09:38 AM
from the stuff-to-wonder-about dept.
from the stuff-to-wonder-about dept.
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
|
Log In/Create an Account
| Top
| 104 comments
(Spill at 50!) | Index Only
| Search Discussion
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.

BSD credit where due clause (Score:4)
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.
GPL, BSD, Artistic, and so on (Score:5)
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.
Get a clue, indeed. (Score:3)
> 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.
Re:Get a clue, indeed. (Score:3)
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.
The right license depends on YOUR goals. (Score:3)
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.
Which licence? (Score:3)
I would have GPLed it already but for these concerns.
Opinions?
Re:GPL, BSD, Artistic, and so on (Score:4)
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].
Basic License Choices (Score:5)
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.
Protections for "commercialized" Open Source code? (Score:4)
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?
Re:GPL vs. BSD (Score:3)
> 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?
--
Liberal Source licensing (aka COSS) (Score:3)
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.
GPL vs. BSD (Score:3)
can't link against non-GPL code? (Score:3)
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,
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,
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."