“Not All Open Source is Created Equal” Redux

Everything you always wanted to know about open source licenses in 500 words or less

I enjoyed Eric Gries' recent piece Not All Open Source is Created Equal about the different philosophical perspectives on open source development. One of the people who commented had been hoping for a discussion of difference in licenses. Another lamented a lack of what open source really means. Yet another asked Eric if he got paid by Network World to write the blog. Let's tackle the first two.

As explained in a previous blog, all software is protected by copyright law and can only be used with license from the author(s). Open source software is software offered under a particular class of license, and the Open Source Initiative (OSI) has created a 10-point definition of an open source license. In so many words it says that open source licenses allow free development of code without restriction. Currently, there are 66 OSI approved licenses. In practice, far fewer are commonly used. The top 10 licenses cover 93% of all projects and the top 20 almost 97%.

Open source licenses can be further classified into permissive, reciprocal and tweeners.

Permissive licenses further allow a licensee to redistribute the code under another license, including a commercial license. The most common permissive licenses are the BSD, MIT and Apache licenses. The first two are very simple and nearly comprehensible by lay folk. The Apache is more extensive, but lawyers appreciate that it is explicit about issues otherwise only implied. For example, the Apache license specifically states that it does not grant trademark rights (to, say, the name of the project); the other licenses are silent on the subject, only implying that they do not grant those rights.

Most open source is offered under the GPL license, a reciprocal (or copyleft) license. This is the license for Linux, as an example. The key attribute of the GPL is it only allows the code and derivative works to be distributed under the same license. A concern for commercial developers is that a little bit of GPL-licensed code can "infect" their code base and disallow them from distributing under a commercial license (or even another open source license). This is primarily a concern for organizations that distribute software, but a variant of the GPL, the AGPL license, has a network-use clause that triggers obligations on code that is used over a network, i.e. without distribution.

There is a lot of legal wrangling over what constitutes a derivative work. The tweener type licenses deal with a gray area and allow a commercially licensed software to be linked to unmodified open source (like a library) without inhibiting the commercial licensing. The LGPL (Lesser GPL) and the Mozilla license are the two most common examples.

If you want more detail, I highly recommend a webinar on open source basics later this month with the attorneys for the Open Source Initiative and the Linux Foundation. 

Join the Network World communities on Facebook and LinkedIn to comment on topics that are top of mind.
Take IDG’s 2020 IT Salary Survey: You’ll provide important data and have a chance to win $500.