Free and Open Source Software

Terms and Licenses


[NLUUG home]  -- [foss index]  [licenses]  [patents]  [resources]  [reasons] 

Terminology

Open Source Software (OSS)

This is the most often used term for software that is free to use and distribute. An important additional condition is that the source code can be viewed without signing a license, may be modified and the modified version may be distributed as well.

For a definition see opensource.org. However, this definition has a few clauses that not everybody associates with the term Open Source. Since there is no authority for Open Source, there cannot be an authoritive definition. opensource.org mentions that it is not possible to trademark Open Source, thus the term can be misused.

Free Software

This is nearly the same as Open Source Software, but the Free Software Foundation finds the differences important. For a definition see fsf.org. Note that the term Free Software actually has many meanings. Thus that something is called Free Software doesn't mean it falls under the definition of the Free Software Foundation.

It's difficult to summarize the differences between Open Source Software and Free Software. It's also more a political issue than a difference in definition. Associated with Free Software is the Free Software Movement, organized through the Free Software Foundation and lead by Richard M. Stallman. Their opinion is that ALL software should be Free Software. There is no equivalent Open Source Movement. The term is sometime used, but such a movement doesn't actually exist.

Free and Open Source Software (FOSS)

This is the generic term for software that is both Free Software and Open Source Software. If you don't take the definitions too literally, then all Free Software and Open Source Software is also FOSS.

Open Standard (OS)

A standard is an agreement on how something is done, such that several components can work together. An Open Standard can be used by everyone, without signing an agreement or paying a fee. For a definition see the one that Bruce Perens has written.

It is very well possible that non-free, closed software, uses an Open Standard. However, it's nearly impossible that FOSS uses a non-open standard, since it puts restrictions on the distribution of the software. A good example is the DVD standard: you cannot write a complete FOSS DVD player, because parts of the DVD standard require a license.

Licenses

An overview of nearly all licenses can be found on the website of the Free Software Foundation. They are categorized as the Good, the Bad and the Ugly. The Good are GPL-compatible, the Bad are non-free licenses and the Ugly are GPL-incompatible free software licenses. Note that this is the opinion of the Free Software Foundation.

The issue of being GPL-compatible is important if you use (parts of) GPL'ed code and do not want to use the GPL license for your own code. If you do not use a GPL-compatible license, you are not allowed to include GPL'ed code. Since there is a lot of GPL'ed code in the world, you quickly run into this when writing software.

Another overview, restricted to OSI Certified licenses, can be found on opensource.org. You might call this real Open Source licenses.

The GNU GPL

The most often used FOSS license is the GPL. The full name is: GNU Generic Public License. This is the reference for other FOSS licenses. It has been written by lawyers and has survived a few court cases.

The core of the GPL is that it first mentions that the source code is copyrighted, and then gives you the conditions under which you are allowed to use and copy the code anyway. Thus it is based on copyright laws, which is a powerful protection.

The details of the GPL are complicated, see the definition. An important issue is that all derived works must go under a license that is compatible with the GPL. Many commercial vendors have a problem with this, because it means that they must make all their additions public.

The GNU LGPL

The GNU Lesser General Public License is like the GPL, but without the clause that derived works must use the same license. This is often used for libraries, so that code compiled with those libraries can use a different license. Here is the definition.

The BSD license

Another often used license. It comes from the Berkely Software Distribution, a Unix version with code that is FOSS. It is a relatively short text, see here. It does not have the clause that derived works must use the same license, thus it is preferred by people who object to that. You could say that the BSD license gives more freedom than the GPL, because it doesn't enforce freedom.

There are many licenses that are mostly like the BSD license, but with a few differences. There is also an old version of the BSD license that requires advertisements to mention Berkely. It is deprecated.

What License should I use?

It's a personal choice what License is best for you. If you don't mind the "copyleft" clause of the GNU GPL, then that would be an obvious choice. SourceForge has a page to help you making a choice.


Something wrong or missing? Please send a message to < Bram AT nluug.nl >.           Last modified: Tue Jul 27 2004 21:25:20 UTC +0200