Random Thoughts..
Saturday, January 18, 2003
 
What Does Free Mean? or What do you mean by Free Software?
Note: In February 1998 a group moved to replace the term
"Free Software"
with "Open Source
Software". As will become clear in the
discussion below, they both refer to essentially the same thing.
Many people new to free software find themselves confused because
the word "free" in the term "free software" is not used the way they expect.
To them free means "at no cost".
An English dictionary lists almost twenty different meanings for "free".
Only one of them is "at no cost". The rest refer to liberty
and lack of constraint. When we speak of Free Software,
we mean freedom, not price.
Software that is free only in the sense that you don't need to pay
to use it is hardly free at all. You may be forbidden to pass it on,
and you are almost certainly prevented from improving it. Software
licensed at no cost is usually a weapon in a marketing campaign to
promote a related product or to drive a smaller competitor out of
business. There is no guarantee that it will stay free.
Truly free software is always free. Software that is placed in the
public domain can be snapped up and put into non-free programs. Any
improvements then made are lost to society.
To stay free, software must be copyrighted and licensed.
To the uninitiated, either a piece of software is free or it isn't. Real life
is much more complicated than that. To understand what kinds of things people
are implying when they call software free we must take a little detour into
the world of software licenses.
Copyrights are a method of protecting the rights of the creator of
certain types of works. In most countries, software you write is automatically copyrighted.
A license is the authors way of allowing use of his creation (software in this case),
by others, in ways that are acceptable to him.
It is up to the author to include a license which declares in what ways the software may be used.
For a proper discussion of copyright see http://lcweb.loc.gov/copyright/.
Of course, different circumstances call for different licenses.
Software companies are looking to protect their assets so they only release compiled code
(which isn't human readable) and put many restrictions on the use of the software.
Authors of free software on the other hand are generally looking for some combination of the following:
Not allowing use of their code in proprietary software. Since they are releasing their code for all to use, they don't want to see others steal it.
In this case, use of the code is seen as a trust: you may use it, as
long as you play by the same rules.
Protecting identity of authorship of the code. People take great pride in their work and do not want someone else to come along and remove their name from it or claim that
they wrote it.
Distribution of source code. One of the problems with most commercial code is that you
can't fix bugs or customize it since the source code is not available. Also, the company
may decide to stop supporting the hardware you use. Many free licenses force the distribution of the source code. This protects the user by allowing them to
customize the software for their needs. This also has other
ramifications which will be discussed later.
Forcing any work that includes part of their work (such works are called derived works in copyright discussions) to use the same license.
Many people write their own license. This is frowned upon as writing a
license that does what you want involves subtle issues. Too often the wording used is
either ambiguous or people create conditions that conflict with each other.
Writing a license that would hold up in court is even harder.
Luckily, there are a number of licenses already written that probably
do what you want.
Three of the most widely found licenses are:
The GNU General Public
License (GPL). Some good background information on software licenses
and a copy of the license can be found at
the GNU web site.
This is the most common free license in use in the world.
Artistic License.
BSD style license.
Some of the features these licenses have in common.
You can install the software on as many machines as you want.
Any number of people may use the software at one time.
You can make as many copies of the software as you want and give them
to whomever you want (free or open redistribution).
There are no restrictions on modifying the software (except for keeping certain notices intact).
There is no restriction on distributing, or even selling, the software.
This last point, which allows the software to be sold for money seems to go
against the whole idea of free software. It is actually one of its strengths.
Since the license allows free redistribution, once one person gets a copy
they can distribute it themselves. They can even try to sell it.
In practice, it costs essentially no money to make electronic
copies of software. Supply and demand will keep the cost down. If it
is convenient for a large piece of software or an aggregate of software
to be distributed by some media, such as CD, the vendor is free to charge
what they like. If the profit margin is too high, however, new vendors will
enter the market and competition will drive the price down.
While free software is not totally free of constraints (only putting something
in the public domain does that) it gives the user the flexibility
to do what they need in order to get work done. At the same time, it protects
the rights of the author. Now that's freedom.
Comments: Post a Comment

<< Home

Powered by Blogger