There's
a lot of terms in the world of software that can sound like the same
thing to someone not well versed in all of this. And a lot of
these terms have a lot more in common than they have different.
adding to the confusion. So exactly what is Open Source
Software (OSS), Free Software, Freeware, Free and Open Source
Software (FOSS) or even Shared Source Software? And more importantly,
how are they different? And exactly what is the whole free as
in speech vs. free as in beer thing?
Open
Source Software (OSS here on) is software where the source code is
made available to the users of the software. There are a number of
licenses that this software is released under, such as the BSD
License, The
GPL,
and others. I'll skip the pros and cons of all of these different
open source licenses and how they differ because that's more of a
philosophical debate. What is important is that you as the user
are free to use the software as you wish as well as being able to
examine or even modify the source code. Different open source
licenses place different restrictions on redistributing the source
code or software which makes use of some or all of the source code.
But any truly open source license does not restrict my use of
the software in any way, only how I am permitted to redistribute it,
despite a lot of FUD against the GPL that is out there. I can
modify the source code in any way I wish and keep the changes to
myself as long as I am not distributing anything containing the
original source code or my modifications. If you care to compare and
contrast software licenses and your rights and responsibilities as a
user or a distributor, visit the Free Software Foudation's website at
www.fsf.org.
The
FSF builds on this principle with their term Free Software. The
FSF states that "'Free Software' is a matter of liberty, not
price. To understand the concept, you should think of 'free' as in
free speech, not as in 'free beer.'" To put it simply,
when you enjoy free beer, you are free to drink and enjoy the beer,
but you're not getting the recipe so you can go home and brew you up
another batch tomorrow. With free as in speech, you are getting
that recipe, and you are allowed to make your own any time you wish.
Free as in speech is free software (such as a utility like The
Gimp), free as in beer is freeware (such as Paint.NET).
So
what is the difference between Free Software and Open Source
Software? That lies mainly with the developers of the software.
Free Software is as much as philosophy as a license.
Proponents of Free Software want all software to be free
(within their definition of free) with an almost religious devotion.
Proponents of Open Source Software either just want to share
their work or cite the open source model as a superior way of
developing software. Most of us fall somewhere in between and
use the term Free and Open Source Software (FOSS) which is fine since
both camps use the same licenses.
There
is one more category related to this discussion. Some
commercial software vendors provide what what is referred to as
Shared Source Software. This is where the vendor provides the
source code for a product to a customer for review, but the customer
usually has no rights to anything other than a review. Therefore
shared source is not really related to free and open source software
despite the providers attempting to make the case that it is.