The Open Source movement (as seen at such sites
as www.slashdot.org) can be one of the most annoying groups of
people ever. They’re constantly having massive fights over trivial
issues. [1] Their important points about fair use in software
and music are drowned out by people who want to make sure that it’s
impossible for anyone to make any money by selling software or cds.
Statements about how Open Source software has some natural advantages
over closed sourced software are hard to find among the constant
barely factual rants about Microsoft. If there’s ever a cause that
needed to be separated from its supporters – well after the
Palestinian suicide bombers of course – it’s this one.
So what exactly is Open Source software? Simply put, it’s software
that tells you exactly how it was made. When you get a copy of
Microsoft Office, what you get are just some compiled binary files.
The computer can use them to run the program, but they’re completely
unreadable. Try opening up a .exe file in Notepad one day and you’ll
see how useless that is. That file is known as a binary file. The
file that programmers used to actually create the program is known as
the source code. The source files – while perhaps still confusing and
hard to follow – will be written in a programming language that humans
can read and write in. If Office were an Open Source project, in
addition to the files that let the computer run the code, you would
also get the source code. You could see how the program worked.
Why is this important? Let’s say there’s a new email virus that comes
out. Suppose for some reason Microsoft is being really slow about
making a fix for it. Instead of waiting for them, if you’re a good
enough programmer, you could write a fix for it yourself. Moreover,
you could reuse the code found in it to write similar programs for
yourself. Maybe you have some need that Office doesn’t quite cover.
You could write it in there yourself. That’s the freedom that Open
Source software gives you.
Of course, this freedom also comes with a price. Because the source
code is freely distributed, anyone who wants to can make cds of the
product and sell it. It’s a lot harder – some would say near
impossible – to make money selling Open Source software. This means
that the software tends to be written more by hobbyists and people who
live to program. The programs tend to be written more for their needs
than the needs of end users. User interfaces are at best sketchy
because they’re not very fun to write and most of the programmers who
made the program understand the complicated version just fine. They
tend to be programs written for programmers.
What inspired this discussion was the final destruction of my mp3
player. I loved my Neo Jukebox, but it is a fragile machine and it
finally broke. After doing much research, I replaced it with an
Archos Jukebox model. Why Archos? A group of people have figured out
how the device works and started an Open Source firmware.[2] Open
Source might not be perfect for everything, but this is a project
where it excels. People who actually use the product sit around and
ask themselves what would make the player better. Instead of just
saying, ‘Man I wish I could have it display the album title,’ they
figure out how to make it do that and write the code. As I’ve been
upgrading, the player has become more and more useful. They don’t
have to worry about whether this is the best use of company resources
or if people would be confused by the many different ways you can
display file information. They just wanted this feature, they
created it, and then they gave it to others. Even if Archos goes
under tomorrow, I still might get improvements to my player. Open
Source isn’t perfect by any means, but when it does work, it’s
amazing.
To see more about the new Archos firmware go
to http://rockbox.haxx.se/
[1] The most infamous is Richard Stallman’s insistence that no one
should ever use the word ‘Linux’ to describe that operating system.
Instead they should use ‘GNU/Linux’ to describe the importance of all
of the GNU tools that Linux uses. I’m sure the fact that GNU is
Stallman’s group has nothing to do with the reason why he rants about
that so much.
[2] Firmware is the program that tells the device how to work. For
example, it would have instructions about what to do when the play
button is hit.
David Steinberg got his Masters Degree in mathematics from New
Mexico State University in 1994. He first discovered the power of live
music at the Capitol Centre in 1988 and never has been the same. His
Phish stats website is at www.ihoz.com/PhishStats.html and
he was the stats section editor for The Phish Companion. You
can read his rather pointless live journal
at www.livejournal.com/users/thezzyzx.