All advertising materials mentioning features or use of this software must display the following acknowledgement: This product includes software developed by the University of California, Berkeley and its contributors."This made it incompatible with the GPL, as well as introducing practical problems noted by the FSF. The problem is that when code is merged together (and it is), and everyone adds their own name (they did), people couldn’t advertize without listing potentially hundreds of people - making this completely clause impractical as software scaled. In June 1999, after two years of discussions, the University of California removed this clause from the license of BSD. Thus, this is an obsolete license that should no longer be used; use licenses such as the “new BSD” aka “modified BSD” or “3-clause BSD” license instead. (二)Avoid the “Academic Free License” (AFL). It has been claimed that the AFL was a “compatible upgrade” from “licenses such as BSD and MIT”, but this is a misleading claim; as the FSF notes, “the modified BSD license and the X11 license (aka MIT) are GPL-compatible, but the AFL is not.” (at least version 1.1 and 2.1 are incompatible, and I believe that AFL version 3 is incompatible as well). The AFL has some nice properties from a legal point of view, but its GPL-incompatibility is a serious failing that completely dwarfs those advantages. Projects such as SHPTRANS have noted the AFL incompatibility as a serious problem, and have chosen to not use the AFL for this reason. At one time some people in the OSI recommended the AFL, but as of July 30, 2007 the OSI lists the AFL license as being “redundant with more popular licenses”, and pointedly does not include it with “Licenses that are popular and widely used or with strong communities”. (三)For now, avoid the “Common Public License” 1.0 (CPL), though this may change. The CPL is not nearly as popular as the GPL, LGPL, BSD-new, or MIT/X11 licenses, but it has more uses than most other licenses. The CPL is even in the OSI’s list of “Licenses that are popular and widely used or with strong communities”. Some other licenses, such as the Eclipse license, are based on the CPL. It is known that the CPL is incompatible with GPLv2, so for the moment it is probably best avoided. However, it is possible that the CPL is compatible with GPL version 3, which would make it much more palatible and similar to the Apache 2.0 license (which is incompatible with GPLv2 but compatible with GPLv3). At the moment, I’d wait until there’s been lengthy legal analysis to settle the matter. (四)Avoid the “Open Software License” (OSL). This is supposed to be a strongly protective license like the GPL. But it’s incompatible with the GPL, and almost no one uses this license, so any such code cannot use or be used by the vast majority of FLOSS projects. The FSF also believes that the distribution terms make normal development processes illegal, creating a severe practical problem. Again, at one time some people in the OSI recommended the OSL, but as of July 30, 2007 the OSI lists the OSL license as being in the category “Other/Miscellaneous licenses”, and pointedly does not include it with “Licenses that are popular and widely used or with strong communities”. (五)Avoid the “Artistic 1.0” license (from Perl). Although intended to be an OSS license, the Artistic 1.0 license is a poorly crafted license that creates all sorts of legal problems. The Free Software Foundation (FSF) says it is not a free license because its text is vague and open to misinterpretation. The Perl community, which developed it, agreed with this assessment and rewrote the Artistic license to resolve all the identified problems. The OSI has “superseded” the license, recommending strongly that all users move to Artistic 2.0.. Fedora (a very popular Linux distribution) no longer permits projects that use Artistic 1.0, and for Fedora 10 plans to remove all projects that use only the Artistic 1.0 license. Actually, this license is probably compatible with the GPL, but it’s so hard to figure out what it means that I include it here. I recommend using the MIT or BSD-new licenses instead of the Artistic licenses where you reasonably can. (六)Avoid using the “Creative Commons” licenses for software. The Creative Commons FAQ says, “Creative Commons licenses are not intended to apply to software. They should not be used for software... [they don’t distinguish, as needed,] between object and source code... We strongly encourage you to use one of the very good software licenses available today [instead].” Jay Tuley’s “5 reasons to not choose a CC license for code” explains more. The debian-legal Summary of Creative Commons 2.0 Licenses recommends that authors who wish to create works compatible with Debian’s “Debian Free Software Guidelines” should not use any of the licenses in the Creative Commons license suite; licenses with the “NonCommercial” or “NoDerivs” license elements are fundamentally incompatible with FLOSS, authors who use or are planning to use the Attribution 2.0 license should consider a similar Free Software license such as a BSD- or MIT-style license..., and Authors who use or are planning to use the Attribution-ShareAlike 2.0 license should consider a similar Free Software license such as the GNU General Public License [GPL]. The Creative Commons has “wrapped” the GPL and LGPL if you want to use the Creative Commons search engine. (七)Avoid the Mozilla Public License (MPL) version 1.0, version 1.1, and the Incompatible With Secondary Licenses clause of version 2.0. The Mozilla Public License (MPL) was originally created by Mozilla, but its GPL-incompatibility caused so many problems that Mozilla eventually re-licensed their work under a GPL/LGPL/MPL triple license. Other former MPL users like Alfresco have abandoned the MPL. It's important to note that even the original creator of the MPL 1.0 and 1.1 abandoned it as their sole license, because of GPL-incompatibility; don’t duplicate their mistake. Google no longer lists the MPL as a recommended license, even though they once did. Indeed, there was a time when Google code would not accept MPL projects; Google code now allows any OSS license, but it still does not include the MPL as a recommended license. The more recent MPL version 2.0 iscompatible with the GPL, due to a lot of hard license analysis work... making the MPL compatible with the GPL was one of the main reasons the MPL was updated. However, MPL version 2.0 has optional "incompatible With secondary licenses" clause, and if you include it the software is no longer GPL-compatible (so do not include that clause). (八)Avoid the CDDL. This Sun creation is similar to the MPL. Yet the original creator of the MPL no longer uses it (exclusively), and the experience of OpenSolaris shows that the license is a real stumblingblock. CDDL-based projects tend to have relatively small levels of participation, and I think a key reason is the license. (九)Avoid the “NASA Open Source Agreement” version 1.3. This is one of those rare cases where the OSI has accepted a license as being an open source software license (per the open source definition), but the FSF has determined that the license is not a Free Software license (per the Free Software definition). The problem is that it requires that changes be your “original creation”. FLOSS software development depends on combining code from third parties, so if that is interpreted literally, this agreement would prohibit practically all real work and would certainly be GPL-incompatible. It’s best to avoid this license. NASA has told me that they are in the process of changing this license to remove this silly restriction; that would make it better, though I do not know if their result will be GPL-compatible.
David A. Wheeler enjoys
learning and writing about FLOSS and IT security,
and spends far too much of his spare time on them.
He is the author of papers such as
Why
Open Source Software / Free Software (OSS/FS or FLOSS)? Look at the Numbers!,
How to Evaluate Open Source Software/Free Software (OSS/FS) Programs,
Open Source Software (OSS) in U.S. Government Acquisitions,
FLOSS License Slide,
Open Source Software/Free Software (OSS/FS) References, and the
Secure Programming
for Linux and Unix HOWTO.
He has also developed several FLOSS programs such as
flawfinder and
sloccount.
He also plays the piano and guitar.
It is rumored that he doesn’t actually sleep, which would explain a lot.
You can see his web page at
https://dwheeler.com
for additional evidence of this.
|