|
Free Software, Anyone?
It's turning out to be a classic battle between Good and Evil.
The Free Software movement--programmers who cooperatively write
code and give it away (often in their own spare time)--is
gaining enormous momentum. The darling of the free software
movement--the Linux operating system--is lining up to challenge
the product that Microsoft is staking its monopoly on: Windows
NT (not to burst anybody's bubble, but Windows 98 is a joke
inside and outside of Redmond). And Netscape captured the public
eye earlier this year when a cadre of its programmers convinced
their uber-capitalist CEO Jim "I kept FedEx union-free"
Barksdale to not only give away its core product (the web
browser), but turn over development to the free software
movement--a movement better known for its anarchist tendencies
then for its MBAs.
The Free Software movement (it refers to itself as a movement,
and even talks about "revolution") was sparked by a 70's
leftist political radical at MIT named Richard M. Stallman
(RMS). Actually, when RMS first started programming, nearly all
software was free. But, during the 1970s, a wave of corporate
ownership swept into computer programming (along with the
rising tide of Microsoft), and organizations began to
"copyright" software, forcing people to pay to use it (only one
machine at a time, please). This went against the old hacker
ethic: "information wants to be free."
To protect free software against this onslaught, RMS created a
license called the GNU Public License (GPL), which is
essentially an "open copyright" license (also called the
"copyleft"). The GPL says that you can do anything you want
with the software. You have access to the source code, so you
can rewrite the software. BUT (and this is a big BUT),
anyone you give or sell the software (or a modified version of
the software) to has the same rights you do; i.e., they can
give it away, sell it, tinker with it, etc., but they must put
anything they create from it under the GPL, too, for others to
use. Hence, the GPL encourages sharing and discourages
competition and property rights.
Needless to say, RMS often is accused of being a communist
(possibly true), but people still like GPL software. Linux and
Perl, two very prominent and popular products on the web, are
both released under the GPL; in fact, the Oscar award-winning
special effects for the movie "Titanic" were created using the
Linux operating system. Apache, the program that
serves/delivers a majority of web pages on the Internet, is
also free software, although under a different license than the
GPL. Sendmail, the program that moves email from one place to
another, and bind, which converts domain names to IP numbers so
you type http://eatthestate.org instead of
http://207.207.67.91, are all free software.
One of the most interesting things about large free software
projects is how they operate. They rely on volunteer labor from
people who love to create efficient and elegant systems.
Another unique feature of many groups is the "flat" structure.
Each group is different, but often there's little or no
hierarchy--just groups of people working together. Decisions
are made using a "rough consensus" model. People are free to
join or leave teams as it suits them, and there's a high level
of cooperation between even "competing" products. Hell, since
all the source code is available anyway, people copy each
other's code left and right (giving credit where credit is due,
of course).
For example, in the Perl community, there's an open group that
fixes bugs and adds features to the product, and a rotating
leadership for the person who verifies the quality of the code
and checks it in. In discussions, certain people within the free
software community will automatically be respected for their
technical knowledge and work on past projects; nevertheless,
there's always respect for anyone who knows what she/he is
talking about.
The only exception to this free-love, er, free software,
egalitarian utopianism is that the original creator of a
project (when there is a single creator) usually becomes a de
facto "enlightened dictator" for future versions. So, in the
case of Perl, when consensus breaks down and no one can agree,
they turn to Larry Wall, since he developed Perl 1.0. People
believe that, if his leadership got them to Perl 5.0, he must
be doing something right. (One interesting aside about Larry
Wall: he's actually a linguist and missionary by trade. He
wrote the programming language Perl to resemble real-world,
natural language, and early-on saw development of a Perl
cooperative "community" as very much integral to the language.)
It's important to note that "enlightened dictators" have no
real or legal control over the product (Linus Torvalds of Linux
fame emphasized this during an interview with NPR). People
listen to them like wise elders, because they trust their
advice. But once developers quit trusting the advice, they are
free to take the code and do their own thing with it. Not
coincidentally, the successful leaders are marked by their
self-deprecating humor, humility, and willingness to let go of
control (in other words, Bill Gates would be horrible at
this--he better keep his day job).
Impressively, free software tends to be more stable, more
reliable, faster, and more technically advanced than say,
products made by a certain company located in Redmond,
Washington. Linux won InfoWorld's "Product of the Year" and
"Technical Support of the Year" awards last year (the latter is
especially impressive, since Linux has no official technical
support--just a lot of hackers on the Internet willing to
help anyone out). Moreover, many (if not most) of the people
who contribute to the free software movement do it for free and
not for any personal financial gain.
So the next time some brain-washed idiot tells you that anarchy
is utopian, egalitarianism impossible, people would rather bang
each other over the head by nature, consensus decision-making
is slow and disorganized, and capitalism will always produce
better products than cooperative economic models, you have
counter-examples to give them. Right now, the main threat to
Microsoft on every front is free software (because of its
superior quality), and the main threat to free software is
Microsoft (because of its shrewd marketing and illegal,
monopolistic behavior). This battle is going to be fun; why not
join in? Its free!
For more information, check out these websites:
--bi8fra. (Important disclosure: I work at Microsoft, but
refuse to drink the coffee.)
Editor's Note: Richard Stallman sent us the following
corrections to the above article. We apologize for the errors.
From: Richard Stallman
To: ets@scn.org
Subject: Article about free software
Sent: Saturday, July 04, 1998 12:27 PM
I was happy to see your article about the free software movement,
but I'd like to correct a few details.
The full name of our usual form of copyleft is
The GNU General Public License, or GNU GPL for short.
It isn't the "GNU Public License".
Linux is not really an operating system--it is the kernel, one of
the essential components of a whole operating system. The operating
system in which Linux is used are variants--modified developments--of
the GNU system. When Linux was written, the kernel was the last major
component still missing from the GNU system; putting Linux together
with the not-quite-complete GNU system made a whole system.
You can help avoid confusion, and also give the GNU project
recognition for its drive to make a whole free system, by using the
name "GNU/Linux" to refer to the whole system. The kernel is simply
"Linux".
Please see http://www.gnu.org/gnu/linux-and-gnu.html for a full
explanation of the history of this.
Needless to say, RMS often is accused of being a communist
(possibly true)
I'm used to occasional accusations of being a Communist, but usually
this is done by people who would rather argue against Communism than
against my actual views. But it's a new experience to see someone who
means me well by it.
It isn't accurate, though. I work on free software to give software
users freedom, which is nothing at all like Communism. I've been
partly influenced by leftist Anarchism, by the idea of a world in
which people voluntarily arrange to work together for the general
good, but not at all by Communism.
The best way to understand and explain my views is to compare them
with the environmental movement and the consumer movement. They too
aim to stop certain specific business practices on the grounds that
they hurt the public. When proprietary software prohibits people from
working together and cooperating voluntarily, that pollutes the good
will at the root of society. I want to stop this kind of pollution.
|