Further Discussion on the Meaning of Open Source

by Andrew Dalke

Editor's note: We asked Andrew to elaborate on his definition and claims about open source, based on this paragraph from his essay Why I'm Not Supporting the Open Informatics Petition:

"Open source licenses rarely require that local changes be distributed. Open source licenses do not set a limit on the fees charged. Open source licenses set no restriction on when, how, or where the source is distributed (with minor exceptions)."

The terms "open source" and "free software" are two of several different ways to describe software that allows redistribution. For various reasons, there isn't a generally accepted term that covers all these ways. The Free Software Foundation (FSF) has a page of terms and links that discuss the various meanings and interpretations. Despite the problems they mention, I and many others in bioinformatics prefer to use "open source" as the general term for this class of licenses.

Software, unless it has been placed into the public domain, is covered under copyright law. As such, there are restrictions on what you can do with it, unless the copyright holder gives you additional permissions. These rights are given (or sadly, more often taken) through a license between you and the copyright holder.

Some licenses give you the ability to redistribute the software to others without additional obligations to the copyright holder. You do not need to request a new license nor do you need to pay any fees. They allow you access to the source code and include any modification or patches along with the redistribution. These licenses are known as free or open source licenses.

There are a few guidelines to help judge if a license is free or open source. One example is the Debian Free Software Guidelines, as well as the related Open Source Definition. They look similar because the second definition is based on the first one. Another is the Free Software Definition. The BSD, GPL, LGPL, Artistic, and X11 licenses all meet these guidelines.

The first criterion of the Open Source Definition states:

"The license shall not restrict any party from selling or giving away the software as a component of an aggregate software distribution containing programs from several different sources. The license shall not require a royalty or other fee for such sale."

There are two statements here. First, an open source license must not make any restrictions against selling the software. There can be no upper limit to the sale price nor any restriction on including open source and non-open source software on the same distribution media. This is what allows the various Linux-based companies to sell their distributions for many times more than material costs, and include proprietary applications, games, and fonts in the distribution.

The second statement is that there is no lower limit to the sale price. The redistributer must be free to give the software away, so long as the license conditions are met.

Comment on this articleDo you think all code generated by publicly funded research should be licensed as open source?
Post your comments or read what others have to say

Many people have mixed these two statements together to believe that open source or free software must be made available at low or no cost. This is not the case. Redistributors are allowed to charge as much as the market can bear. The FSF even has an essay on its site titled Selling Free Software, which defends their statement:

"We encourage people who redistribute free software to charge as much as they wish or can."

Some specifically believe the GPL has a restriction on how much can be charged. It does not. The only section limiting the cost of source code access is when the primary distribution is in object or executable form. In that case, and that case only, source code must be made for minimal additional charge.

And that is why I said in my essay that:

"Open source licenses do not set a limit on the fees charged."

One subclass of open source licenses allow you to place additional restrictions on redistribution. For example, the Python and Biopython licenses let you include their source code in a proprietary package, sell the package (with or without the original source code), and prohibit your customers from redistributing the package.

Others require that any redistribution of the software must remain under the same license. These are often termed "copyleft" licenses.

In nearly every case, these licenses only affect the act of redistribution. You are free to do as you wish with the source code as long as it is not redistributed, and you are not required to redistribute the code. (There are a few minor exceptions to this. For example, the vim license requires you send a copy of your changes to the author if he or she asks for them. The FSF calls this a free software license but says that restriction is incompatible with the GPL. See the FSF's Various Licenses and Comments About Them.)

Even if you decide to release the source code, neither the guidelines nor the open source licenses I know of place requirements on when, where, or how the source code is distributed. You are free to make it available only once a year. You are free to sell it on paper tape. You are free to require your customers meet you in person at any place you desire. The only restriction mentioned anywhere is that binary distributions must have a well-published way to access the source code at minimal additional cost, with a preference for no-charge access via the Internet.

And that is why I said in my essay that:

"Open source licenses rarely require that local changes be distributed.... Open source licenses set no restriction on when, how, or where the source is distributed (with minor exceptions)."

In their essay, Harry and Jason explicitly list six possible benefits that could arise as a result of their petition's success. All are based on the premise that open source licensing means that the publicly funded researcher must actually distribute the software, and for minimal charge. Yet neither of these are required by open source licenses and indeed the FSF explicitly says these would be restrictions on the freedom of users and developers.

Read Does Publicly Funded Research Have to Result in Open Source Code? to follow the debate about whether software generated by publicly funded research must be released with an open source license.