Sunteți pe pagina 1din 68

ISSN 1746-8752

10

9 771746 875009
Free Software Magazine is a magazine
by The Open Company Partners Inc,
EDITORIAL 90 Main St. Road Town, Tortola BVI

We can all finally install E DITOR IN C HIEF


Tony Mobily (t.mobily@)

verything seems to have long-term problems; my back, for example, has been hurting for quite a S ENIOR E DITOR

E while now and no real diagnosis or prognosis has showed up yet; my car makes a mysterious noise:
a “clunk” which is hard to describe and occurs randomly but consistently (except, of course, when
my mechanic is driving it). Linux has its problems too, especially when it’s being used by less
experienced users. (Yes, I know I am in dangerous waters here!)
People want to use Linux, and being able to install what they need is important. This is even more true for new
Dave Guard (d.guard@)

S ALES AND A DVERTISING


Bridget Kulakauskas (b.kulakauskas@)

users, who often want GNU/Linux to “match” what their old (Windows?) system used to do for them.
L AYOUT AND C OMPOSITION
I’ve seen a lot of new users—and even kids—using Linux comfortably. And everything goes fine—until they
Gianluca Pignalberi (g.pignalberi@)
decide to install new applications.
You see, in Mac people can install an application by simply downloading it, copying it wherever they like, and
double-clicking on it. In Windows, it’s a matter of running an ugly installer, answering a few questions, and G RAPHIC DESIGN
letting it copy a zillion files all over the place. Alan Sprecacenere (a.sprecacenere@)
In Linux. . . it depends.
Even though distributions such as Ubuntu do a terrific job in giving users an amazingly complete “base” system,
and a reasonably intuitive way of installing new software (thanks to the Synaptic Package Manager), users always
C ONTRIBUTORS
get lost when they try installing an “unplanned” piece of software (that is, one that was not pre-packaged and
Martin “MC” Brown, Tom Chance,
pre-compiled by the distribution’s maintainers).
Terry Hancock, Daniel James, John
Unfortunately, no matter how well distributions try to add every single package to the list of “supported” appli-
Locke, Edward Macnaghten, Tony Mo-
cations, such a list can never be 100% complete. The problem is even more relevant if somebody wants to install
bily, Arturo Fernández Montoro, David
a piece of non-free software, which will obviously never be supported by a distribution! Users also need to be
Sugar, Jeremy Turner, Maria Winslow.
“root” to install software, and that’s not always ideal. . .
I feel it’s only fair that I show my cards, and admit right away that I am a fan of “The Apple way of doing things”:
each application has its own directory, which contains everything needed by the program, and is seen by the user
as a fancy icon (chosen by the application’s developer). Uninstalling a program is as simple as dragging it into
the rubbish bin!
It sounds simple, and it is—for the user. Apple has been doing this for many years, and it definitely works.
However, things that makes life easier for the user often add much more complexity to the system. In the case
of Appdirs, there are several issues, and not all of them are purely technical. Appdirs need to be a joint effort:
distributions and desktop environments (see: Gnome and KDE primarily) need to agree what an “Appdir” is, how
it works, and so on; Appdirs go against the Unix philosophy of putting each file in the right place—this is possibly
why there is resistance to Appdirs in the Linux world; with Appdirs, the “automatic upgrade” process becomes
tricky to say the least (however, it’s definitely not impossible); the desktop environment must be able to “register”
each Appdir (probably at its first execution), and must be able to associate a file type with a particular Appdir;
finally, existing applications (and there are a lot of them!) all need to be repackaged.
Some of these problems might never be solved completely; this is possibly why Linux has taken some steps
toward Appdirs. However, no distribution or “desktop environment” has endorsed them fully. These problems
have never had an easy solution.
Until now.
Thanks to Klik (http://klik.atekon.de/), developed by Simon Peter, this situation has finally changed.
Klik deals with most of the issues I mentioned above (if you are curious, check the FAQs (http://klik.
T HIS PROJECT EXISTS THANKS TO
atekon.de/wiki/index.php/User\OT1\textquoterights FAQ)); very importantly, it works well
Donald E. Knuth, Leslie Lamport,
under Ubuntu, which happens to be the fastest growing distribution at the moment. Thanks to Klik, you can
People at TEX Users Group TUG
download your favourite applications, burn them onto a CD, and give them to your favourite and least experienced
(http://www.tug.org)
Linux user—even your grandmother!
Klik is another huge step towards Linux’s desktop domination. Right now, thanks to Klik, there’s one less excuse
for not using Linux. Are there any left now?
Every listed person is con-
Congratulations and thank you, Simon!
tactable by email. Please just add
Copyright information c 2006 Tony Mobily
freesoftwaremagazine.com to the person’s
Verbatim copying and distribution of this entire article is permitted in any medium without royalty provided this notice is preserved.
Tony Mobily is the Editor In Chief of Free Software Magazine username in parentheses.

For copyright information about the contents


of Free Software Magazine, please see the
section “Copyright information” at the end
of each article.
Free Software Magazine Issue 10, January/February 2006
Contents Issue 10, January/February 2006

EDITORIAL MIND SET


We can all finally install 3 Convincing management to approve
free software 39
by Maria Winslow
POWER UP Tips to better advocacy
What’s free about free software? 7
by John Locke
Computing and the American West
A techno-revolutionary trip on the
internet 43
by Tom Chance
USER SPACE
Reflections on the lessons from Dean for America
What is X? 10
by Edward Macnaghten
Discover the versatility and power of the X Window System

64 Studio 48
by Daniel James
Browsers for Mac OS X 22 Building a native 64-bit creative distribution
by Martin “MC” Brown
Comparing FOSS browsers for Mac OS X

Towards a free matter economy (Part


HACKER’S CODE 4) 52
GRUB tips and tricks 28 by Terry Hancock
by Jeremy Turner Tools of the trade
Spicing up a great utility for more IT fun

Jump to Debian GNU/Linux! 33 Free software liberates Venezuela 61


by Arturo Fernández Montoro by David Sugar
A guide to why the Debian distro is a good choice The free software revolution comes to Venezuela

4 Free Software Magazine Issue 10, January/February 2006


What’s free about free
software?

Computing and the American West

John Locke

omputer history has some interesting parallels ers in the US, none have had a monopoly on sales—we all

C with the history of the American West. After


the initial forays of Lewis and Clark and the
first set of explorers, early settlers crossed the
plains in covered wagons. But the West wasn’t accessible
to most Americans until the age of the railroads, when the
like different things in our cars, and make different choices
based on our likes and needs. And we all need to go through
some sort of drivers training before we’re safe on the roads,
yet hundreds of millions of us take this for granted.

Union Pacific Railroad put tracks across the continent and


started running a regular passenger service. Railroaded today

Microsoft is the Union Pacific of the computer world. Win-


Railroad history dows provides the tracks. In the computer world, we’re in
the very early days of the automobile, say in the 1920s—the
To ride the trains, you needed to pay a fare to the railroad railroads are still dominant, and go nearly everywhere you
companies. These companies became huge monopolies, be- might want to go. But you have to go on their schedule, and
cause they controlled the only way for the average person to
cross the country. For a time the railroads were it, and as
long as the tracks went where you wanted to go, the rails Driving the Golden Spike on the transcontinental railroad
were the cheapest and best way to get there. And after all,
the major cities all developed along rail routes, so where
would you want to go that you couldn’t get to by rail?
Of course, with the advent of the automobile, that all
changed, and today, while trains still exist and still go to
a lot of the same places, they are a shadow of their former
dominance of the transportation landscape, used by com-
muters in some cities, and by tourists. Most of us drive,
because we have the freedom to go wherever we want, on
our schedule. It still costs money to get there—we have to
pay for the upkeep of our cars and fill them with gas. We’ve
all paid for our roads through taxes, tolls, and other means.
While there have been three big, dominant auto manufactur-

Free Software Magazine Issue 10, January/February 2006 7


POWER UP

you have to pay a fare to get on board. While there are dirt pable of flawlessly working with their own office format,
roads all over the place, few are paved, the trains will get how can they maintain their monopoly? They would in-
you to your destination faster, and you pretty much have to evitably get a whole slew of competitors—bad for them, but
be a mechanic to keep that Model T running over any large good for the rest of us. Do you really want to be forced into
distance. But the car is clearly the future, and we’re starting paying Microsoft time and time again to keep buying ac-
to build the freeways now. cess to your own documents? The state of Massachussetts
--------------------------------------- decided, at least for them, the answer was no.
In the computer world, we’re in the very You can free yourself from vendor lock-in, too, by go-
early days of the automobile, say in the ing to OpenOffice.org (http://openoffice.org) and
1920s. . . downloading the full office suite, entirely free. Version 2.0
is out, and it has a database to rival Access—the previous
---------------------------------------
versions already provided excellent replacements for the
Free software powers those cars. While there are still a cou- other Office products. OpenOffice.org Writer is better than
ple of cities you can’t drive to yet, you can pretty much Word in several areas:
go anywhere, including places you now can’t get to by
• Bullets and numbering
train. Free software will get you nearly everywhere you can
• Outline numbering
get with Windows. There are great free word processors,
• Page templates
spreadsheet packages, presentation programs, desktop pub-
• Predictable page formatting
lishing programs, astronomy tools, databases, everything
• Master and sub documents, for those book authors out
that you might imaginably need to get where you need to
there
go. But these programs aren’t from Microsoft, or Adobe, or
• Drawings with connectors that stick to objects as you
the other “standard” rail car manufacturers, which don’t run
move them around, like Visio
on your average dirt road.
Once upon a time, only 15 years ago, there were several Naturally, it does have some drawbacks, too: the Outline
different word processing programs considered “standard”. view isn’t as nice, incompatible with any macros you’ve
Anybody remember Word Perfect? It had a much bigger developed (and Word Macro viruses), envelope printing is
market share than Microsoft Word. Yet today, everybody confusing, merging to a catalog list doesn’t seem to exist.
expects Word documents and little else. At that point, hav- Are these features worth the extra $300 per seat in your
ing a different word processor was like having a rail car that business?
fit a different set of rails—you couldn’t just open a Word-
Perfect document in Word and expect it to look the same. Land grants and land grabs

Freedom to drive In the 19th century, the land grant railroad companies were
granted rights to pick and choose a swath of land across the
In the free software world, where programs need to commu- country to lay down their rails. Did they choose the best
nicate with each other, they use established, open standards. route for their rails? Not necessarily. They picked the most
A new document format has emerged, called the Open Doc- fertile land, the most valuable land, and planned their rail
ument format. Unlike Word Documents, you already have a route so that they could get the most dollars for the land
choice of several different programs that will read and write granted to them by the government. A great-great-great-
these documents without issues: OpenOffice.org, StarOf- great grandfather of mine was on a crew that helped move
fice, KWord, AbiWord to name a few. The state of Mas- the rails to a more sensible route, after the land grants were
sachussetts recently mandated that all their office docu- complete.
ments be stored in this format, to prevent being locked into a Today, it’s Microsoft doing the land grabs, trying to bundle
single vendor. Naturally Microsoft is complaining—if they as much functionality into their operating system as pos-
can’t maintain their advantage of being the only vendor ca- sible. First it was the web browser. Lately it’s the media

8 Free Software Magazine Issue 10, January/February 2006


player. There have been dozens of other small companies
unable to compete with the software giant, who have gone
out of business—and as a result, we have fewer choices as
a whole. When Microsoft asks, “Where do you want to go
today?” think customer survey: they’re trying to find out
where they should build their rails so they can extract more
fares from you in the future. Never mind the fact that you
can probably drive there today with free software.
Free software is about giving you the freedom to drive wher-
ever you want. It’s not free of cost—you have to buy your
PC (the car), you have to pay a mechanic periodically, you
need to learn how to drive, and there are taxes, toll roads,
and potholes all over the place. But when given the choice
between a railroad and a car, most of us choose to drive,
simply because we have the freedom to go where we want
and when, not just because it’s cheaper. In many cases, the
railroad is cheaper, especially in these days of escalating
fuel prices. But the more people who choose to drive free
software, the more roads will get paved. And if you need a
mechanic, a map, or a custom vehicle, that’s what Freelock
Computing, or dozens of other new service companies can
provide!

Copyright information

c 2005 John Locke


This article is made available under the Attribution-
Share-alike Creative Commons License 2.0 available
from http://creativecommons.org/licenses/by-sa/2.0/
(http://creativecommons.org/licenses/
by-sa/2.0/).

About the author

John Locke is the founder and manager of Freelock


Computing (http://freelock.com), a consulting
company that helps small businesses use technology to
solve real business problems. John is the author of
the book “Open Source Solutions for Small Business
Problems”, and also maintains his own blog (http:
//opensourcesmall.biz).
What is X?

Discover the versatility and power of the X Window System

Edward Macnaghten

To sell something to the public it needs to look good Any home or client system software provider, free or oth-
erwise, that wants to be taken seriously has to provide a
graphical user interface (GUI) as their prime method of user
interaction. Microsoft include theirs as part of the main sys-
tem, or kernel, as do many other system providers. Most
GNU/Linux distributions include it in the default install.
However, with GNU/Linux and other POSIX operating sys-
tems, the GUI infrastructure is not part of the kernel but a
separate program with the mystical name of “The X Win-
dow System”. It calls itself “X11 Release 6” and everyone
else simply knows it as “X”. There’s a lot more to this X
than meets the eye, it has attributes and powers that are not
well known and can do things that other windowing systems
cannot. What is this X? What amazing super-GUI powers
does it have? This article attempts to tear off its mask and
reveal all.

veryone likes pretty pictures. The newsagent’s What is X?

E stand is now crowded with glossy magazines,


roadside advertisements glare out at you as you
drive along the freeway, you see a wondrous
mosaic as you look at all the packaging on supermarket
shelves. Television long ago replaced the radio as standard
A more appropriate question to “What is X?” is “What
is X not?”. X is not actually a GUI. The GUIs in
GNU/Linux tend to be GNOME, or KDE or even MOTIF.
Most GNU/Linux distributions are now delivered with a
home entertainment and the fact that you cannot judge a GUI configured as the default interface, and this can com-
book by its cover doesn’t prevent the vast majority of the pare with any other computer system’s GUI. And the end
human population from doing so. The same applies to com- user, who processes words in documents, calculates sheets
puters now. The GUI (Graphical User Interface) or “win- in spreads, mails e’s in readers, browses the surf in webs
dows functionality” has become part of the machine that and the such, need not know the technical ins and outs of
everyone now takes for granted. it. However, there is a lot more that can be done with a

10 Free Software Magazine Issue 10, January/February 2006


USER SPACE

The concept of a file server tends to be well understood The concept of an X-server is really no different to that of a file
server

small amount of know-how and a bit of command manipu-


lation. . .
So then what exactly is X if not a GUI? X is an infrastructure user makes to that window. The X-clients are often run on
that a GUI uses to do its stuff. For example, a GUI handles the same machine, but sometimes they aren’t. What an X-
the buttons, text and combo boxes, windows etc., whereas X server is serving is windows and your input.
handles the low level drawing of fonts, lines and pictures on I will go through a detailed example of exactly what I mean.
the screen and accepts keyboard and mouse inputs as well However, before commencing it is worth pointing out what
as the inter-program communication of these. It can also follows is not how X is usually run. I am simply demon-
handle network distribution of users and remote sessions. strating some individual components to show how the in-
One of the most confusing aspects of X is the naming of the frastructure hangs together. First though, to install X. . .
parts, in that the terms “server” and “client” are the oppo- If you have a GNU/Linux system you almost certainly have
site of what many would expect. An X server is the screen X already installed. To run through these below examples it
and keyboard, what a lot of MS Windows people would au- is best to switch the GUI off initially if it is on. To do this
tomatically think of as the ultimate client. An X client is a go to the main virtual console by pressing CTRL-ALT-F1,
program that opens and uses windows, such as a browser, logging in as root then enter the command “init 3”, then log
email client, word-processor and so on. To go into why this out of root and log in as your user.
is so I will compare an X-server to a file server. . . If you have a Windows system you can install the Cyg-
A file server is a machine on a network where files exist and win version of X. Go to www.cygwin.com (http://www.
other machines, or clients, can connect to it to open, read, cygwin.com), click on the “install now” icon, follow the
write or manipulate files. Often, of course, the file server defaults. When the list of packages come up ensure the
and the client is the same machine, but sometimes it isn’t. “X11” is marked as “Default” install. When installed dou-
What a file server is serving is data in files. ble click on the Cygwin icon (or navigate to it through the
An X-server is a machine on a network where a “window- “Start” menus) to get the “$” prompt.
ing” program exists and other machines, or X-clients, can The X server can be started manually at the command line;
connect to it and create windows, write or display text, pic- this can be done if X is not already running by simply en-
tures and so on, into a window and can read any input the tering:

Free Software Magazine Issue 10, January/February 2006 11


USER SPACE

An X-server running by itself—as such quite boring An X-server with an xterm X-client connected to it

X & the X-server and use it. I will go into this later. After that,
enter:
(X in capitals then an ampersand) at the dollar prompt. This
xterm -display :0 &
will start an X-server in the background. On GNU/Linux
this will be in a “virtual screen”, on Windows this will be in
its own MS-Window. A black or gray patterned screen will This opens a terminal shell on the X-server. To see this
appear with a plain graphical “X” in the middle that can look at the “X-server” screen (by pressing CTRL-ALT-F7
be moved around by the mouse. This as it stands is totally on GNU/Linux, or selecting the X-server window on MS-
useless—yup, a complete waste of time. Although you can Windows) and there should be a terminal program running
move that X about by playing with the mouse, pressing keys in the top left hand corner. By moving your mouse over it
and clicking on mouse buttons do nothing and it doesn’t you can enter commands (such as “ls”) and see the result.
even look pretty. This is like a formatted file server but with In the above, the command “X” starts an X-server, which
no files in it, interesting from a geeky point of view, has simply sits their looking not-so-pretty waiting for a client
great potential, but currently not much to see. to connect to it. Xterm is an X-client that connects to the
Note: on MS-Windows and Cygwin, if you would rather server, opens a window and runs a shell.
use the entire screen to gain the “proper” X experience then There are command line options to open windows of dif-
add the “-fullscreen” option to the “X” command. Pressing ferent sizes and at different positions, but all who I have
the MS-Windows key (the one with the logo on it) will get talked to would agree that this is a very user unfriendly
you back to MS-Windows. way to do things. What is needed is a X-client called a
After the X-server has been started go back to the con- window manager. This provides a user-interactive way to
sole where you entered the command (CTRL-ALT-F1 manipulate windows in a manner we have become accus-
on GNU/Linux, or select the Cygwin window on MS- tomed. Cygwin X usually comes with WindowMaker in-
Windows), and enter the new commands: stalled, and can be started by either entering wmaker &
in the xterm window, or by entering wmaker -display
xauth add :0 . ‘mcookie‘ :0 & in the Cygwin console. Some GNU/Linux distribu-
tions may have WindowMaker too, though it’s not normally
Please note the backquotes, punctuation and spaces in the in the default installation; however “mwm” or “fvwm” of-
command. This gives you permission to open windows on ten is, and can be started by entering mwm & (or fvwm &)

12 Free Software Magazine Issue 10, January/February 2006


USER SPACE

An X-server running the WindowMaker window manager and A schematic diagram of some X programs connecting to an X-
some other X-clients—things are beginning to get interesting server

in the xterm window or mwm -display :0 & (or fvwm


-display :0 &) on the console. Should none of these
work then there is the somewhat old and antiquated “twm”
(which is part of the base X package) is almost guaranteed to
be installed. Once a window manager is loaded then moving Cygwin under MS-Windows have the ability to run more
and resizing of windows is interactive, and launching new than one X-server.
applications is easier. Try entering xclock & in the xterm To demonstrate, make sure you are not running any X
window to find out the current time, or even xeyes & for servers on the machine then from the console (CTRL-ALT-
an impression of the boss watching you. F1 in GNU/Linux, or the Cygwin window in MS-Windows)
Although the look and feel presented in the above is not that enter. . . .
impressive it epitomises the philosophy of X—it provides a X :0 &
versatile infrastructure giving you the choice to run what-
ever program best suits your needs. Far better look-and-feel to start the first X-server. Then switch back to the console
suites of course can be, and are, run on X. However, instead when loaded, and enter
of forcing you to use a predefined window manager as in X :1 &
MS-Windows, you have a choice from the many available
in X systems. This will have started the second. Again, switch back to the
The easiest way to quit an X-server is to hit CTRL-ALT- console, then. . .
BACKSPACE.
xauth add :0 . ‘mcookie‘

if not already done, also. . .


What’s in a display?
xauth add :1 . ‘mcookie‘
You would have noticed the “-display :0” arguments of the
commands to open windows on the X-server. A “display” to grant yourself permissions to connect to the servers, Then
is the particular screen to connect to. By default, when X enter the commands. . .
is started it will create a display called “:0”, that is display xterm -display :0 -bg yellow
zero on the local machine. However, both GNU/Linux and xterm -display :1 -bg purple

Free Software Magazine Issue 10, January/February 2006 13


USER SPACE

If you go to the first X-server (CTRL-ALT-F7 on An Xnest session emulating an X-server with two screens
GNU/Linux, select the appropriate window in MS-
Windows) you should see an xterm with a yellow back-
ground, and on the second X-server (CTRL-ALT-F8 on
GNU/Linux) you should see one with a purple background.
You will discover it is possible to run one window manager
on one X-server, and another on the other. It is also possible
to run the X-servers at different resolutions, and logged in
as different users—though doing that is not described here.
This is like having two sets of input/display devices (key-
board, mouse and monitor) connected to the machine.
However, that’s not all—there is a sequel!. The Display “:0”
is in fact short for “:0.0”. The “dot zero” is assumed unless
another number is defined. This is the screen number of
the display. To differentiate, a display in X consists of a
keyboard, a pointy device (like a mouse) and one or more
screens. Think multiple monitors here. The display “:0.0”
xterm -display :0 &
is the first monitor, “:0.1” is the second and so on. This
is rarely used as most PCs and workstations only have one
is the same as. . .
screen connected to it. However, X allows for more—the
multi-screen aspect of X can be demonstrated using the X DISPLAY=:0
program “Xnest”, which is both an X-client and an X-server. export DISPLAY
xterm &
It runs a virtual X-server in an X-window. To demonstrate
this, from an “xterm” window (on a session that has a win-
dow manager running) run. . . When an X session is fired up, or multiple X-clients for that
matter, it automatically places the display it is connected
Xnest :3 -scrns 2 &
to in the DISPLAY variable thus reducing the requirement
for the user to specify it within the X session itself. There
(Note the capital X.) This runs an “Xnest” client emulating
is a small caveat here of course: if you should change the
an X-server with two screens using display number 3. Each
DISPLAY variable in an xterm window it can mess up any
screen is represented as a different X-window. Then from
X commands you enter from there subsequently.
the “xterm” window. . .
Should no “-display” argument be defined and if the DIS-
xauth add :3 . ‘mcookie‘ PLAY variable is not set then the X-clients will use the dis-
play :0.0 by default.
to give yourself permissions. Then. . . .
xterm -display :3.0 -bg red
xterm -display :3.1 -bg blue X in the real world

for two xterms on these (virtual) screens. Should you run No one runs X the way described in the above examples—it
“mwm” or “wmaker” on one of these, and “twm” on another would be far too cumbersome. The usual ways are with the
you can also see some of the versatility of X. To quit these shellscript “startx”, or with xdm, which really needs to be
simply close the Xnest windows. called by the POSIX init process (xdm is not available under
To save you entering the “-display” argument every time MS-Windows/Cygwin).
you enter a command, X-clients will use the display spec- To start X from the console, simply enter “startx”, or “xinit”
ified in the DISPLAY environmental variable should no “- if that does not work. This will start an X server on display
display” argument be provided. Therefore. . . :0 and run an xterm in it (though that is configurable and

14 Free Software Magazine Issue 10, January/February 2006


USER SPACE

A gdm (pretty cousin to xdm) graphical log in screen program, or Distributed X


greeter
At the beginning of the article, I skimmed over the network-
ing attributes of X. I’ll now go through them in more detail.
When an X-client connects to an X-server it does exactly
that. There is nothing virtual about it. It connects using its
own protocol designed for the purpose. When the X-server
is on the same machine as the X-client the means by which it
connects is through something called “Unix Sockets”. This
is one way that a program can communicate with another
on the same machine. However, the X protocol can work
over TCP/IP. In other words, you can run the X-server on
one machine and the connecting X-clients on another.
There are both advantages and disadvantages to running the
X-server on a seperate machine to the X-client. An advan-
tage is that the machine running the word-processor for ex-
ample, is not cluttered up with the bloat of the screen han-
dling process, and will run in a smaller footprint which can
make it faster. Also it is possible to have windows of pro-
can do something different). To run an X-server on a dis-
grams running on several machines opened in front of you.
play other than zero then the command startx -- :1,
A disadvantage is that screen refreshes can be slower as
or even xinit -- :1 will start an X-server on display 1.
some network traffic is required for these.
However, most X-servers are started using xdm, or one of It is difficult to show network features with one ma-
its close cousins such as kdm and gdm, especially in the chine so to demonstrate this you really need two ma-
GNU/Linux world. Most distributions are set up to start chines either with MS-Windows with Cygwin installed
xdm in run level 5, and not in run level 3. That means or Linux or a mixture. If you are using MS-XP
that entering the command “init 5” as root in a console will with SP2 you need to place the path of the XWin.exe
switch the X suite on, and entering “init 3” will switch it (C:\Cygwin\usr\bin\X11R6\XWin.exe by default) into
off. Most GNU/Linux distributions automatically boot up the “exceptions” of the MS-Windows firewall. On the
with X enabled, including RedHat and SuSE, so X is started GNU/Linux machines you need to let through TCP ports
on bootup. Xdm, by the way, stands for “X Display Man- 6000 through 6009 and UDP port 177. You will also need
ager” and kdm and gdm are, for all due intents and purposes, to know the IP address of the two machines.
functionally identical. They just look prettier. For the sake of this demonstration I’ll assume one ma-
Xdm (and kdm and gdm) present the user with an X-client chine to have the IP address of 192.168.0.1, and the other
which is a graphical log in screen called a “greeter”. Once 192.168.0.2.
you have entered your user name and password not only On the first machine (192.168.0.1) start the X-server using
a window manager, but an entire desktop environment is “startx”, then ensure a window manager is running. In the
usually loaded, such as GNOME or KDE, that can compare “xterm” window enter the command:
favourably with the best of the best other systems such as
xhost add 192.168.0.2
Microsoft Windows can offer.
Cygwin X can be started with a “-multiwindow” argument. or whatever the IP address of the other machine is. This will
This is in fact the default when using “startx”. This inte- permit connections from that machine.
grates MS-Windows’ own window manager and uses it for
On the second machine, from a console, enter the command:
all the X programs too. Thus integrating the X programs
into the MS-Windows display environment. xterm -display 192.168.0.1:0 &

Free Software Magazine Issue 10, January/February 2006 15


USER SPACE

A schematic diagram of X programs running on a different machine too open. I have only used it in the above example because it
to the X-server was the easiest way to demonstrate the networking attributes
of X. A far better way is with the “xauth” program, which
can use a number of ways to authenticate clients, the main
one using “cookies”. In this, for an X-client to connect to
the X-server it needs to know a piece of data randomly gen-
erated, or accessed, by the server known as a cookie. It
works somewhat like a session password. If this cookie is
not transmitted by the X-client, the X-server will reject the
connection. I won’t go into the details of it here because
starting X using xdm automatically sorts this out, and is the
recommended way.
Over the network, the X server, by default, listens on port
6000 for display :0, 6001 for display :1 and so on.

Xdm in detail

The xdm program, and its gdm and kdm cousins, are small
daemons that run in the background usually started by the
“init” program at boot up, and run all the time. It does things
such as start appropriate X-server(s) where necessary (it is
Then go back to the first machine which is running the X
not one itself), run the graphical login screen programs, sort
server and you should see a new xterm window. Further
out the xauth cookies when people log in and start the appro-
investigations in that should show that the shell in that xterm
priate programs for each desktop and so on. There is a com-
is running on the second machine.
prehensive configuration file that controls what it does. The
What’s happening here is an X-client on the second machine first thing it usually does is to run the appropriate X-servers
is connecting to the X-server on the first opening a window on the local machine. Usually this is just one, but can be
there. more. It then runs the graphical log in a screen known as
a “greeter” on the X-servers that it has been configured to
X and security do so. These are usually the X-servers that the xdm process
starts. However, it can start it on other X-servers, such as
Wherever you have a network protocol you have security workstations directly connected to the machine, or even not
issues, and X is no exception here. The fact of the matter is start it on any, including its own X-servers.
that the X protocol is not suitable for anything else except a Xdm can be configured to accept special XDMCP requests
private local area network situated behind a firewall. Should through the network. These are special UDP packets that
you wish to use X through the internet then you need to an X-server can transmit (usually on port 177) to request a
tunnel it through a program like “ssh” or similar, which will client machine’s xdm to start a graphical login greeter pro-
be described later. cess for it. This would then permit remote logins. On most
LANs have security issues too. If ignored one person on a distributions XDMCP can be enabled through a GUI from
LAN can open and close windows on another’s willy-nilly the desktop. On Red Hat Fedora Core this is done from the
without permission. That wouldn’t be good. Don’t worry menu:
though, there are various ways you can protect machines Desktop -> System Settings -> Login Screen: (root pass-
and only permit allowed connections to an X-server. The word)
first is using the “xhost” program as described above. How- Here on the XDMCP tab the check box titled “Enable
ever, this isn’t recommended as it tends to leave the X-server XDMCP” should be enabled. All other settings should

16 Free Software Magazine Issue 10, January/February 2006


USER SPACE

be unchanged. A similar configuration exercise would be Gdm’s chooser program: selecting a machine restarts the X-server
needed for other distributions. and displays the appropriate machine’s greeter
Xdm can be configured to accept special XDMCP requests
through the network allowing remote logins.
When an X server needs to “be connected” by another ma-
chine running xdm then the X-server needs to be started
with the “-query” or “-broadcast” option. The “-query” op-
tion tells the X-server to send an XDMCP request to a spe-
cific machine, whereas the “-broadcast” transmits one to all
machines on the network and will use the first machine to
reply.
For example. . .
X -query 192.168.0.2

or
X -broadcast

I use this in real life. When I am working on my windows


machine, and need to do things on my Linux box, I open a
Cygwin session and enter: X through the internet
X -fullscreen -broadcast
As mentioned before, the X protocol is not really suitable
for the internet from a security point of view. Getting xdm
This presents me with my graphical login greeter for my
or the authentication to work correctly from afar would be
GNU/Linux box.
difficult. However, you can tunnel the protocol through ssh.
It is worth noting that for this to work the “ssh” server
Spoilt for choice
sshd needs to be configured to permit X requests. This is
There are occasions when there are more than one machine done by setting the “X11Forwarding” option to “yes” in the
running xdm on the network. For this scenario a setting /etc/ssh/sshd config file.
can be tweaked so that xdm runs a “chooser” instead of the In the following examples it is assumed you are trying to
usual login greeter. In this case a list of machines is pre- access a remote server called “centralbox.com”, say the ma-
sented to the user. Upon the selection of one, the X server chine at your office, from a local user machine perhaps from
is restarted, connecting to the appropriate machine chosen your home.
displaying that login greeter. To demonstrate running an X program using ssh start an
This is useful for maintaining a large number of GNU/Linux X-server using “startx” on the local user machine. Ensure a
or POSIX machines on a network. You only need one X- window manager is running then in the Xterm connect using
server on your desk (which can be MS-Windows and Cyg- ssh to the central machine using the command:
win), and you can run xdm on all the GNU/Linux machines ssh -C -X myuser@centralbox.com
you maintain. As xdm doesn’t need to run its own X-server
these can be headless, in so far as that they need no video where “myuser” is your user code. When this connects
hardware or drivers. In short, you can have full graphical ad- you can enter X-client commands on the ssh server and
ministration functionality on all GNU/Linux machines that the windows will open on the user’s machine. As the Cyg-
you maintain on the network from a single workstation, with win package also includes ssh this can be done from a MS-
a minimum of resources used on the GNU/Linux machines. Windows/Cygwin box as well as a Linux one.
You only need one X-server on your desk to graphically ac- It is worth taking some time out to explain how ssh does this.
cess a large number of machines. When an ssh client connects to the ssh server using the “-

Free Software Magazine Issue 10, January/February 2006 17


USER SPACE

A schematic diagram of X programs running through the network to connect to the central ssh server forwarding X signals
using SSH X forwarding and compressing data. After authentication and connection
enter:

Xnest :20 -query localhost

which will then start a “nested” X-server on display 20 of


the central machine, displaying the output of which on a
window of the local machine. The login greeter then should
appear.
If a different screen resolution is required the “-geometry”
argument can be used to specify one:

Xnest :20 -query localhost -geometry 1280x1000

To follow what is happening here may seem a bit compli-


cated, so watch out for this next bit. First of all, I need to
explain the Xnest program in detail. This is both an X-client
and X-server. The best way to imagine it is as an X-client
X” command, the ssh server on the central machine sets up a that creates a window on the session it was started from.
“virtual” X-server on a higher display number (usually start- And, at the same time, an X-server that instead of display-
ing at 10); it then creates its own authentication cookie for ing and accepting its goods on its own physical screen, key-
it. When an X-client (on the ssh server) opens up a window board and mouse, uses the window it created in the session
it connects to display 10, the pseudo ssh X-server validates from which it started.
the X-client using its cookie and encrypts and transmits the Now for the meat of it. On the ssh server you are running an
request to the ssh client on your user machine. This then X-client Xnest, which is connecting to the X-server on the
authenticates the request on the real X-server using the real ssh client through the network tunnel ssh provides. How-
cookie and passes through the X requests to it for display- ever, Xnest is also an X-server, which is running on the ssh
ing. server providing an environment where you can run your
The “-C” argument is in fact optional. It compresses the desktop remotely, and securely, through the network but as
data to transfer over the network decompressing it at the though you were on the local machine. Confused? Well, I
other end. This can improve performance especially over a did warn you. I hope the following diagram helps, but don’t
slow internet connection. worry if you still don’t get it, this is not essential knowledge.
This means that all transmissions through the network are If two or more people are likely to connect at a time in this
encrypted and compressed. Also, the ssh server is unaware way, then each needs to use a different display number. A
of the real X-server’s cookie, maintaining the X-server’s se- way to do this is to simply add a number to the display num-
curity integrity but at the same time allowing the remote ber the ssh server gives you:
user’s machine to use the GUI in an easy and transparent
NDISPLAY=‘echo $DISPLAY | cut -d: -f2 | \
way. cut -d. -f1‘ # Get the main display no.
NDISPLAY=‘expr $NDISPLAY + 30‘# Add 30 to it
Should you wish to run your desktop through ssh rather Xnest :$NDISPLAY -query localhost
than an individual program then you simply run “Xnest”
through the tunnel. Beforehand you would have had to en- If you use this I recommend placing it in a shellscript. The
able XDMCP, then from an xterm on the user’s local ma- above should work if no more than thirty people are con-
chine run: nected to the machine at any one time.
You can also run X through a VPN such as IPsec or PPTP
ssh -C -X myuser@centralbox.com and connect using XDMCP as described above.

18 Free Software Magazine Issue 10, January/February 2006


USER SPACE

A schematic diagram of an X desktop running through the network GNU/Linux distributions. If it isn’t installed, it can
using SSH X forwarding and Xnest normally be done easily through the distribution’s package
manager. The VNC client, on GNU/Linux, is called
“vncviewer”. There’s also a native MS-Windows version of
this, so it’s possible to log into GNU/Linux desktops from
remote Windows machine without installing the consider-
ably large Cygwin and X-Windows packages. Should you
need a VNC client for MS-Windows one can be downloaded
from www.realvnc.com (http://www.realvnc.com).
And if the machine you are connecting from doesn’t have
a VNC client installed all is not lost, as there’s a Java one
that comes with the server.
There are several ways the VNC server can be set up on
a GNU/Linux box; I’ll deal with two of them here. Both
require the VNC server to be fired up manually.
The first is using a wrapper called “vncserver”. To pre-
pare for this you need to set up a VNC password. This is
Dynamic duo: X and VNC achieved by logging into the GNU/Linux server and enter-
ing the command “vncpasswd” at the $ prompt. You will
Using the X protocol, even through ssh, can have a perfor- then be prompted to enter a password, which needs not be
mance hit. The X protocol will transmit every line, area the same as your log in password (in fact it’s better if it’s
and character whether required or not. There’s no cache- not) but needs to be secure, i.e a mixture of upper and lower
comparisons or transmit-changes-only functionality. This case letters, numbers and symbols.
means that if an area of the screen is redrawn three times The way to connect remotely this way is to log in using ssh,
between user inputs the X protocol will transmit that area but without the “-X” option:
three times whereas it only really needs to transmit the last
of the three. This can make running X over a slow network ssh myuser@centralbox.com

like a dial-up painful. VNC’s RFB protocol helps to take


care of this problem, and X interfaces have been written for then when connected, enter the command on the central ma-
it. chine. . .
VNC is a cross-platform facility to access desktops re- vncserver :1
motely using a more conventional client/server mechanism.
The VNC server is located on the machine where you would This will start an Xvnc process up and fire off a few X-
have the GUI and listens for connections from a VNC client. clients running inside it (such as window manager and so
When a client connects, VNC transfers the entire desktop to on). It will accept X-clients on display “:1” and VNC client
the client where a user can work on it. connections on TCP port “5901”. Should “:2” be used in-
The program used for using VNC in a remote X-session en- stead it will accept X-clients on display “:2” and connec-
vironment is “Xvnc”. This is both an X-server and a VNC tions on port number “5902” and so on. If you leave the
server. Xvnc, when started, listens on a VNC TCP port display number from the command, then an unused one is
number (5900 + display number) for any VNC clients to assigned and reported as the output of the command. You
connect to it. It also listens on the display socket and TCP can control the size of the screen by using the “-geometry”
port like any other X-server, but instead of displaying the argument. This works the same way as described in the
requests on a monitor or screen it caches it in memory to “Xnest” program.
transmit it to a VNC client that is connected to it. After the server has fired up, from the user’s machine start
VNC’s X-server—Xvnc—is included with most up the VNC client. When asked for the VNC server enter

Free Software Magazine Issue 10, January/February 2006 19


USER SPACE

A schematic diagram of an X desktop running through the network alternative display numbers. Connecting to this using VNC
using VNC (or the Java) clients are no different with the exception that
no password is asked for.

Dynamic trio: X, VNC and SSH

Although the above works, there are security issues. Ports


590x and 580x need to be opened up if there is a fire-
wall. Everything with the exception of the VNC password
is transmitted over the internet unencrypted. A far better
method is to tunnel the connections through our old friend
ssh.
To connect using this method, from the user local ma-
chine. . .

ssh -C -L5901:localhost:5901 \
-L5801:localhost:5801 \
myuser@centralbox.com

“centralbox.com:1”. You should then be prompted for the


Please note the “-X” argument is not used here. Then, when
VNC password; upon successful entry you will be presented
connected, on the central machine enter:
with a desktop. If you don’t have a VNC client installed
then you can use the Java one. To do this point a browser to vncserver :1 -localhost
“http://centralbox.com:5801” (5802 if display :2 was used
and so on) and a java client will be fired up. or
The precise X-client programs started here will depend on
Xvnc :1 -query localhost \
the shellscript “.vnc/xstartup” on the central server in the -securitytypes none -once -localhost
specific user’s home directory. This can be tuned accord-
ingly. depending on how you want the X server to be. Back at the
When finished, in the original ssh screen enter. . . local machine the VNC server to connect to is “localhost:1”
and the URL to point the browser at for the Java client is
vncserver -kill :1
“http://localhost:5801”.
which will stop the server. After finishing, don’t forget to enter the command
The second method is to use the XDMCP features with vncserver -kill :1 if the “vncserver” command
VNC. For this to work XDMCP needs to have been enabled was used.
on the central server as described above. To connect access The above works for display :2 if 5802 and 5902 ports are
the central server from the user’s local machine with ssh in used instead as before.
the same way as above. . . VNC through ssh provides a secure, efficient, fast and ver-
ssh myuser@centralbox.com
satile means of accessing the desktop remotely
I will now go through go through the mechanics of this, but
Then, when connected, enter the command. . . again be warned, it’s complicated too!
Xvnc :1 -query localhost -securitytypes none -once
The ssh command creates two tunnels, one for TCP port
5901 and the other for 5801. The VNC clients (and possi-
This will start Xvnc the same way as above except it bly browser clients) then connect through these, encrypting
will simply display the greeter in the X session. The “- the data, to form the connection. The attributes of the tun-
geometry” argument works the same way here too, as does nel mean that the user clients need only connect to ports

20 Free Software Magazine Issue 10, January/February 2006


USER SPACE

A schematic diagram of an X desktop running through the network use of Cygwin. On top of that, this article demonstrates how
using VNC and SSH a MS-Windows machine, as well as GNU/Linux ones, can
be used as a terminal for a central GNU/Linux system both
on a LAN and through the internet.
One project that makes good use of the versatility of X is
the Linux Terminal Server project (http://www.ltsp.
org). This uses X features to create scenarios where many
users are connected to a central GNU/Linux machine using
thin clients producing massive running and installation cost
savings.
This article has only scratched the surface of the X infras-
tructure. Hopefully though, it has demonstrated X’s con-
cepts, proven its versatility and given a taste of its power.
While the Microsoft Windows GUI is functional and intu-
itive, I’m finding it now no more so than GNOME or KDE
on X running on GNU/Linux. And when I need to do some
remote accessing or use other machines as terminals, I find
the Microsoft Windows infrastructure to be encumbered,
listening on the user’s local machine that are created by the
restrictive and clunky compared to the slickness of X. In
ssh client for this purpose. The data is then encrypted and
short, if given a choice between Microsoft’s own window-
transferred to the central server where they are unencrypted
ing environment and that of the free software community,
and regenerated by the ssh server process. A connection is
GNU/Linux and POSIX, then you can give me an “X” ev-
established from that to the VNC server which is now local
ery time.
to it.
What? That, complicated? Naahh. . .
Copyright information
This has the best of a number of worlds. The data transfer
is encrypted and compressed by ssh and the GUI windows
Copyright Edward Macnaghten (C) 2005
are properly cached by VNC, creating a reasonably fast and
Permission is granted to copy, distribute and/or modify this
very secure open platform remote desktop facility. How-
document under the terms of the GNU Free Documentation
ever, should more than one user need to connect this way
License, Version 1.2 or any later version published by the
to the central server simultaneously, then each user should
Free Software Foundation; with no Invariant Sections, no
be given a unique display number which they would always
Front-Cover Texts, and no Back-Cover Texts. A copy of the
use.
license is available at http://www.gnu.org/copyleft/fdl.html
For completeness I need to point out that there are other
methods which can be used to fire up Xvnc, including start- About the author
ing it as a service. These are documented as part of the VNC
Edward Macnaghten has been a professional pro-
distribution and I won’t go into it here.
grammer, analyst and consultant for in excess of 20
years. His experiences include manufacturing com-
Conclusion mercially based software for a number of industries
in a variety of different technical environments in Eu-
A popular misconception exists that X is only available for rope, Asia and the USA. He is currently running an
GNU/Linux and some UNIXes. The fact is that X was de- IT consultancy specialising in free software solutions
signed to be platform independent and is available for many based in Cambridge UK. He maintains a web site at
other systems as well. This article mentions many times the http://eddy.edlsystems.com.
free X suite that runs under Microsoft’s Windows with the

Free Software Magazine Issue 10, January/February 2006 21


Browsers for Mac OS X

Comparing FOSS browsers for Mac OS X

Martin “MC” Brown

hen Apple migrated the Mac operating For the review, I’m going to be taking a closer look at

W system platform to Mac OS X, one of


the key components was an underpinning
based on the FreeBSD operating system.
The use of an open source operating system as the core has
in turn led to an increase in the use and availability of free
the features and functionality of the three free software
browsers—Mozilla, Firefox and Camino, and what differ-
entiates the functionality of these three browsers from each
other. I’ll primarily be comparing speed and functionality,
but I’ll also use the opportunity to cover some of the issues
and open source software (FOSS). It is now much easier to that affect the browsers on individual sites. I’ll then take a
develop software for the OS X platform (development soft- very brief look at the quasi-free software browsers; Safari
ware is included, instead of being an expensive addition) and OmniWeb.
and this makes it both easier for people to get involved and ---------------------------------------
more likely to take part in open source community projects. Web browsing in the free software space
Despite the ease, there are still some areas of software de- is now based around two main camps,
velopment where the complexities of the application are too those based on the Mozilla codebase
great. Web browsers are a classic example of this—although (Camino, Firefox, Mozilla) and those
the principles of web browsing are quite simple, making all based on the KDE sourced KHTML
of the components of a typical web page (JavaScript, dif- rendering engine (Safari and OmniWeb)
ferent image formats, plug-ins, CSS etc.) work effectively ---------------------------------------
is quite difficult. Hence the need for community-based
projects where many people can pool their experience.
Mozilla Suite
As a knock on effect, web browsing in the free software
space is now based around two main camps, those based The Mozilla project was borne out of the Netscape Naviga-
on the Mozilla codebase (Camino, Firefox, Mozilla) and tor project; Mozilla being a combination of the term Mo-
those based on the KDE sourced KHTML rendering engine saic killer (which is what they hoped Netscape would be)
(Safari and OmniWeb). Projects based on the former are and a reference to Godzilla. Mozilla was also the name of
completely free software, with both the rendering engine the Netscape mascot—appropriately enough usually repre-
and interface being a free software project. The latter are sented by a humanoid-lizard, like Godzilla. The Mozilla Or-
not strictly free software, but the core rendering engine on ganization was created in 1998 to create the next generation
which they rely is. It is only the interface which is not free of Netscape and was registered as a not-for-profit organiza-
software. tion (the Mozilla Foundation) in 2003. Today, Mozilla is the

22 Free Software Magazine Issue 10, January/February 2006


USER SPACE

MCslp.com in Mozilla is a little more aesthetically pleasing. This retains the “tool-
bar” style of the original—including “handles” for moving
the different toolbars around and changing their order and
layout. You can also click on these tabs to “collapse” the
tool bar so that it takes up less space. What you don’t get
in the standard format is a convenient search bar for Google
or other sources; instead you get a button that takes you to a
predetermined Search button and the location field doubles
up as the source for search criteria. What you cannot do is
customize the toolbar you can enable and disable buttons,
but not actually modify or add to the suite of buttons.
Like Firefox, Mozilla supports both themes—which change
the appearance of buttons and other aspects of the inter-
face—and extensions, which provide additional function-
ality. For example there are extensions that provide Ad
filtering, download management or additional information
during browsing. For example, the LiveHTTPHeaders ex-
name used to refer to the range of browsers produced by the tensions can display the header information sent during an
Mozilla group, notably the main Mozilla Suite and the forks HTTP transaction—invaluable during development. Unlike
of Firefox and Camino. Firefox there is no convenient extensions manager, and in
The Mozilla Suite is the name given to the software pack- fact Mozilla almost hides the existence of extension support
age that incorporates the functionality of a browser, email, from the application.
newsgroup reader and HTML editor. The core of the In terms of simple internet browsing Mozilla is more than
Mozilla suite is the Gecko rendering engine which is also capable. It does sometimes feel slower than the alternatives
shared by Firefox and Camino. The Gecko engine is based and there is often a discernable pause just before the page
on the HTML/XHTML, DHTML and other standards that is displayed that can become a little frustrating. For simple
make up the web environment and is specifically designed text sites it isn’t a problem, but those with heavy graphics,
to render these in a consistent fashion across platforms. This or complex tabular pages do demonstrate the problem.
means that you browse a page on Mac OS X and Windows In terms of the quality of the display and parsing, I experi-
within a Mozilla browser and get a consistent view. It also ence very few problems with Mozilla when laying out dif-
means that, in theory, different browsers that use the engine ferent pages and sites. The only times you experience any
will have a consistent view. This isn’t quite the case for rea- specific difficulty is either when the site is not standards
sons that will become clearer as I look at the other browsers compliant, in which case some interesting “default” choices
from the Mozilla stable. are made about how to layout components, or where the site
For example, let’s look at the homepage for MCslp.com has deliberately used Internet Explorer capabilities to pro-
(http://www.mcslp.com), my website, which is vide functionality. For example, some menus and items that
based on the WordPress blogging engine with a theme rely on JavaScript or ActiveX simply don’t work. I’ve also
which is XHTML compliant. You can see how this looks experienced some occasional issues when logging into sites
in Figure 1. through a simple password system. For example, my blog
As the larger “internet suite”, the Mozilla browser is more at Computerworld never loads properly after login. Again, I
geared toward users who want a consistent interface and en- suspect this is more of an issue of the site code, rather than
vironment for all of the browsing and internet needs. The Mozilla, but it can be a frustrating experience.
interface, as shown in the figure, is based around the orig- Being a suite of internet applications, rather than just a
inal Netscape browser. Shown is the Classic theme but a bare browser, Mozilla has the benefit of including most
standard installation also includes the Modern theme which of the tools you will need. I also love the way that you

Free Software Magazine Issue 10, January/February 2006 23


USER SPACE

can read/reply to email directly from within Mozilla. This Mozilla Suite
comes in particularly handy if you are frequently using sites
that use email links; there is none of the delay sometimes
Name Mozilla Suite
experience while the OS works out what to do with the link.
The embedded IRC client is also very handy. However, Maintainer(s) Mozilla
once you start using all of the components at the same time, License Mozilla Public License
you can sometimes experience some performance problems. (OSI Approved)
Also, as a single monolithic application the memory usage Platforms Linux, Unix, Mac OS X,
can be prohibitive. Although memory management in OS Windows
X is efficient enough that you don’t often experience prob- MARKS (out of 10)
lems, the memory issue is almost certainly related to some Installation 10
of the performance issues I experienced, especially while Vitality 10
monitoring the load and memory usage of Mozilla while Stability 9
browsing various pages with all of the options enabled. Usability 9
I liked Mozilla, but I have to admit to preferring other ap- Features 10
plications for my Email and chat requirements, and this is
where Mozilla, as the “do all” application, starts to look like
overkill if all you want to do is use the browser. A good ex- a cross platform solution has obviously gained some pop-
ample here of the limitations of the built in system is the ularity as a more secure alternative to Internet Explorer on
address book. Within Mozilla you have your own special Windows. Since Microsoft have dropped support for Inter-
address book section, but this doesn’t integrate with the OS net Explorer support under OS X, it is often the main choice
X address book and that means you can’t share instant mes- if the user is unhappy with Safari.
saging details with iChat and there is no provision for SMS Fortunately, Firefox has a lot of additional benefits that
messaging, an option built into the standard OS X Address make it a popular alternative. The support for extensions
Book application. enables the use of ad blocking and enhanced security func-
Where Mozilla is most likely to be used is within an organi- tionality that Safari does not support. Many also find Fire-
zation where they want to standardize on a single platform fox faster than Safari, although I have to admit to finding so
for browsing and email access, and are probably supporting little difference between the two that this wouldn’t be my
an LDAP server for address book functionality. In fact, I reason for choosing Firefox. The ad blocking extensions
deployed Netscape Communicator, which provides similar though are invaluable, and a combination of AdBlock and
functionality, in this way several years ago. the filter updater (which automatically reloads new filter sets
for you) can eliminate nearly all ads to the point where only
Firefox interstitials remain. As with Mozilla, the rendering of Fire-
fox pages is generally excellent, all because of the Gecko
If you removed the web browsing component from Mozilla engine. The same, occasional, site-specific problems occur.
and turned it into a separate application, you would es- Unlike Mozilla, Firefox is more flexible in its interface.
sentially get the Firefox application. It is a bare-knuckle, Toolbars are customizable, and, as can be seen in Figure 2,
browser only, application that combines the Gecko display you get a convenient search field that can be used to search
engine on top of the Mozilla application base to produce a variety of locations simply by selecting an alternate en-
a light-weight internet browser. Because it’s built on the gine from the embedded popup. Tabs are also slightly bet-
Mozilla core you can add extensions (just as with Mozilla, ter supported with switching between tabs noticeably faster
although with a convenient extensions manager) and adjust (for me at least), and with convenient hot keys (Command-
the theme and display of the browser. 1, Command-2, etc.) for flipping between multiple tabs in a
Because Firefox is just a browser it is a direct competitor window.
to the standard Safari browser supplied with OS X and as Firefox is undoubtedly a very fast browser and is very quick

24 Free Software Magazine Issue 10, January/February 2006


USER SPACE

MCslp.com in Firefox Firefox

Name Firefox
Maintainer(s) Mozilla
License Mozilla Public License
(OSI Approved)
Platforms Linux, Unix, Mac OS X,
Windows
MARKS (out of 10)
Installation 10
Vitality 10
Stability 9
Usability 10
Features 10

and easy to use. With the extensions, particularly ad block- ample, the preference panel looks and works almost identi-
ing, Firefox becomes an even faster alternative to the full cally to the main OS X System Preferences application.
Mozilla Suite product. You may not get the embedded The other main aim of the Camino project is to produce
mail/news reader, address book and IRC, but you get the a very fast browser. Based on the same Gecko engine the
flexibility to use other clients that may contain richer fea- Camino project includes some improvements and uses the
tures (I find Apple’s Mail best for Email), and the reduced functionality of the OS X display engine to help improve
memory footprint is certainly an improvement if you have the overall speed of displaying web pages. The result is
512MB of RAM or less. If free software mail/news tools quick—pages display very quickly, even the complex ones.
are important then Thunderbird, also from Mozilla, is their There are some problems, well documented on the site, that
standalone email application. can cause some interesting effects, but as a product still con-
sidered young and in pre-release form (the latest at time of
writing was 0.8.4), Camino is still impressive.
Camino Although Camino includes a lot of integration with OS
X—for example the bookmarks integrate with Rendezvous
The Camino project is based on the same rendering engine and the standard Address Book to include sites described in
as both Mozilla and Firefox, but unlike these two packages, these repositories—Camino is not a typical Mozilla project.
the Camino interface is designed to be more Mac OS X like, The extensions and themes supported by both Mozilla and
rather than the architecture neutral interface offered by its Firefox are not supported. Although the themes limitation
brethren. The effect provides all of the power and speed of makes sense (since Camino is essentially permanently in the
the Firefox browser—Camino is just a browser—but with “OS X” theme) the lack of extension support means that
the OS X look and feel. we cannot block ads. Ironically, this often has the effect of
The architecture neutral format of both Mozilla and Fire- severely slowing down the browsing experience. Most of
fox is obviously a benefit in a cross platform environment, the extensions are not supported because they rely on the
but some prefer the look and feel of OS X. Most of the ba- XUL interface for configuration, which is not included in
sic look and feel remains the same; key differences when the Camino project.
browsing are the use of the OS X style popups, fields and Although Camino is very quick and is the most OS X-
buttons in the display, as you can see here in Figure 3. The friendly of the Mozilla applications, the occasional display
most significant differences are in the dialog boxes. For ex- problems can be a pain. Also, the lack of extension support,

Free Software Magazine Issue 10, January/February 2006 25


USER SPACE

MCslp.com in Camino Camino

Name Camino
Maintainer(s) Mozilla
License Mozilla Public License
(OSI Approved)
Platforms Linux, Unix, Mac OS X,
Windows
MARKS (out of 10)
Installation 10
Vitality 10
Stability 9
Usability 10
Features 8

which eliminates the ability to filter adverts, is a feature that


Mozilla project. There are some circumstances, just as with
Camino could certainly take advantage of. If you browse
Mozilla, where you get odd rendering issues but they are
an intranet or other controlled sites where adverts are not a
few and far between and again very site specific. The use of
problem then Camino is probably the best of the bunch, but
free software is perhaps not that surprising—Mac OS X is
if you need ad blocking you will need to consider Firefox.
itself built on top of the free software Darwin project which
is in turn based on the FreeBSD operating system.
Safari and OmniWeb Unfortunately, although KHTML is a free software project,
Safari is not and therefore cannot strictly be included in this
When Apple launched Safari the OS X community was roundup review. In terms of functionality, Safari is probably
rightly amazed. It included a number of features that in to- closest to the Camino project, it supports browsing tabs and
days browsers we take for granted. Easy access to Google, integrates well with the rest of OS X, but it does not do ad
for example, was functionality we didn’t have in Internet blocking as standard. There are however some products that
Explorer, and Firefox was not available at the time. Snap- support this (PithHelmet for example).
back functionality (which takes you back to a Google, or Also based on the KHTML engine is the OmniWeb browser
indeed any other, page after clicking through other choices) from OmniGroup Software. OmniWeb is a commercial
makes it easy to browse sites without losing your root. product and is one of the richest of the browsers available
Finally the integration with the operating system is abso- for the platform. It supports a number of features designed
lute—in the latest versions, you can even synchronize your to make it easier for people who do a lot of browsing to
bookmarks between Macs using the Apple .Mac service. organize their environment. For example, as well as sup-
Most interesting of all, Safari uses the KHTML rendering porting text tabs, OmniWeb also supports icon tabs, which
engine. KHTML is part of the Konqueror browser and the show a live thumbnail of the tabbed page. You can also cre-
KDE Project, a desktop environment commonly used un- ate multiple workspaces—these are groups of windows (in-
der Linux. The KHTML engine is incorporated into what cluding all the tabs in each window) and the information in a
Apple call the WebKit core, which provides HTML render- workspace is retained, even across application restarts. This
ing for a variety of systems within OS X, including Safari, means that you can create individual workspaces for differ-
Sherlock and the built-in help system. The KHTML engine ent projects or tasks; I have separate workspaces for shop-
is a mature product and the rendering of HTML pages is ping, business work, recreation and a “transient” workspace
based on the same open standards for HTML that drive the that I use to browse the pages that I’ll probably only ever

26 Free Software Magazine Issue 10, January/February 2006


USER SPACE

MCslp.com in Safari MCslp sites in OmniWeb

view once. Firefox is fast, configurable and supports all of the exten-
OmniWeb also includes a built-in ad filter and as an added sions and themes you would want to use. It lacks integration
security measure you can configure security settings on a with the operating system, storing authentication informa-
site by site basis. For example, you can enable JavaScript tion in its own database instead of the keychain for exam-
on your financial websites, while having a default setting ple, and there is no syncing of bookmarks through .Mac or
where JavaScript is disabled. All of this additional security iSync. However, it remains the strongest choice in the free
and functionality is built right into the browser, making it software market.
more convenient than Firefox or Mozilla which support this
functionality only through additional extensions. As a com- Copyright information
mercial product though, these features do, quite literally,
come with a price. Still, OmniWeb remains my favourite c 2005 Martin C Brown
browser. This article is made available under the “Attribution-
NonCommercial-NoDerivs” Creative Commons License
2.0 available from http://creativecommons.org/licenses/by-
Conclusion
nc-nd/2.0/.
If what you want is a plain and simple web browser that
is free software based then really your choice is limited to
Firefox or Camino. Mozilla, while a very capable browser,
is technically a complete internet suite and you will only
get the best out of Mozilla if you are also happy to use the About the author
included email, news and IRC clients.
Martin “MC” Brown is a freelance writer and consul-
Camino offers the best all round environment, from an OS tant. He works with Microsoft as an SME, is a fea-
X perspective, simply because it offers the best integration tured blogger for ComputerWorld, a founding mem-
with the system and retains the look and feel of the operating ber of AnswerSquad.com, Technical Director of Food-
system. However, Camino does not support the entire range ware.net and, and has written books on topics as di-
of Mozilla extensions and this means that if you want to verse as Microsoft Certification, iMacs, and free soft-
avoid adverts or improve the security of your browser you ware programming.
may want to consider the Firefox project instead.

Free Software Magazine Issue 10, January/February 2006 27


GRUB tips and tricks

Spicing up a great utility for more IT fun

Jeremy Turner

he GRand Unified Boot loader, or GRUB, has

T
Figure 1: you can run GRUB on a USB flash memory key!
all but replaced the default boot loader on many
GNU/Linux distributions. It includes some
conveniences over LILO, the LInux LOader.
One advantage is not having to remember to run /sbin/lilo
every time you make a configuration change. It also can
function as a boot loader for removable media such as flop-
pies, CD-R/W and USB flash memory keys. It is short-
sighted to view GRUB only as a boot loader to be installed
on a hard drive of a GNU/Linux system. Combined with
a few other utilities, GRUB can be a powerful and good-
looking tool for your home, organization or workplace.

Introduction

First, what exactly is GRUB? GRUB is a boot loader, which


means it passes control of the boot process from the Power- many different types of boot devices, but you only need to
On Self Test (POST) to the kernel of your GNU/Linux dis- learn one set of menu commands. In addition, GRUB can
tribution. GRUB works in a modular, layered fashion so that work on other forms of bootable storage, such as CD-R/W,
any unneeded modules are not loaded. Not only does this USB flash memory keys, floppy disks, and even via a TFTP
reduce execution time, but it saves valuable resources when server with PXE ROM booting.
running from removable media. GRUB optionally loads its
configuration file at run/boot time, so you don’t have to type
in commands manually each time. However, the command- Installing GRUB on a USB flash memory key
line option is still available in case there is an error in your
configuration file. So why use GRUB when there are other I got the inspiration for this article after trying DSLinux (or
options out there? The beauty of free software is that you DSL), which is a fully graphical Linux distribution weigh-
have choices. Alternatives to GRUB include LILO, syslinux ing in around 50 MB. After seeing an advertisement on their
and isolinux. The benefit of GRUB is that it will work in website for a USB flash memory drive with DSL installed,

28 Free Software Magazine Issue 10, January/February 2006


HACKER’S CODE

I figured I could probably learn how to set DSL up myself Figure 2: this is the file structure on my USB Memory Key
on my Lexar 256 MB JumpDrive. The DSL documenta-
tion pointed towards installing via syslinux and reconfigur-
ing the cylinder/head/sector information of my JumpDrive,
but I didn’t have any luck trying to get my USB flash mem-
ory key to boot successfully. Finally, I tried using GRUB
and I was up and running with DSL in no time!
---------------------------------------
GRUB is a boot loader, which means it
passes control of the boot process from
the Power-On Self Test (POST) to the
kernel of your GNU/Linux distribution
---------------------------------------

First, I recommend creating a directory structure to orga-


nize your boot-related files, and keep them separate from
any other files you’d like to keep on the USB flash mem-
ory key. You could create two partitions, but I couldn’t get
both partitions to load correctly when I inserted the key back
into Windows. On my USB flash memory key, I created a
root folder named boot to hold all the data necessary for
USB booting (see figure 2). Under the boot folder, I cre-
ated a directory named grub for GRUB-related files, images
which are initial ramdisk (initrd), floppy, or disk images,
and finally kernels to hold all the kernels. You may want
to organize your boot folder differently, but make sure that
you change the corresponding paths and directory names in
GRUB’s menu.lst file. The menu.lst file that I use can be
found in Sidebar 1.
Next, you’ll need to copy some of GRUB’s stage files,
including stage1, stage2, and fat stage1 5, and put them
into the boot/grub directory on the USB flash memory key. grub> find (hd2,0)/boot/im<TAB>
These will allow GRUB to boot into GNU/Linux and other grub> find (hd2,0)/boot/images/
operating systems. After the files are copied over, it’s time
to install GRUB to the Master Boot Record (MBR) of the Since the /boot directory on /dev/hda doesn’t have an im-
USB flash memory key. ages directory, I know that (hd2) is the hard drive that I want
Luckily, it’s the same process as installing to a hard drive: to install GRUB on:

# grub grub> root (hd2,0)


grub> find /boot/grub/stage1 Filesystem is type fat, partition type 0xb
(hd0,1) grub> setup (hd2)
(hd2,0) Checking if "/boot/grub/stage1" exists... yes
Checking if "/boot/grub/stage2" exists... yes
Checking if "/boot/grub/fat_stage1_5" exists... yes
On my system, hd0 is /dev/hda and hd2 happens to be Running "embed /boot/grub/fat_stage1_5 (hd2)"...
15 sectors are embedded.
/dev/sda. Just to make sure, we can use a bash-like tab com- succeeded
pletion to look through a filesystem: Running "install /boot/grub/stage1 (hd2)

Free Software Magazine Issue 10, January/February 2006 29


HACKER’S CODE

(hd2)1+15 p (hd2,0)/boot/grub/stage2
Figure 3: DSLinux is a 50 MB fully-graphical live GNU/Linux dis-
/boot/grub/menu.lst"... succeeded
tribution
Done.
grub> quit

Great! Now we have GRUB in the USB flash memory key’s


MBR. Now, we have to put some files on the memory key
to boot into and create a menu.lst file!
---------------------------------------
When you boot from the USB flash
memory key, the key itself becomes hd0,
even before the primary master hard
drive
---------------------------------------

GRUB with disk images

One cool trick is to use GRUB and memdisk to boot


floppy disk images. Using the memdisk kernel from the them in a non-emulated environment. How might this
syslinux package (http://syslinux.zytor.com/ be useful? Let’s say you have an organization with sev-
memdisk.php), you can load disk images and execute eral different models of desktops and laptops. You could
create a CD-R/W or a bootable USB flash memory key
with all of the different BIOS upgrades or hardware tests.
Sidebar 1: Contents of menu.lst Rather than carry around a book of floppies, you can sim-
ply copy the floppy image and boot from the CD-R/W or
default=0
USB flash memory key. Using this method, you can also
timeout=10
add Memtest86+’s floppy image to your bootable CD-R/W
root=(hd0,0)
or USB flash memory key and have it at your disposal. Here
splashimage=/boot/grub/debsplash.xpm.gz
is an example of a menu.lst snippit using memdisk to boot
title DSL 1.2 (2.4.26) 1024x768 (save to RAM)
into Memtest86+:
kernel /boot/kernels/dsl-linux24 ramdisk size=100000
init=/etc/init lang=us apm=power-off vga=791 toram title MemTest86+ Ver 1.60
kernel /boot/kernels/memdisk
nomce noapic quiet knoppix dir=images knop- initrd /boot/images/memtestp.bin
pix name=dsl
initrd=/boot/images/dsl-minirt24.gz There is nothing special about the filenames. The only im-
title Debian Sarge Installer portant thing is that the path and name referenced matches
kernel /boot/kernels/di-vmlinuz initrd=/boot/images/di- with the actual files. Check out Sidebar 1 for more examples
initrd.gz ramdisk size=10240 root=/dev/rd/0 de- of disk images.
vfs=mount,dall rw
initrd /boot/images/di-initrd.gz GRUB with DSLinux
title HP nx5000 F0.d BIOS Upgrade
kernel /boot/kernels/memdisk So how can you boot a full GNU/Linux desktop off a USB
initrd /boot/images/hpnx5000f0d.img flash memory key with GRUB? First, download the DSL
title Memtest86+ (1.60) ISO9660 image, and either burn it to a CD, or mount it via
kernel /boot/kernels/memdisk loopback:
initrd /boot/images/memtestp.bin # mkdir dsl-test
# mount -t iso9660 -o loop dsl-image.iso dsl-test

30 Free Software Magazine Issue 10, January/February 2006


HACKER’S CODE

Next, copy the KNOPPIX file, kernel, and initial ramdisk: graphical format. The second step compresses the XPM file
using the gzip compression method. GRUB can display the
# cp dsl-test/KNOPPIX/KNOPPIX \
/media/usb/boot/images/dsl
gzipped-xpm splash images well.
# cp dsl-test/boot/isolinux/linux24 \ If you don’t want to create your own splash image, check
/media/usb/boot/kernels/dsl-linux24
# cp dsl-test/boot/isolinux/minirt24.gz \
out some of the following web sites which have them avail-
/media/usb/boot/images/dsl-minirt24.gz able for download:
# sync
# umount dsl-test && rmdir dsl-test
• GNU GRUB Public Splashimage Archive
(http://ruslug.rutgers.edu/ mcgrof/ ∼
This assumes that your USB flash memory key is mounted
grub-images/images)
at /media/usb. Next, edit the /media/usb/boot/grub/menu.lst
• GRUB Splash (http://vision.featia.net/
file and make sure it looks like the entry in Sidebar 1.
linux/grubsplash)
You might have noticed that the root line at the top of the
• Once you have the XPM or gzipped-xpm file, you need
menu.lst file says (hd0,0) even though we used (hd2,0) ear-
to add a line at the top of GRUB’s menu.lst to instruct
lier. When you boot from the USB flash memory key, the
GRUB to load the specified boot splash image. The
key itself becomes hd0, even before the primary master hard
line should read as follows:
drive. Once you have the menu.lst file edited, go ahead
and reboot. Make sure that your BIOS is set to USB-HDD, splashimage=/boot/grub/debsplash.xpm.gz
USB-ZIP, or USB-FLOPPY. You might need to experiment
to see which one works. Once you get to the menu, select In my case, I’m using the Debian boot splash image as my
the option for DSL. If you get a GRUB error and are unable background.
to successfully boot into a kernel, press the ‘c’ key to open ---------------------------------------
a GRUB prompt. You can try commands like find to help
Another cool function with GRUB is
locate files to boot from.
putting a splash image on the boot menu
screen
GRUB splash images ---------------------------------------

Another cool function with GRUB is putting a splash im-


age on the boot menu screen. By default, GRUB will make GRUB on CD-R/W media
the menu screen a plain black-and-white menu. There are
I’ve also mentioned several times about installing GRUB to
menu options to change the black and white colors, but why
use for a bootable CD-R/W disk. When generating the ISO
stop there? Grab your favorite picture, or head to one of the
image, you will use some special settings of mkisofs. The
URLs listed below which have splash images created for
command to build a bootable GRUB CD-R/W looks like:
you. If you are creating your own, it will need to be in XPM
format, a maximum color palate of 14 colors, and 640x480 $ mkdir -p iso/boot/grub
resolution size. The GIMP can help transform your graphic $ cp stage2_eltorito iso/boot/grub
$ mkisofs -R -b boot/grub/stage2_eltorito \
to these specifications. As an alternative, you can use the -no-emul-boot -boot-load-size 4 \
ImageMagick suite of programs. The application convert -boot-info-table -o grub.iso iso
can help with this conversion process. You can run it as
follows: The key is to copy the stage2 eltorito file into the /boot/grub
directory of the CD image tree, and run mkisofs with the
$ convert -resize 640x480 -colors 14 \
options specified above. As mentioned earlier, you can also
mycoolpicture.jpg mybootsplash.xpm
$ gzip mybootsplash.xpm burn a menu.lst file along with kernels and disk images and
put them all on the CD. In the menu.lst, you will need to use
In this case, the file mycoolpicture.jpg will be resized to (cd) as the device, rather than (hd0). Splash images work
640x480, reduced to 14 colors, and saved in the XPM well, too.

Free Software Magazine Issue 10, January/February 2006 31


HACKER’S CODE

Conclusion (http://ruslug.rutgers.edu/∼mcgrof/
grub-images/images)
Congratulations! Now you have a bootable USB flash mem- • GRUB Splash (http://vision.featia.net/
ory key, with DSL and memtest86+, and even a nice boot linux/grubsplash)
splash image. You even have the knowledge to add extra
images, like your favorite BIOS update disk image, and oth-
Copyright information
ers. For more information, check out some of the links in
the resources section below. c 2005 Jeremy Turner
This article is made available under the “Attribution-
NonCommercial-NoDerivs” Creative Commons License
Resources 2.0 available from http://creativecommons.org/licenses/by-
nc-nd/2.0/ (http://creativecommons.org/
• Grub Homepage (http://www.gnu.org/
licenses/by-nc-nd/2.0/).
software/grub)
• Grub Manual (http://www.gnu.org/
software/grub/manual/grub.html) About the author
• Memdisk (http://syslinux.zytor.com/
Jeremy Turner enjoys freelance writing when given the
memdisk.php)
opportunity. He often plays system administrator, hard-
• Syslinux (http://syslinux.zytor.com)
ware technician, programmer, web designer, and all-
• Memtest86+ (http://www.memtest.org/
around nice guy. You contact him by visiting his web
#downiso)
site (http://linuxwebguy.com).
• GNU GRUB Public Splashimage Archive
Jump to Debian GNU/Linux!

A guide to why the Debian distro is a good choice

Arturo Fernández Montoro

here are hundreds of GNU/Linux distributions Motorola 680x0 processors (m68k), SGI’s big-endian MIPS

T around, each with its strengths and weaknesses.


One that stands out from the masses is De-
bian. It is the only major distribution not de-
veloped (or even backed) by commercial vendors, but by
a group of volunteers around the world. Its main fea-
systems and Digital’s DECstations, Sun’s SPARC and Ul-
traSPARC systems, the PowerPC (using IBM and Motorola
processors), IBM S/390 mainframe systems and Hewlett
Packard’s PA-RISC machines (hppa).
The Debian project doesn’t only produce a free (as in free-
tures are robustness, great software package management, dom, not only of charge) distribution, but is itself a strong
a huge software collection consisting of more than 15,000 supporter of free software. While many people spend
pre-compiled packages ready to install and run, and a trans- hours discussing the differences between “free software”
parent and always helpful support system based on mailing and “open source software”, Debian explicitely explains its
lists and a bug tracking system. position in two documents: “The Debian Free Software
But, there is something else that makes Debian special: No Guidelines” (DFSG), which defines what constitutes free
other distribution has seen as many offspring distributions software according to the Debian project; and the “Social
as Debian has. Among them you’ll find customized Linux Contract” with the free software community which posi-
distributions for regional markets like LinEx (a government- tions the project itself and defines its links to the outside
driven project in Spain), or the shooting star Ubuntu (devel- world:
oped by a commercial vendor). The reason for this popular-
• Debian will remain 100% free
ity is obvious: The Debian distro is not only free, but boosts
• The project will give back to the free software commu-
flexibility and transparency.
nity
If you use another Linux distribution and you are interested
• The project will not hide problems
in changing, after you read this article you should install
• It prioritizes its users and free software
Debian for sure.
• It describes how to deal with work that does not meet
its free software standards
Introduction
You can read this document at Debian Social Contract
Debian/GNU Linux is a universal operating system. You (http://www.debian.org/social contract).
can install and run it not only on Intel- and AMD-based 32 Differing from other Linux distributions, you’ll find not just
and 64 bit PC systems, but also on different computer archi- one Debian version at a time, but three different releases:
tectures like Compaq’s and Digital’s Alpha systems, ARM, “stable”, “testing” and “unstable”. These are three different

Free Software Magazine Issue 10, January/February 2006 33


HACKER’S CODE

distributions. Each one ships with its own software pack- /etc/apt/sources.list configuration
ages which may or may not stem from the same original
source-code version. For example: Debian “stable” at the
time of writing shipped with a gimp package tagged 2.2.6,
while “testing” at the same time included version 2.2.7. The
“unstable” release uses the most recent software versions.
There is, however, only one official release: “stable”. De-
bian recommends it for production environments. The “test-
ing” distribution contains packages that haven’t been ac-
cepted for the “stable” release yet, but after extensive testing
will eventually move over. The “unstable” tree is the De-
bian developers’ working ground. At times this distribution
can show problems like broken dependencies. Neverthe-
less, this distribution is usually completely functional since
quality assurance (QA) is a task the Debian project takes • Non-Free: consists of software with a DFSG-
serious. Packages in “unstable”, however, simply have not incompatible license like “doom-wad-shareware”, a
been tested in depth. If you wish to run a system equipped package that includes shareware game files for the 3D
with the latest software versions “testing” is a good bet, but game DOOM
if you need a robust server you should choose “stable”.
---------------------------------------
---------------------------------------
The codename of the most recent
The reason for this popularity is obvious:
“stable” distribution is “Sarge” also
The Debian distro is not only free, but
known as Debian GNU/Linux 3.1
boosts flexibility and transparency
---------------------------------------
---------------------------------------

Each of these distributions has a codename which (apart Advantages and disadvantages on the
from “unstable”) changes with every release. The code- technical level
name of the most recent “stable” distribution is “Sarge”,
also known as Debian GNU/Linux 3.1. It was released June, Debian’s different approach becomes visible not only for-
6th, 2005. The current “testing” distribution is nicknamed mally but also in technical details. It ships with a unique
“Etch”, and “unstable” always remains “Sid”. All code- and robust package management system, centering around
names are taken from Pixar’s movie “Toy Story” since a the APT tools and the “dpkg” utility, that Debian develop-
Debian project leader worked for this company. Obsolete ers and users are especially proud of. It is the best way to
releases are “Woody” (3.0), “Potato” (2.2), “Slink” (2.1) install software quickly and easily on your machine—even
and “Hamm” (2.0). as a newbie you’ll appreciate and love it. The package man-
agement system uses “dependencies” between packages to
Each distribution groups its packages by their software li-
ensure correct software installation. Pre-compiled packages
censes:
are distributed in a specific archive format with “.deb” file
extension. While utilities like “dpkg” and “apt-get” are pure
• Main: includes all software compatible with the command-line tools, Debian also provides a set of package
DFSG, for example the GNOME web browser management front-ends to choose from like “dselect”, “ap-
“epiphany” titude” and “synaptic”. Most tools access software reposi-
• Contrib: you’ll find free software that depends on non- tories via FTP or HTTP, provided the user wishes so. You
free (according to Debian) software to run. “ant” (a type a single command, and Debian will download, install
Java development tool) is an example for this and configure the software for you. You don’t need to worry

34 Free Software Magazine Issue 10, January/February 2006


HACKER’S CODE

about where the software resides—as long as the configura- • CDs or DVDs: books, magazines and independent
tion file /etc/apt/sources.list contains the repository’s proper software vendors will provide you with Debian instal-
URL. Each repository entry looks like the following line: lation media. You can also download the appropriate
images from the Debian web-site and burn them your-
deb http://www.debian.org/debian \ self. To boot from the installation DVD is the easiest
sarge main contrib non-free
way for newbies. Check your BIOS to ensure your sys-
tem will do so!
This means that the tools will download and install software
belonging to the “Sarge” distribution from the main Debian
Before you start make sure you have as much information
web site. To install the GNU Image Manipulation Program
about your hardware as possible, because during the install
(GIMP) the “root” user will now type e.g. the following
process the installation program will request the informa-
command line:
tion.
#apt-get install gimp “Sarge” allows you to use the 2.4.17 or the 2.6.8 kernel.
To choose the latest Linux version, type “linux26” at the
The “apt-get” program will download the GIMP package “lilo” prompt when booting from the install media and press
and all packages it depends on (i.e. all software needed to “Enter”.
run the GIMP). The Debian installer program asks you about your language,
Debian does not hide errors and bugs. Users can to send country and keyboard layout. If possible it configures your
bugs using the bug tracking system and the Debian devel- network and loads appropriate kernel modules for the hard-
opers can quickly access them by web or e-mail. Bugs ware it auto-detects.
are accessible to everybody because of the importance De- ---------------------------------------
bian places on Quality Assurance. “The Debian Policy” is a “Sarge” allows you to use the 2.4.17 or
specification for the standards of quality using by Debian. the 2.6.8 kernel
On the other hand, Debian also has some disadvantages ---------------------------------------
when compared with other distributions: its hardware auto
detection is still way behind the appropriate functionality Now it’s time to partition your disk. Be careful. After you
in SuSE or Mandriva, and the installation process doesn’t have selected the installation partition the next step is to in-
make it easy for beginners. stall the base system. To be able to boot your system you
need to install a boot loader like GRUB or LILO. When
done, reboot your machine. Now Debian starts some post-
Installing Debian/GNU Linux boot configuration routines: you’ll be asked to:

To install Debian you need at least a little patience. To give • Configure your time zone
you a headstart, a short summary of the Debian “Sarge” in- • Choose a name for your machine
stallation process for a desktop machine follows. The offi- • Set up users and passwords. During this stage you must
cial Debian installation page at choose the password for the “root” user
Debian installation page (http://www.debian.org/ • Create an ordinary user for your day work
releases/stable/installmanual.en.html) • Set up PPP or PPPOE for dial-up connections with the
provides more detailed information. internet
First you have to choose an install method: • Configure the APT system in charge of the package
management
• Network: you can install Debian via the internet or us- • Install some software packages. To do this you first
ing a partition that one of the other machines in your have to choose the relevant software. On a desktop
LAN provides by means of NFS (Network File Sys- machine you’ll probably want the office-suite Open-
tem) Office, the Mozilla Firefox web browser, the e-mail

Free Software Magazine Issue 10, January/February 2006 35


HACKER’S CODE

Debian official web site Conclusion

Debian GNU/Linux as a distro is different due to its tech-


nical details and for its philosophy. Freedom is a very
important concept for the Debian Project and it is a non-
commercial distro.
Due to its robust, flexible and highly configurable nature,
some governments have chosen Debian upon which to base
the development their own Linux distro and the project has
been a success.
If you use other Linux distributions, I recommend you give
Debian a try. Debian is not only for geeks—everybody can
install and use it. Don’t doubt it, jump to Debian!
---------------------------------------
Due to its robust, flexible and highly
configurable nature, some governments
client Kmail, the instant messenger client Gaim, the have chosen Debian upon which to base
image manipulation program GIMP, Totem (a video the development their own Linux distro
player) and a desktop environment like GNOME or and the project has been a success
KDE
---------------------------------------
• Configure your Mail Transport Agent. This is optional
but useful since internal system notification depends
on e-mail Acknowledgements

After these steps you’ll be presented with the login prompt. The author would like to thank Patricia Jung for her com-
Your system is now ready to use. ments and grammatical revision.

International example
Linex web site
Back in 1998, the government of Extremadura, a small re-
gion of Spain, launched an educational project for tech-
nological alphabetization. The success of this educational
project depended totally on the chosen software, and access
to source code was a very important issue. The govern-
ment developed a new Linux distribution based on Debian
GNU/Linux 2.0 called “Linex” (Linux + Extremadura).
Currently, Linex has an installation base of over 10,000
computers, mainly in government offices and schools.
Another region of Spain (Andalucı́a) follows the exam-
ple and makes their own distribution called “GuadaLinex”
based on Linex.
Countries like China, Italy and Brazil have been studying
the success of the project.

36 Free Software Magazine Issue 10, January/February 2006


GuadaLinex web site

Bibliography

The Debian web site (http://www.debian.org)

The Linex distro web site (http://www.linex.org)

The GuadaLinex distro web site (http://www.


guadalinex.org)

Copyright information

c 2005 Arturo Fernández Montoro


Permission is granted to copy, distribute and/or modify this
document under the terms of the GNU Free Documentation
License, Version 1.2 or any later version published by the
Free Software Foundation; with no Invariant Sections, no
Front-Cover Texts, and no Back-Cover Texts. A copy of the
license is available at http://www.gnu.org/copyleft/fdl.html

About the author

Arturo is a software engineer specialist in web devel-


opment and a freelance author for various Linux maga-
zines. He works with Debian GNU/Linux since 2000.
Convincing management to
approve free software

Tips to better advocacy

Maria Winslow

he grassroots efforts of system administrators Tip 1: don’t bash Microsoft

T have brought Linux and other free software into


the mainstream. To be an effective advocate
for free software at work, you need to speak
the language of management and convince them from their
point of view. This article discusses how to present your
Criticizing Microsoft can be counter-productive in your ad-
vocacy for free software. There are three important reasons
for this.
The first and best reason is that you really don’t have to.
case, why your audience makes all the difference, how to Jupiter Research conducted a survey in 2003 of IT profes-
hook them with proof of cost savings, and reveals two se- sionals in the small- to mid-size business market, asking
cret weapons for your quest to promote free software. what free software they were using and why. The number
This article explains why bashing Microsoft won’t help you one reason for migrating to Linux wasn’t cost savings, secu-
in your case, which migration recommendations will seem rity, or reliability. Perhaps surprisingly, the primary reason
the most practical and feasible to management, and how to stated for migrating to free software was to get away from
present those recommendations in terms that management Microsoft. Therefore, you don’t have to say anything nega-
will respond to. It talks about how your goals are differ- tive; your audience may be thinking it anyway.
ent from those of management, and how to adjust your ap- The second reason involves a little pop psychology. Con-
proach accordingly. Finally, it demystifies return on invest- sider this: when you denigrate Microsoft, you insult people
ment (ROI) and shows how you can put together simple cal- who only have experience working with Microsoft. Either
culations to back up your case. your audience or at least a percentage of their reports may
be in this camp, so be careful of insulting the base of their
professional knowledge.
The golden rule of advocacy
The third reason is that you will seem more credible and
The most important thing to remember when you are mak- professional if you stick to the positive and resist the urge to
ing a case for free software is to be sensitive to your au- use a derogatory nickname.
dience. Who are you talking to? How technical are they?
What is most important to them? You must address their Tip 2: be practical
concerns. Most people consider it a courtesy if you tell them
that you’re researching different free software solutions and Focus on recommendations that will seem the most practical
you’d like to take their concerns into account as you inves- and feasible to your audience. Your campaign should begin
tigate the options. on the edges of the enterprise, with systems that are less

Free Software Magazine Issue 10, January/February 2006 39


MIND SET

critical. It’s best to start with migration recommendations fix because it’s more secure. When you enter a discussion
for systems that are less likely to cause unacceptable dis- on the technical merits of each solution, your boss may tune
ruption. Remember to consider management’s perception out the tech-speak while perceiving that either solution may
of disruption as you consider potential candidates. For ex- pose a risk by being the wrong choice. By focusing on the
ample, e-mail systems can be a difficult place to start unless technical, and especially by debating technical points, you
you have a compelling reason to promote a migration in this and your colleague introduced more risk (or at least percep-
area. Management will naturally shy away from migrations tion of risk) into the equation. So lay off the tech-speak and
perceived to have a high risk of disruption. focus on your two secret weapons instead.
Basic internet infrastructure is usually the best place to start.
Basic web servers, DNS servers, web content, spam/virus Secret weapon 1: case studies
filters, and similar services are commonly trusted to Linux
and free software. Sometimes it’s possible to get approval Management loves case studies. They are anecdotal, easy
for a Linux deployment on reused hardware. So don’t over- and quick to read, and easy to identify with. Most impor-
look this possibility, especially for file servers. It’s easier for tantly, case studies feel like proof to management. Case
management to say yes when the capital outlay is so low. studies usually reflect their peers—IT directors, mainly, and
In your advocacy efforts, be sure to stress to management an endorsement from a peer goes a long way. So start
that free software adoption doesn’t have to be radical; just a googling.
few systems in non-critical roles can add up to savings now As you search for case studies to help you in your recom-
and increased staff experience for future deployments. mendations, follow these two basic rules:

Tip 3: lose the tech-speak • Avoid case studies provided by vendors, as they usu-
ally sound too much like marketing materials to be
Sometimes it might seem that management doesn’t take truly credible. Your best source is always going to be a
your technical advice seriously. Understand that your goals magazine because the analysis will be independent.
are different from management’s goals. You want to work • Choose case studies that are as similar to your scenario
with the best technology, advance your career by keeping as possible to help management recognize how your
up with new technologies as they develop, and do your job free software recommendation would work in your sit-
efficiently using tools that will make your job easier. You’re uation as well as it did in the case study. Consider
technology-centric. Management wants to hold down the whether the case study is reflective of your industry
fort, make sure nothing goes terribly wrong, try to keep peo- segment, or if the basic IT landscape is familiar.
ple from complaining, and do it all within the budget. They
are not technology-centric. Note that the actual technology To get started, look at (http://www.
doesn’t make it into the list of most important goals—it’s windows-linux.com/articles) a few of the case
just a means. studies I presented in my book The Practical Manager’s
The significance is that when you focus on the technology, Guide to Open Source (http://windows-linux.
management thinks you don’t understand the big picture. To com/practicalOpenSource).
management, it’s about making things work well enough to
keep everyone reasonably happy within the constraints of a Secret weapon 2: show them the money
budget. If your pitch to management focuses primarily on
the superiority of the technology, you’re only giving them a The single most effective way to influence any decision to
small part of the story from their point of view. Even worse, deploy free software is to prepare a cost justification. When
if you argue about the technology with a colleague in front you hand your boss a spreadsheet showing the cost savings
of management, you’re likely to get even more pushback. gained, they will consider your migration recommendation
For example, you may recommend dumping the mail server more seriously. Fortunately, this doesn’t have to be compli-
for Sendmail on Linux. Your colleague may advocate Post- cated.

40 Free Software Magazine Issue 10, January/February 2006


MIND SET

The Practical Manager’s Guide to Open Source show the benefit gained by the organization, just the total
cost over the life of the system. The TCO of paper and
pencil is lower than desktop computers, but clearly most
organizations employ desktop computers.

An ROI example

Take as an example a Windows to Linux file server mi-


gration. You’re making the recommendation because the
server, accessed by 100 users, is now five years old, and
you’re coming up on a scheduled hardware/software up-
grade. This is the perfect time to make a migration rec-
Return on investment (ROI) ommendation.
To calculate the ROI of this recommendation, you need to
Return on investment (ROI), also called the cost-benefit ra-
know:
tio, is the benefits gained divided by the costs to acquire the
investment. You can think of ROI as “for every dollar spend, 1. What is the cost to upgrade the hardware and software,
I get back X percent”. if we remain status quo?
Benefit = the total amount of savings (proprietary 2. What is the cost to migrate to Linux and Samba?
price—free software price)
ROI = benefit / cost Because eWeek Labs found Linux/Samba to be two-and-a-
To calculate the ROI of a particular migration, you need a half times faster at file serving than Windows 2003 Server,
few cost numbers. Whenever possible, use historical bud- you’re also recommending that you reuse the hardware.
getary data for the best accuracy. Not everyone pays the Once you have the pricing, you can find the benefit to the
same for software, so if you use the actual value your orga- organization of migrating (status quo cost - free software
nization pays, your calculation will be more credible. You cost). Then divide the benefit by the cost to arrive at the
need to find out two figures: the cost of the status quo re- ROI.
placement system and the cost of deploying your free soft- Status quo upgrade:
ware alternative. Calculate the cost of the status quo sys-
tem as everything your organization will pay if you don’t • Windows 2003 Server, Enterprise Edition, includes 25
go with free software. The cost of the free software deploy- client access licenses ($3999)
ment should not be $0. It’s neither believable nor true. Be • 75 additional CALs ($2448.75)
sure to include support contracts from a third party and out- • New server hardware ($2000)
sourcing costs for deployment or staff training, even if you
pay nothing for the actual software. Total cost of a status quo upgrade: $8447.75
Linux replacement:
Why ROI and not TCO?
• Debian GNU/Linux with Samba ($0)
TCO stands for Total Cost of Ownership, which measures • Initial installation support contract with local system
the cost of the system over its entire life. So why should you integrator ($1500)
calculate ROI and not TCO? There is one simple reason to • Reuse server hardware ($0)
use ROI—it is easy to calculate now. ROI involves the costs
and benefits of the acquisition of a system, which are known Total cost of a Linux/Samba replacement: $1500
at the time of deployment. By its very nature, TCO involves Total benefit: 8447.75 - 1500 = $6947.75
guessing, simply because you can’t know the total cost of ROI = total benefit (6947.75) / cost of free software deploy-
the system until the end of the cycle. TCO also doesn’t ment (1500) = 463%

Free Software Magazine Issue 10, January/February 2006 41


MIND SET

This example shows that a simple migration can bring a Copyright information
very healthy ROI, which will help convince management
that free software is a good idea for your IT environment. This article is made available under the “Attribution-
Use this example as a base for your calculations, and be Share-alike” Creative Commons License 2.0 available from
sure to get the most accurate cost information possible. http://creativecommons.org/licenses/by-sa/2.0/.

Making your case


About the author
Remember, the golden rule of advocacy is to know your
As an Open Source Practice Leader with Virtuas,
audience and be prepared to address their concerns. Tech-
Winslow assists clients in understanding the techni-
nology matters less to management than it does to you, so
cal and budgetary impact free software will have on
make an effort to tone down the bombardment of informa-
their computing environments. Her recent book, “The
tion and give them just the highlights. Recommend migra-
Practical Manager’s Guide to Open Source”, guides IT
tions that will seem the most feasible and least risky to man-
directors and system administrators through the pro-
agement. Be professional and positive in your recommen-
cess of finding practical uses for free software that
dations. Search for case studies that are relevant to your
will integrate seamlessly into existing infrastructures,
situation—they are one of your secret weapons. Addition-
as well as understanding the costs and savings. She
ally, it is worth taking the time to put together a simple ROI
is a frequent speaker and author on the topic of free
calculation. Using the example in this article as a base, you
software. She can be reached via the Practical Open
can impress management with your well-rounded view of
Source website (http://windows-linux.com/
free software in the enterprise and meet with better success
about.html).
in your internal advocacy.
A techno-revolutionary trip on
the internet

Reflections on the lessons from Dean for America

Tom Chance

hen I think about American presidential They started with very little money, a tiny campaign team

W elections, three things come to mind:


money, corporate power and disenfran-
chisement. One of the big political sto-
ries of our time is the decline of party politics, especially
for the young. But another story is that of the internet revi-
and a candidate with no real chance of winning. When hired
in as a new campaign manager because of his decades of ex-
perience, Trippi immediately started to make some changes.
His first was to leverage a web site called Meetup, a so-
cial networking site where people registered their location
talising democracy, empowering and connecting citizens in and an interest in meeting about some subject—in this case
a new, vibrant space. Often Utopian, theoretical and roman- Howard Dean. The web site would suggest a time and loca-
ticised, this vision of the future was made real in the race for tion, and so people began to meet and discuss ways to help
the Democratic presidential candidacy recently in America the Dean campaign. The more Trippi’s team ceded control
by Howard Dean. With a campaign team numbering in the to volunteers on the internet, the more the campaign became
hundreds of thousands mobilising over the internet, Dean successful, to the point where he was the front runner for a
went from being a no-hoper to pole position in a matter of short period of time. He was eventually brought down, iron-
months. ically, by the mainstream media.
The campaign manager credited with much of this success,
Joe Trippi, wrote a book recounting the experience and his Breaking down the broadcast media
lessons for America, under the provocative title: The rev-
olution will not be televised: democracy, the internet and To understand Trippi’s book, and many other arguments
the overthrow of everything. Trippi’s big idea is that the in- to do with the internet, you need to understand the differ-
ternet is going to totally change American politics, in part ence between broadcast and multicast media. Television,
returning it to a golden era of localised engagement while radio, newspapers and other “traditional” media broadcast
also propelling it into a bright new future of decentralised information at the consumer. Any opportunity to feed your
participation. In this article, I reflect on some of the wider ideas back to the media, and to have others hear your views,
issues he tackles and try to understand the implications for tend to be trivial. Examples include a “points of view” pro-
representative democracies and their established organisa- gramme, a “letters to the editor” page or live comments sent
tions. Because of the enormity of the subject area, I’m sim- in from mobile phones. The internet, Trippi suggests, is fun-
ply going to step past the many activities happening outside damentally different because it is multicast, which is to say
the mainstream. that information comes from many outlets and you are free
First, I should recount some of the facts of his campaign. to add your own. Blogs covering politics, for example, will

Free Software Magazine Issue 10, January/February 2006 43


MIND SET

Are we in a dictatorial democracy? “America”, by ? LoVe


c ?
c other aspects of politics, the power to do this depends upon
Released under the Creative Commons Attribution license money; good adverts take a lot of funding; “opposition re-
search folders” needed for attack ads take additional time
and expertise. So parties and campaigns become ever more
geared towards winning the allegiance of rich donors, leav-
ing the people behind.
Trippi appeals to this dystopian vision to emphasise the
power of his “peoples’ campaign”, but it is (perhaps inten-
tionally) misleading. People simply aren’t this apathetic and
apolitical, their political interests just tend to manifest them-
selves outside of the mainstream, where the media lens fails
to reach. The broadcasted message is that local politics,
such as a campaign to save a well-loved building, is fun-
damentally different to national politics, and that both are
declining.
---------------------------------------
Broadcast media turn citizens into
consumers, while the internet can help
necessarily provide a far wider range of views and generally reassert their role in the democratic
allow you to comment directly on articles, start debates or process
even start up your own web site or blog to counter opinions ---------------------------------------
you disagree with.
Into this valley of death strode Trippi and his cohort of in-
Trippi suggests that the broadcast media have subverted ternet entrepreneurs. While his writing is a little dramatic,
democracy and that the internet will “overthrow every- Trippi’s team was truly innovative. Though the Dean for
thing”. That’s a little hyperbolic. Rather, as the centralised America campaign still ran the traditional media ads, they
corporate broadcast media have taken an increasingly cen- saw an opportunity to use the internet to break this lock,
tral role in democratic discourse—telling us what the po- both for the good of democracy and their campaign. The
litical parties think, deciding what constitutes news, and so big idea is that web sites are cheap to set-up and can be
on—that discourse has been subverted. We may still dis- opened up in any number of ways to encourage participa-
cuss politics around the dinner table, at the pub or at the tion. Trippi’s team blogged about their work, read feedback
workplace, but our relationship with politicians is marked and responded to it; they encouraged activists to set-up lo-
by our consuming their ideas and the media’s interpretation. cal meetings via the innovative social networking web site,
We are in a sense no longer citizens unless we get involved Meetup; they showcased others’ work, and promoted efforts
with certain mainstream political organisations, which often that went far beyond their own designs. They turned the
provide little scope for genuine participation and grassroots logic of politics on its head, from a one-to-many relation-
influence. ship in which a politician leads the masses, into a many-to-
Worse still, because politicians and their parties tend to only many network of citizens engaging in issues and choosing a
get short media spots with which to communicate their mes- politician to represent and lead this discourse.
sage, they become simplified. In the US elections political Of course, the internet is still open to the abuse of the broad-
adverts tend to be no longer than thirty seconds. How can cast media because it can replicate the broadcast method-
a candidate possibly convey their complex programme of ology. Consider that when Xerox first designed graphical
policies and opinions in that time frame? The answer is that user interfaces, they made them resemble a secretary’s of-
they can’t, and so instead the choose to emote, to whip up fice, with folders, documents, a waste bin and so on. Rather
fear or anger, and to vilify the opposition. As with many than working on an innovative interface that would change

44 Free Software Magazine Issue 10, January/February 2006


MIND SET

the way we work, they chose to adapt new technology to Bobby Kennedy in the 1960s. While some like to roman-
old methodologies. Similarly, most politicians use web sites ticise the internet as an underground that is undermining
to simply broadcast their message, replicating the method- the dinosaurs of politics, what was significant about Dean’s
ologies of television campaigning on the internet. Indeed, campaign is that it was relevant to the kids. They tapped
Dean’s campaign team was reluctant even to link to the a mainstream organisation into an apparently apathetic de-
Meetup web site from their own until Trippi convinced them mographic and found that the kids wanted to be engaged,
otherwise; when they did the numbers on Meetup shot up. but that they were alienated by middle aged baby boomers
The obvious point here is that it is not the technology alone, who had obviously forgotten their youth. So obsessed with
the internet and web sites, that will revitalise democracy. their “apathetic youth” frame were these politicians and me-
Their decision introduced a new dynamic to their campaign, dia moguls that they began to ridicule the deanie babies
one that made it ever more democratic and open. As they as extremist left-wing vegans—an unfair characterisation
became increasingly dependent upon participation for mo- by Trippi’s account—when they should have been praising
mentum, so they were forced to spend more time and ef- them for their involvement.
fort working in that area. From the moment the Meetup Civic involvement spread beyond the confines of Dean’s bid
link went live on the official web site, Trippi says, the peo- for the Democrat nomination. Bloggers and Meetup afi-
ple took over the campaign. First thousands, then tens of cionados organised “Dean Corps”, which Trippi describes
thousands, then hundreds of thousands of people were reg- as “a sort of low-impact, weekend Peace Corps. . . they got
istering to meet up; over 180 campus groups were started; together in neighbourhoods to clean up riverbanks, to read
millions of dollars were raised not through pandering to the to children, and to collect food for homeless people”. It’s
interests of the rich but by appealing to the civic spirit of not as though Trippi’s team used the internet to invent the
Dean’s supporters. At its height “the discussion was the notion of civic community participation; they didn’t even
campaign”, and the hundreds of thousands of volunteers come up with the idea of combining the two. Given the tools
were dwarfing the brainpower and efforts of the thirty-odd to organise them, and the profile to attract enough attention,
official campaign team. people took it upon themselves to organise and participate in
all kinds of community activities that would have the likes
Transforming the internet and the dinosaurs of Margaret “there’s no such thing as society” Thatcher run-
ning for cover.
One of Dean’s slogans was: “you have the power”, reflect- Dean’s campaign was, in American campaigning jargon,
ing his belief in a new kind of politics. Like many dis- “insurgent” because he started with apparently no hope of
illusioned with the bureaucratic modern political parties, success. His team took his party and his opponents, lum-
the Dean campaign wanted to get away from transactional bering dinosaurs in comparison, by surprise. The campaign
politics, where politicians negotiate deals, to transforma- may well be the first ripple in a series of waves that wash
tional politics, where politicians empower citizens to work away levels of bureaucracy and corruption in representative
together towards a common cause. The internet provided democracies. At least, that’s what Trippi would have us be-
them with the tools to mobilise on a national scale, where lieve. At the very least we can place this series of events in
previously grassroots politics had generally happened on a a wider context to see how change is happening. For this we
far more local scale. The status of a presidential campaign, can look on the other side of the Atlantic to Britain.
and the fact that Dean’s message was so different to the The British Broadcasting Corporation (BBC), one of the
standard Democratic party line, saw people flocking to his largest and most respected in its field, and also one of
cause. the oldest organisations in broadcasting, is embracing open
Young people were a big surprise. Called “deanie babies”, technology and content like no other comparable organisa-
they pushed the grassroots campaign forward more than tion. They have been opening up their web sites with RSS,
any other demographic, with some even travelling vast dis- XML and APIs; they are starting to release their archives
tances across the country to sleep on the office floor and under a Creative Commons-based license; they have even
work 17 hour days. Trippi hadn’t seen anything like it since been developing their own video compression and transmis-

Free Software Magazine Issue 10, January/February 2006 45


MIND SET

sion technology in a series of new free software projects, Trippi’s seven rules for internet activism
rather than doing it all in-house and “protecting” their work
with patents and proprietary software licenses. Their strat- 1. Be first
egy is not only opening the corporation up technologically 2. Keep it moving
but also socially, encouraging civic participation in the pub- 3. Use an authentic voice
lic institution whether through their developers’ network, 4. Tell the truth
their web-based collaborative projects or the imperative to 5. Build a community
remix implicit in their Creative Archive. 6. Cede control
7. Believe again
But you would be wrong to assume that some top executives
in the BBC have decided and decreed that the BBC must
embrace the digital era. Rather, small groups of visionaries Are we heading towards an anarchistic
are working towards that vision in their department, and the utopia?
cumulative effect is that the lumbering dinosaur of public
service broadcasting is in fact evolving faster than its com- If you’re like me, you would have put down Trippi’s book
mercial competitors. Those visionaries made some ripples having finished it thinking: “the internet is the first technol-
that have turned into a wave, just as Dean’s team may have ogy that truly gives people full access to knowledge. . . we
done in politics. The core message of Trippi’s book could can accomplish anything . . . [I] have the power!” That’s a
almost read like a guide book to corporations wanting to selection of the claims Trippi makes in the last page. Part
adopt the free software community’s approach. Free soft- of the problem with his book, and that of many writers in
ware hackers used free software as the basis for the Dean the field, is that he is an unabashed technophile. Because
campaign web site. Slowly these interests are coming to- his purpose in the book is to sell his Big Idea and to enthuse
gether—free & open technology, participatory politics and us with his success, he doesn’t spend much time looking
the mainstream—to change our world. at where the internet might be bad for democracy, nor the
extent to which it is the internet specifically, and not other
factors, that led to his success. Of course he’s not so stupid
as to suggest that it is the internet alone—his emphasis on
his team’s strategy makes that clear—but he is still uncriti-
cal in his appraisal.
Will demonstrations become a thing of the past thanks to the inter- This is not new. According to Douglas Kellner:
net? Photo by dustpuppy. Released under the Creative Commons
Attribution license
“. . . film, for instance, was celebrated by some
of its early theorists as providing new docu-
mentary depiction of reality, even redemption of
reality, generating a challenging art form and
novel modes of mass education and entertain-
ment. But film was also demonized from the be-
ginning for promoting sexual promiscuity, juve-
nile delinquency and crime, violence, and copi-
ous other forms of immorality” (Douglas Kellner,
New Technologies and Alienation: Some Criti-
cal Reflections (http://www.gseis.ucla.
edu/faculty/kellner))

Trippi is rightly critical of the mainstream broadcast media


for the mediocrity of much of its content and for the very

46 Free Software Magazine Issue 10, January/February 2006


MIND SET

Hopefully internet campaigning will make balloons unnecessary. tensible platform of online organising tools for all man-
Photo by Tom Chance. Released under the Creative Commons At- ner and size of organisations”. Though no political party
tribution license in any election that I am aware of has replicated Dean’s
successful use of the internet, it must surely be a matter
of time. A promising development in Europe is Greensnet
(http://www.greensnet.org), which will try to link
together all European green organisations, parties and indi-
viduals in a grassroots activism network using similar soft-
ware to CivicSpace.
To answer my own question, the future is very unlikely to be
an anarchistic Utopia any time soon. So long as mainstream
organisations adapt to the internet, the political spaces on
the internet will probably adapt to their presence; if the par-
ties can really change the way they interact with people on-
line, then people previously lost to the world of mainstream
nature of its transmission. But while television can be un- politics will reintegrate the parties into their lives. Chal-
critical, biased and unengaging, so can the internet. Many lenges from outside these norms, from organisations and
blogs are every bit as bad as the worst of the broadcast me- collectives using the internet for radical politics, will con-
dia, and an active minority can gain disproportionate power tinue to shape those political spaces but so long as the di-
on the internet just as easily as through the broadcast me- nosaurs evolve they won’t replace them. The challenge for
dia, given the right infrastructure. Almost 2500 years ago, all of us who are both technically minded and politically
Plato warned of the powerful speaker, the dictatorship of aware is to ensure that the internet continues to be a tool
orators, who can whip up a frenzy amongst communities. for empowerment rather than a tool for control, to push the
Would Trippi have been so rapt if an ultra-conservative can- mainstream in the same direction that Trippi took Dean’s
didate had done the same, bringing hundreds of thousands wing of the Democratic party. We won’t see a technorev-
of people forward to campaign against everything he thinks olution, but we might just form a revolt that will change
is important, or would he have engaged more critically with politics forever.
the issues he has raised?
So let’s summarise some of these issues quickly. The inter-
net can foster a sense of community, of civic participation Copyright information
and belonging to a mainstream political party. It provides a
significant source of fundraising, though generally only for c 2005 Tom Chance
candidates in the main political parties. But television still This article is made available under the “Attribution-
reaches more voters, it broke Dean’s candidacy and those Share-alike” Creative Commons License 2.0 available from
who benefit from the power imbalances it creates are un- http://creativecommons.org/licenses/by-sa/2.0/.
likely to simply give up their position when the internet be-
comes the main mode of communication. Of course the in-
ternet, both in terms of the technology and the social and About the author
political practices associated with it, are evolving.
Tom Chance is a philosophy student, free software ad-
What will this future look like? We can find some an- vocate and writer. He is the Project Lead of Remix
swers by looking at the cutting edge in mainstream poli- Reading (http://www.remixreading.org), the
tics today. Already, some politicians in the UK use blogs UK’s first localised Creative Commons project. You
that allow comments, and actually respond to comments can contact him via his web site (http://tom.
posted. The people behind the Dean campaign software acrewoods.net).
have been working on CivicSpace, “an integrated and ex-

Free Software Magazine Issue 10, January/February 2006 47


64 Studio

Building a native 64-bit creative distribution

Daniel James

reative computer applications are a niche,

C
Not much choice here. . .
and a relatively small one at that. Even
brand-leading proprietary software companies
like Steinberg, the developers of the long-
established Cubase music sequencer, have been recently
bought out. Consolidation in the creative application mar-
ket has seen Adobe buy Syntrillium, who created Cool Edit,
Avid buy Digidesign and Apple buy Logic—and there are
plenty of other examples. What this means is that a hand-
ful of multinational companies could now effectively mo-
nopolise the gateway to creative expression, at least as far
as computers are concerned. This might not be an issue if
it were not for the wide proliferation of powerful, general
purpose computer hardware in the first world.
In addition, the internet, and by extension the personal com- will take. What is clear is that there is less real choice in
puter, are now the principal channel for distribution of cre- “industry standard” creative software than ever.
ative works in many fields. Proprietary tools on the creative The retail cost of just the software listed here for a single
desktop mean proprietary formats will dominate the inter- computer runs into thousands of euros. The high cost of
net, now that it is no longer a purely textual medium. The entry to this field helps maintain the artificial distinction be-
landscape today for “industry standard” creative software tween consumers and producers. Now of course the soft-
on the proprietary platforms looks a bit like that in the fol- ware companies who make these programs would say that
lowing figure. they represent great value for money, and that educational
In case you’ve heard Apple described as the creative alter- institutions can benefit from generous discounts. On the first
native or competitor to Microsoft, we should not forget that point, it would be fair to mention that as mass access to per-
back in 1997, before the launch of OS X, Microsoft actually sonal computers has brought the cost of hardware down, the
invested $150 million dollars in Apple. That’s not some- creative applications haven’t followed suit. Quark Xpress
thing a company usually does with a competitor. More re- was really expensive in 1995 and it still costs a lot today.
cently, Adobe and Macromedia have announced a partner- To answer the second point, I believe proprietary software
ship, although it’s not yet clear what form that partnership in education, even with discounts, represents a hidden sub-

48 Free Software Magazine Issue 10, January/February 2006


MIND SET

sidy from the state to the manufacturers of this software. If The 64 Studio default desktop is a slimmed-down Gnome install
we look at one Adobe educational pack on offer in the UK
for example, it appears very reasonably priced at £9.99 per
seat. But a school or college needs to buy 200 seats to get
that price, i.e. pay nearly two thousand pounds, in order to
run feature-limited “Elements” versions of just two applica-
tions. What this means is that taxpayers around the world
are sending millions of dollars every year to fund propri-
etary software development, and yet many schools and col-
leges still can’t afford to put a full set of creative tools in
front of each student.
Even if the software was practically free, consider the value
to a company like Adobe that every graduate of the creative
disciplines around the world leaves college with training in
their software—which the company doesn’t contribute to di-
rectly at all. Even the potential funding benefits of corporate
taxation for education are offset by the fact that most, if not
all multinational software companies use offshore account- For example, typical distributions use Arts or ESD
ing. to share the sound card between applications, while
It’s certainly the case that artists in a number of disciplines many GNU/Linux musicians would want to use
are using GNU/Linux and other free software—free in both JACK—admittedly more complex, but far more pow-
the economic sense and the political sense—to realise their erful. (I was asked recently what was so difficult about
ambitions. It would also be fair to say that this software is JACK that means it isn’t found as the primary sound server
only just starting to penetrate the consciousness of the main- in any mainstream GNU/Linux distribution. I don’t think
stream. But how can we make it practical for the average it is difficult to use, but for the time being it still requires a
computer user? patched kernel, and some knowledge of sample rates and
buffers. Many users just want to be able to throw audio at
The 64-bit question any sample rate to the soundcard, and could care less about
real-time priority.)
Since any software project takes a while to get to a mature In addition, the creative user’s default selection of applica-
stage, when I launched a start-up earlier this year, I decided tions would be very different to—for example—a sysadmin.
to concentrate on the kind of desktop systems which I be- Even gigantic distributions like Debian don’t package all of
lieve will be common among creative users in the future. the specialist tools needed for media creation, and the in-
We’ve had native 64-bit Linux on the Alpha and the Itanium tegration between packages is often less than perfect. So
for years, but these architectures never reached the main- the goal of 64 Studio Ltd. is to create a native x86 64 dis-
stream desktop—and I don’t think they ever will. SGI now tribution with a selected set of creative tools and as much
has an Itanium2 based GNU/Linux desktop product aimed integration between them as possible.
at the creative market, but it costs US$20,000 per machine.
Compared to Windows or any other operating system, Why Debian?
GNU/Linux clearly has a head start on x86 64, and you can
choose from a number of natively compiled desktop distri- Most of the packages in 64 Studio come from the unofficial
butions for the platform. Unfortunately for the creative user, Pure 64 port of Debian testing, with some from Ubuntu,
all of these are aimed at the general purpose audience. It’s some from DeMuDi and some custom built. A more obvi-
impossible to be all things to all people, and what’s good for ous choice might be Red Hat, given that many of the high
the so-called consumer is rarely right for the content creator. end (which is to say expensive) proprietary tools used in

Free Software Magazine Issue 10, January/February 2006 49


MIND SET

Hollywood studios and elsewhere are sold as binary-only JACK running with realtime priority on a native x86 64 desktop
Red Hat packages. However, the split between Red Hat En-
terprise and Fedora Core presents serious problems for any
derived distribution. You could rebuild Red Hat Enterprise
from source as long as you removed all Red Hat trademarks,
but that’s a lot of extra work—and you’d have to follow Red
Hat’s agenda for its distribution, which you couldn’t have
any input to.
---------------------------------------
GNU/Linux clearly has a head start on
x86 64
---------------------------------------

On the other hand, you could build a distribution on top


of Fedora Core. It’s broadly Red Hat compatible, and
there are the beginnings of a community process taking
place—although it’s still far more centrally controlled than
genuine grass-roots distributions. The key problem with this Ekanayaka is a Debian Developer, so we hope to contribute
approach is that Fedora Core is not designed or built to ac- our improvements back directly—where they are Debian
tually be used. I can say this with some confidence because Free Software Guidelines compliant. However, we do bene-
I was able to ask Michael Tiemann, former Red Hat CTO fit from the flexibility of not being an official part of Debian.
and now vice president of open source, this question my- For example, the Debian project has decided that they do not
self. Fedora Core remains a technology preview for Red want to package binary audio interface firmware, which is
Hat Enterprise, and the Fedora Project has absolutely no required to be loaded by the driver for the interface to work.
commitment to stability or usability. If Red Hat wants to That’s fair enough, and I understand the reasons for their de-
try a major update to see what breaks, it can. cision, but it’s a major pain if you own that kind of interface,
Debian does have a commitment to stability, and a bona-fide because it won’t work out of the box.
community process. There are other reasons for favouring
Debian over Red Hat: apt-get is just better than rpm when The alpha releases
it comes to upgrades, and on the creative desktop we’ll be
upgrading continuously. The work of the Debian Pure 64 There are a number of challenges we still have to face. The
port team is of a very high quality, not to mention that of all first is following the rapid pace of kernel development. We
the many Debian package maintainers. are currently using Linux 2.6.13 with Ingo Molnar’s real-
I recognise that whatever packages we put into 64 Studio, time preemption code and a few other patches. Not so long
users will want some of the packages that we haven’t in- ago, these patches didn’t build on x86 64 at all, and as far
cluded—so being able to use thousands of binaries straight as I know, we are the only native 64-bit distribution using
from the Pure 64 port without modification would be a ma- them. The first indications are that this combination works
jor advantage. Because we’re sticking very closely to De- really well for audio with full preemption enabled, the most
bian with the 64 Studio design, it’s our intention that users aggressive setting. For the time being we are using the
will be able to install any application from Pure 64 simply realtime-lsm framework to give real-time priorities to non-
by enabling an additional apt source. This will include most root users, because we know it works. We may switch to
of the well-known applications with the exception of Open- rlimits in the future, as this has been merged into the main-
Office.org, which just won’t build natively on x86 64 yet. line kernel now.
In fact, 64 Studio is not so much a distribution based on Another challenge is the issue of support for proprietary for-
Debian as a Debian remix. 64 Studio maintainer Free mats within free software. At the level of encoding and de-

50 Free Software Magazine Issue 10, January/February 2006


coding, we think the best solution we’ve seen is the Fluendo
plugin collection for GStreamer, which as far as we can tell
meets the requirements of free software licences regarding
linking, and also the legal requirements of the patent hold-
ers. It’s simply not sustainable to expect users to locate and
download libraries of dubious legal status, and install these
by themselves. Apart from any ethical problems, it’s impos-
sible to support users properly in that situation. Download-
ing these libraries is certainly out of the question for any
institutional user, such as a college.
At the level of project interchange, for example moving a
complex project from Ardour to ProTools, there does seem
to be a move among proprietary applications towards sup-
port for AAF, the Advanced Authoring Format. Free soft-
ware must support this kind of high-level project compati-
bility format, otherwise it doesn’t stand a chance of gaining
a significant user base. When I talk to people in the music
industry, it’s almost a mantra that “everyone mixes in Pro-
Tools”. I’m not aware of any free software audio application
that supports ProTools format import or export, but at least
with AAF we have the chance of finding a middle way.
64 Studio version 0.3.0 alpha is currently available for
download (http://www.64studio.com/) as an .iso
image. Changes from stock Debian include X.org instead
of XFree86, the custom kernel package, and a base selec-
tion of packages including the Gimp, Inkscape, Blender,
Ardour, Jamin and Kino. Version 0.4.0 came out at the
end of September with more packages and enhancements,
and the distribution is seamlessly upgradeable from a 0.3.0
install with apt-get of course. We’d be more than pleased
to hear your test reports and suggestions for the distribu-
tion—you can help us make free software the creative desk-
top of choice.

Copyright information


c Daniel James 2005. Verbatim copying permitted

About the author

Daniel James was one of the founders of LinuxUser &


Developer magazine, and the original director of the lin-
uxaudio.org consortium
Towards a free matter economy
(Part 4)

Tools of the trade

Terry Hancock

A good scientist is a person with original ideas. technocratic elite can participate in the process—hence
A good engineer is a person who makes a de- bazaar size might always be too small to be effective. But
sign that works with as few original ideas as pos- twenty years ago, this was the conventional wisdom about
sible. There are no prima donnas in engineer- software development, too!
ing.—Freeman Dyson
magine where free software would be today if it

I weren’t for the GNU C Compiler! Just as free soft-


ware depends heavily on free compilers, so does free
design rely on having free computer aided design
and authoring tools.[1]
Before the gcc was created, when free software had to be
By users for users

A compiler is a program to write programs, so the users of


the tool are also those qualified to create it. With design
tools, we’re not so lucky: it’s a fairly rare engineer who
written on proprietary compilers, the software development has the programming expertise to develop proper engineer-
community was limited to the very small number of peo- ing design software. This is a problem because bazaar de-
ple who could afford to purchase such tools—either because velopment works best when applications are developed by
they were professional programmers or very dedicated am- the people who need them. In order to get a CAD/CAM
ateurs. system started, it will probably be necessary to start with
The idea of “bazaar style” development hadn’t yet been con- a centrally organized solution—a cathedral development
ceived, but that was just as well, since such small bazaar model—working as quickly as possible towards a solution
sizes would lead to a breakdown of the bazaar development that relies heavily on scripting that can be done by the typi-
strategy[2]. No doubt some centrally controlled “cathedral” cal end user of engineering software.
projects (such as the GNU project) would’ve continued, but This is the sort of approach that has proven itself functional
the overall effect would be an extreme chill compared to the in many projects in the multimedia and desktop application
hotbed of innovation that free software currently represents. sphere: customization and scripting facilities have been the
Lacking the kind of professional-quality design authoring free software solution for desktop environments like KDE
tools that are found in the commercial engineering work- [3], vector graphics applications like Skencil [4], 3D anima-
place, the free design community is in just that situation tion and modelling applications like Blender [5], and partic-
today. ularly in game engines. All of these are situations where the
Of course, it can be (and has been) argued that engineering same problem applies: the typical user is not a particularly
is a specialized discipline and that therefore only a small skilled programmer, so a simplified programming environ-

52 Free Software Magazine Issue 10, January/February 2006


MIND SET

Figure 1: QCAD GUI. QCAD has an excellent and intuitive ing applications such as QCAD [8] are moderately well-
palette-based GUI that allows quick access to drawing constraint developed (although they still fall short of proprietary com-
features, and is easy to learn petitors). The GNU EDA project[9] is making progress in
the direction of integrated circuit design, and it should not
be surprising that these “highly ephemeralized” technolo-
gies are among the first addressed.
---------------------------------------
Specialized cases of CAD have already
been covered by free software offerings
---------------------------------------

Getting into the harder technologies, such as aerospace or


mechanical engineering or robotics, requires much more so-
phisticated 3D CAD tools than those that are currently avail-
able. The modern manufacturing industry relies extensively
on these tools to produce the kinds of complex technologies
that we are accustomed to, and we won’t have much chance
of being competitive in the free design world, until we’re
ment is needed to make a more graded slope from user to
able to use tools that are at least as good as these.
developer.
This effectively increases the bazaar size for the parts of
the program that can be scripted. User interfaces matter Friendlier interfaces
the most to the serious user and are the hardest for the pro- The interfaces in modern versions of proprietary CAD sys-
grammer (who is not particularly skilled in the application tems such as AutoCAD [10] have hardly changed at all in 20
domain) to predict. A user interface with a scripting engine years. They have traditionally relied on the high expressive
gives a lot of leverage for the overall program, and the avail- power at low development cost of linguistically-oriented
ability of easily-embeddable high-level interpreters such as command line interfaces, leaving their visual-tactile graphi-
Python make such a facility easy to provide. Thus, the “by cal interfaces to stagnate. End user oriented free software
users for users” philosophy of free software design can be artistic 3D tools like Blender, however, have seen much
stretched to suit real world applications, where skillsets vary greater innovation, and they have demonstrated that a well-
between users and developers. designed graphical interface for power users can greatly in-
crease productivity, even for very complex tasks.
Computer aided design, simulation, and
manufacturing Collaborative design

Although there are many other areas of design software In order to maintain a sufficient size for a free-design bazaar
which are useful and available, and many others for which to establish itself and grow, CAD systems which are ad-
no free solution yet exists, the most pressing and obvi- equate to the task must be created. They must be free-
ous need is for a general purpose 2D/3D mechanical Com- licensed, so that all comers to the community can partici-
puter Aided Design and Computer Aided Manufacturing pate. They must use free, standardized drawing storage for-
(CAD/CAM) system. mats, and they must be friendly to version control and any
Specialized cases of CAD have already been covered by free other necessities of online collaboration.
software offerings—such as xcircuit [6] for drawing and Furthermore, they must permit a form of markup that allows
capturing electronic schematics and pcb [7] for designing communications about drawings to occur electronically. To
printed circuit boards, and general purpose 2D CAD draw- my knowledge, this has never even been fully achieved even

Free Software Magazine Issue 10, January/February 2006 53


MIND SET

Figure 2: Blender GUI. Blender’s interface is cursed by new users, from tolerances and materials to the relationship between
but greatly loved by power users. It does seem a bit daunting at first, components in large assemblies. Furthermore, as the bazaar
but I quickly became attached to it. It compresses an enormous community grows, parts from many different vendors will
amount of options into a small space with an intuitive and highly have to be integrated.
internally-consistent design, using color-coded widgets, icons, and
words as needed. If not actually used in a 3D CAD system, I think This has long been a problem in commercial design appli-
it should at least be emulated cations (Consider what happens when space station com-
ponents from RK Energia in Russia need to be mated with
components from Lockheed Martin in the USA), and good
CAD systems constitute the solution. In the bazaar environ-
ment, virtually all components will be “outsourced”, so it
will be necessary to use good engineering communications
processes to ensure that components interact properly.

Breaking the proprietary grip on the CAD


market

There is a kind of circular logic that keeps people locked


into the systems they have—they are expensive and difficult
to use because they have a very small user base. But the
user base is small, precisely because they are expensive and
difficult to use!
with proprietary software, although I am aware of an aban-
doned attempt at the Jet Propulsion Laboratory called Su- The providers of CAD software have effective monopoly
pernova, based on “Lambda MOO” technology[11]. power of a very limited market, defined by the restriction
to the commercial industry who can pay the high licens-
However, these network effects are precisely the sort of
ing costs (typically $3000 per seat! [12]). Since the pro-
problems that free software is better positioned to solve!
prietary industry mostly develops proprietary technology,
CVS, Subversion, and most forms of internet interpersonal
there hasn’t been that much progress in making CAD sys-
communication are the types of software that started out
tems fully collaborative, nor in making them integrate with
free.
communications channels to allow the virtualization of such
standard engineering rituals as design-reviews and mark
Integration with Narya Bazaar
ups.
In the Narya Bazaar system (see parts 1 (http://www. These systems should be “low hanging fruit”, easy to pick
freesoftwaremagazine.com/free issues/ off, but for one very unpleasant reality: 3D CAD systems
issue 07/free matter economy), 2 (http: are intrinsically very complex pieces of software that take
//www.freesoftwaremagazine.com/free a lot of work to write. Ultimately, however, they exhibit
issues/issue 08/free matter economy 2) and all of the criteria for a free software success story: they are
3 (http://www.freesoftwaremagazine.com/ complex, have rich network effects, and are just the type of
free issues/issue 09/free matter economy high buy-in software that users expect to pay maintenance
3) of this series), there’s a vital role played by specification and support contracts for.
objects which must define work to be done adequately to Unlike the desktop computing market, the manufacturing
form a contract between the donors, projects, and vendors. market is very much aware of the importance of standard-
Whatever CAD system we create must be up to the task ization and the dangers of lock-in. Lock-in to single-source
of defining these specification objects adequately for such suppliers is a long-standing trap in the manufacturing indus-
agreements. That will require a commercial-quality CAD try, and managers already know the importance of avoid-
system, and it will need to support a range of meta-data ing it, which is why the value proposition of free-licensed

54 Free Software Magazine Issue 10, January/February 2006


MIND SET

Figure 3: AutoCAD GUI. Although AutoCAD certainly has a Model (standard representation of CAD data and
GUI, many users find themselves relying on the command run line file formats)
to accomplish most 3D modelling tasks, perhaps reflecting Auto-
CAD’s origin as a 2D CAD system (Image credit Wikipedia) CAD drawings are complex structured data, which is intrin-
sically object-oriented. Therefore it makes sense that some
form of object database is used to hold drawing data, but the
design of the schema is pretty complex.
There isn’t one obvious way to represent a 3D object math-
ematically; there are many different systems, optimized for
different applications. Fortunately only a relatively small
number of the nearly infinite possibilities are actually in
use, and so the representation of CAD data remains solv-
able. But it’s a big enough problem to be recognized by the
commercial manufacturing industry, and to call for some
form of standardization.
Luckily for us, this has happened in the form of the Standard
for the Exchange of Product model data (STEP) standard
(also known as ISO 10303 and ANSI PDES) [15].
The most important contribution of STEP is not the data
software will be easier to present to them. On the other
representation, but the classification and standardization of
hand, there is still a credibility gap in proving that better
the object-oriented data models for representing CAD data.
(or even adequate) software can be maintained using free
There are so many representations in use, segmented across
software development models—since conventional wisdom
so many industrial classifications, that collecting all of that
in the engineering community understandably favors engi-
into one standard is a monumental task, and the STEP stan-
neered solutions (but there is a recent “rapid prototyping”
dard schemas are indeed a monster as a result. However, this
trend, which could be comparable).
means we can regard the STEP standard as a fairly complete
assay of what the manufacturing users need in a CAD sys-
Pieces of the puzzle tem, which provides a blueprint not just for the file formats
that we will use, but the internal data representations, and
We have to consider the individual components that are even the GUI controls that must be provided to manipulate
available to piece together a CAD system out of major el- that data. Even though STEP is intended as an exchange
ements that already exist in the free software community. standard, it also provides a plan for developing the software
To do this, I’m going to assume a “Model-View-Controller” itself.
(MVC) model of development [13], in which steps are taken STEP is not as open as we would like it to be. There don’t
to keep these major components separate from each other, appear to be any patent encumbrances, which is important,
although there are some reasons why we might want to relax but the “source” documents from ISO are mostly copy-
this constraint. righted and available only for a fee [16], which you usually
Here I’m going to assume Python as an integration lan- must pay to your national standards organization (ANSI in
guage, to simplify some of the choices, and also because the USA, for example), and at least at present, the fees are
Python is a language that is pretty popular and fairly easy to too high for individual developers to pay. Since a free soft-
use for engineers as opposed to career programmers. For a ware development project relies on the cooperation of unaf-
project to succeed in the free software world, it’s important filiated parties to operate, there’s no easy way to spread the
that the implementation language be accessible to a suffi- cost of these documents over a development team as there
cient quantity of the program’s users to form a healthy de- would be in a single company, so this practice is effectively
velopment bazaar. [14] protectionist to proprietary software vendors. This is not

Free Software Magazine Issue 10, January/February 2006 55


MIND SET

Special domain design tools

Although I believe 3D mechanical CAD is the most important design authoring challenge to be met, there are a lot of
specialized domains for which there are existing free software design applications.
For software and systems design, there is GNU’s dia program which makes several kinds of specialized diagramatic
drawings easy to create. What can’t be drawn with dia can be represented with more general vector graphic programs
such as Inkscape or Skencil, and presented with KPresenter, or other free software slide presentation packages.
Electronic schematics can be drawn easily with more than one program, including for example, xcircuit and oregano.
The GNU EDA project primarily addresses integrated circuit design, and there is pcb for designing printed circuit
boards. The biggest complaint I have about these applications is that they have very inconsistent interfaces. I can
imagine a project to refactor these programs to a common GUI standard, but they are each well-established in a small
design community of their own, so it isn’t clear how popular such a project would be.
Shop drawings for mechanical projects can be created in 2D using programs like QCAD or PythonCAD, and indeed,
this is how things were once done in the manufacturing industry, although it’s easy to see that relying on this leaves us
decades behind the commercial proprietary design world.

particularly popular with the manufacturing industry (who compatibility, but it’s a definite start at liberating the STEP
are the customers of those vendors of course, and would standard.
stand to benefit considerably from a free-licensed CAD so-
lution), nor apparently with the ISO standards developers
with whom I corresponded in preparing this article. [17] Figure 4: Liberating STEP. The STEP standard could be “liber-
ated” using the mapping tools from the Step Modularization project
So, if you look closely enough, you will find that a free- to convert Express schemas to an XML format. Once converted
licensed open-source standard is there, in the form of the to XML, there’s a wide range of object-mapping tools for different
Express schema listings for STEP which are available freely languages, including Python. It won’t be a unique mapping, as it
(they are explicitly copyright disclaimed by the ISO, which will also depend on the translation tools used, so it will probably
be desireable to standardize on a toolchain after testing the alterna-
means they are essentially subject to public domain rules tives, and provide free documentation for the XML-based derived
[18]). If you regard the ISO “source” documents as docu- standard
mentation, which is really what they are, and the Express
listings as the true source, then STEP can at least unoffi-
cially be used as a free format.
There are already two important sites dedicated to this map-
ping of the STEP standard into a free format, including
the NIST’s Step Modularization project [19], now hosted
at Sourceforge, which provides an Express-to-XML trans-
lator, and the Engineering Exchange for Free (EXFF) site
[20], which contains a number of useful resources for STEP.
Combined with the free Express listings defining STEP,
it’s therefore possible to map the standard first from Ex-
press to XML, and then from XML to a variety of object-
oriented programming languages, by using existing XML-
to-object mapping libraries, available for popular free soft-
ware programming languages, such as C, C++, and Python.
Clearly, the wide range of alternatives in this mapping pro-
cess means that there will be some issues with assuring

56 Free Software Magazine Issue 10, January/February 2006


MIND SET

There’s also a library called OpenCascade [21] based on the Controller (graphical user interfaces)
SDAI C++ implementation of STEP, but despite the name,
this package is “non-free”. Free software developers who Given that the concept here is for a fully internet-connected
want to base their work on an SDAI implementation would collaborative CAD system appropriate for free-licensed de-
do better to go back to the original NIST C++ implementa- sign projects, a very attractive idea is to integrate it with
tion [22], which is “copyright free” (produced by the US cross-platform browser technology. This would mean using
government). Mozilla’s XPFE system, and therefore XUL for the GUI en-
vironment. The biggest drawback to this has hitherto been
Less expensive electronic forms of the complete ISO
the limitation to Javascript as a GUI scripting language,
“source documents” may become available in the future,
which is less than ideal for a project of this type. By the
but there is no plan to make them freely distributable, as
time you read this, however, XUL will likely support Python
far as I have been able to ascertain. Working from the freely
bindings, so this problem is being resolved [26]. This would
available documents to create a “liberated” CAD standard
have the further advantage of easing integration with other
is probably the best strategy.
out of channel communications such as email, web forums,
and chat systems, in addition to the formal markup and re-
View (3D rendering) view process that must be intrinsic to a collaborative CAD
system.
At the most basic level, of course, are fast 3D rendering The design of the GUI, both as a skin style and as a guide
libraries and hardware, such as Open GL, but these are pri- to organization would do very well to follow Blender’s lead.
marily for interfacing with (or emulating) hardware, and so Although Blender’s non-standard GUI is often criticized by
are really more primitive than we want. Fortunately, many newcomers, it is much loved by the people who use it daily.
3D rendering libraries have been built on top of these stan- It is highly optimized for efficient use in 3D modelling ap-
dards, primarily driven by game and computer animation plications by people who use it a lot. That makes it an excel-
applications. lent choice for a 3D CAD GUI as well. Although using the
Some of the more prominent free-licensed 3D rendering li- Blender interface itself (rather than emulating it with XUL,
braries that exist include: Crystalspace [23] (written in C++, for example) is an attractive option, it has some technical
mainly to support massively-multiplayer online games), obstacles: Blender isn’t really factored into an MVC model.
Soya 3D [24] (written in Python and Pyrex, also mainly for And, although there’s some developer interest in this, it isn’t
games), and Blender [25] (written in C, mainly for commer- a priority for Blender developers, who are focused on the
cial computer animation applications). All are under suit- core tasks of artistic 3D modelling and animation.
able free licenses (GPL).
Other GUI options include the usual suspects, such as
Crystalspace and Blender are both primarily frameworks, PyGTK, Qt, and wx.
which embed a Python interpreter; while Soya 3D is a
python module library. The latter is better from the point
of view of embedding the viewer as a major component, es- Design concepts
pecially if the integration language will be Python. Blender
also has embeddable builds: a game engine and a browser There are obviously many, many different ways in which
plugin, that might be investigated as options for a more pure these components could be assembled to create a function-
“view” component. ing, network collaborative 3D CAD/CAM system. Using
In fact, though, the “impurity” of Blender as both “view” Python as an integration language (as I have chosen to do for
and “controller” may be an advantage, since there is already the server side on the Narya project), one could use ZODB
excellent control for viewing or browsing a 3D model at var- [27] as an object model, deriving the schema from the ex-
ious detail levels. This is a large part of what one would press schemas for STEP via the Step Mod package. Then
hope to gain by using Blender, so it’s worth considering one could, for example create a Mozilla-based design using
abandoning the MVC model for this more complete system. the new Python bindings for XUL and integrate with a cus-

Free Software Magazine Issue 10, January/February 2006 57


MIND SET

Figure 5: Ideal MVC design. Ideal MVC designed CAD sys- Sometimes you need a cathedral after all
tem elements. The purist approach to the CAD system would be
to create separate model, view, and controller components (in a re-
Sophisticated 3D graphics and design modelling software
ally ideal case, each would be pluggable, allowing for a variety of is no picnic to write. This is one of those big, complex,
separate but compatible tools to coexist, but I’ll be happy with just highly-interdependent problems at which “cathedral” engi-
one of each). This approach is the soundest for development from neering seems to excel, and on which “bazaar” development
scratch (or even nearly from scratch)
frequently stumbles. The many half-finished projects in this
area attests to this point. It will be necessary to create a suc-
cessful prototype of the core of such a system before it can
be built on and extended by a bazaar community. That pro-
totype will require a lot of “up front design” contrary to the
new conventional wisdom of “extreme programming”.
Machines in general are complex, tightly-coupled systems,
so it shouldn’t come as a surprise that the mathematical
models of mechanical systems are also complex and tightly-
coupled, nor that the CAD/CAM software systems that ma-
nipulate those models need to be.
Fortunately, there is strong reason to believe a free software
CAD system could be developed commercially. CAD sys-
tems are high-buy-in software, not unlike web servers, soft-
ware compiler and library toolkits, or data reduction and
analysis systems. They are primarily used within organiza-
tions which rely heavily on them working without a hitch.
This means there is a substantial motivation for those or-

Too many cooks

tom build of Blender based on the game engine or plugin


In researching this article, I found nearly a dozen dif-
versions.
ferent initiatives to create free software CAD/CAM sys-
Or one could abandon pure MVC design, and build the sys- tems, started by different people, and ranging widely in
tem entirely within the Blender Python API. Since Blender’s success. None of them was on the scale of the need ex-
internal model lacks features of the STEP model, and there pressed in this article, but they make a clear case that
is not likely to be a round-trip guaranteed set of transfor- such software is wanted, and there are people willing to
mations between the two, it is likely that it would be nec- do work on it. Also, few projects referenced the others,
essary to maintain two parallel models—a “representation which suggests a lack of communication and organiza-
model” within Blender, used for visualization, and a “de- tion.
sign model” within the CAD database, which is the true I know that I don’t really have the resources to pur-
“original”. A transformation would be provided to render sue a CAD programming project myself (unless through
the design to representation in order to display it. Tweaks to some form of commercial collaboration), but what I cer-
the Blender source code (in C) would probably be needed to tainly can do is provide a resource Wiki to keep track of
provide CAD objects with callbacks that could be handled other people’s projects. Please have a look (http://
by Python callbacks acting on the design model (otherwise, client.narya.net/Wiki/CadSystems), and
the representation model could drift away from the design help me update the site with any additional projects that
model whenever non-CAD operations were performed on you know about. Maybe if the information is collected
it, causing a synchronization problem and a lot of user con- in one place, a solution will present itself.
fusion).

58 Free Software Magazine Issue 10, January/February 2006


MIND SET

ganizations to pay for maintenance and support contracts, Figure 6: CAD visualization. Model of hardware for the NASA
and therefore a Cygnus Solutions [28] or Zope Corporation “return to the moon” initiative. Visions of space frontier technology
[29] business model (free-license the software, but charge have relied extensively on CAD and 3D models, to the point that
for support services) would seem to be viable. people expect to see such images before they take a technological
idea seriously. It is far too much of a disadvantage for free de-
Free software tools and free data exchange formats are in signs to either reject 3D CAD or use proprietary 3D CAD systems.
Blender can already create scenes like this, but without the technical
the interest of the majority of the manufacturing industry,
data model to back it up (Image credit NASA/John Frassanito and
as demonstrated by initiatives such as EXFF. Thus we can Associates)
expect to see cooperation and support from the end users
of CAD once a serious effort is made to implement it, even
though we’ll also see competition from existing vendors of
proprietary CAD systems, such as AutoDesk, and free soft-
ware will still have to prove itself to a new set of users.
The real challenge is getting started. Cygnus started out
supporting GNU software that already existed and was de-
veloped for quite different reasons, while Zope Corporation
(then called Digital Creations) originally developed their
product on a proprietary basis. It was only after these soft-
ware products already existed and were relatively mature
that these businesses made the decision to make support
contracts their primary source of income. I’m not aware
of an example where such a complex piece of software was
developed by a company planning to release it for free and
support it commercially.
---------------------------------------
This is an area where a free software
CAD system could not only match the
Planning for the future
proprietary competition, but leave it in
the dust
Although free design is already beginning to be done in lim- ---------------------------------------
ited domains now, the availability of better design authoring
tools to a wider range of potential developers is needed to This is an area where a free software CAD system could
spur an explosion of interest in bazaar model development not only match the proprietary competition, but leave it in
of hardware. Nowhere is this gap more severe than in the the dust—simply by leveraging the many years of experi-
area of 3D mechanical CAD/CAM, which is extremely im- ence in building collaborative, internet-based systems that
portant for the kinds of aerospace and mechanical engineer- are the legacy of free software developers worldwide. A
ing that will be called for in the development of hardware true free software, general purpose, collaborative 3D me-
that will be required by space pioneers as they attempt to chanical CAD/CAM system won’t be simply as good as the
settle and build using the materials they find in their new en- proprietary alternatives, it will likely be better than anything
vironment. If we want to follow a free development model else on the market.
with all the advantages it implies, we’ll need this kind of
software to be created, and there is reason to believe that it Bibliography
can be profitable as well as widely useful to develop it, al-
though it will require a fair amount of entrepreneurial vision [1] Richard Stallman. The GNU Project (http://www.
to make that happen. gnu.org/gnu/thegnuproject.html).

Free Software Magazine Issue 10, January/February 2006 59


MIND SET

[2] Forrest J. Cavalier, III. Some Implications of Bazaar Size [19] STEP Modularization Project (http://stepmod.
(http://www.mibsoftware.com/bazdev/), 1998. sourceforge.net/).

[3] KDE Documentation (http://docs.kde.org/). [20] EXFF (http://exff.org/).


[4] Skencil Development Guide (http://www. [21] OpenCascade (http://www.opencascade.
nongnu.org/skencil/Doc/devguide.html). org/) (non-free).
[5] Blender Documentation (http://www.blender. [22] NIST SDAI C++ Library (http://www.mel.
org/modules/documentation/). nist.gov/msidstaff/sauder/SCL.htm) (free-
[6] xcircuit (http://opencircuitdesign.com/ licensed).
xcircuit/). [23] Crystalspace (http://www.crystalspace3d.
[7] pcb (http://pcb.sourceforge.net/). org/).

[8] QCAD (http://www.ribbonsoft.com/qcad. [24] Soya 3D (http://gna.org/projects/soya).


html).
[25] Blender (http://www.blender.org).
[9] GNU EDA (http://www.geda.seul.org/).
[26] Brendan Eich Python for XUL scripting
[10] AutoCAD (http://en.wikipedia.org/ (http://weblogs.mozillazine.org/roadmap/
wiki/AutoCAD). archives/008865.html), 2005.

[11] Michael Brundage, Network Places (http://www. [27] Using ZODB Standalone. (http://www.zope.
qbrundage.com/np/index.html). org/Wikis/ZODB/FrontPage).
[12] Price estimated from CDW Catalog (http://www. [28] Cygnus Solutions (http://en.wikipedia.
cdw.com), August 2005. org/wiki/Cygnus Solutions).
[13] Model View Controller (http://en.wikipedia. [29] Steve Litt. Zope Corporation/Digital Creations
org/wiki/Model view controller) Definition. (http://www.troubleshooters.com/tpromag/
[14] Terry Hancock. Praise for Python (http: 199906/ digcreate.htm), 1999.
//blog.freesoftwaremagazine.com/users/
t.hancock/2005/11/11/praise for python), Copyright information
2005.
c 2005 Terry Hancock
[15] STEP / ISO 10303 (http://www.tc184-sc4.
This article is made available under the “Attribution-
org/SC4%5FOpen/SC4%5FWork%5FProducts%
Share-alike” Creative Commons License 2.0 available
5FDocuments/STEP (10303)).
from http://creativecommons.org/licenses/by-sa/2.0/
[16] ISO Restricted Documents Notice (http: (http://creativecommons.org/licenses/
//www.tc184-sc4.org/Notices/Authorized% by-sa/2.0/).
5FUsers%2DPadlocked%5FDocuments/).
About the author
[17] Howard Mason, Chair, ISO TC 184/SC4. Private com-
munication. Terry Hancock is co-owner and technical of-
ficer of Anansi Spaceworks (http://www.
[18] Express Listings (http://www.tc184-sc4. anansispaceworks.com), dedicated to the
org/SC4%5FOpen/SC4%5FWork%5FProducts% application of free software methods to the develop-
5FDocuments/STEP%5F%2810303%29/) (Search ment of space.
each block for “schema”).

60 Free Software Magazine Issue 10, January/February 2006


Free software liberates
Venezuela

The free software revolution comes to Venezuela

David Sugar

he third International Forum on Free Knowl- los Gentile who personally asked me to attend. And finally,

T edge brought together many groups and indi-


viduals interested in the development of free
software worldwide to the city of Maracaibo.
One reason Venezuela choose to host this event is because
starting in January (2006), their new free software law, di-
I have always been immensely curious about Venezuela.
While there, I had the extremely lucky chance to speak with
directors in many of the organizations charged with carrying
out Chavez’s vision of a “Bolivarian Revolution”.
While my travel had been planned a number of weeks in ad-
rective 3.390, comes into effect, which mandates all govern- vance, as with all travel I have experienced in Latin Amer-
ment agencies to migrate to free software over a two year ica, this turned out to be on a different concept of time. I
period. I was invited to speak about Telephonia Libre: the didn’t hear back at all from Venezuela until the weekend be-
use of free software in telecommunications. fore departure, but this is actually not that remarkable. By
--------------------------------------- Monday the 21st of November, I knew I’d arrive in Mara-
Directive 3.390 mandates all
government agencies to migrate to free
software over a two year period Map of Venezuela
---------------------------------------

While I am invited to speak at many events and conferences


worldwide, most often I reject them immediately because
they’re not open to the general public. This is one of the
reasons I rarely speak in the U.S.—virtually all U.S. scien-
tific conferences in my field are for profit and are organized
by groups who charge fees so high that it discourages the
general public from participating, or they are organized for
the benefit of commercial vendors who are trying to market
themselves to potential customers. Science Fiction conven-
tions actually would be closer to my choice of U.S. venue,
although I don’t seem to get invited to those.
I accepted this invitation for several reasons; first, it was
open and free to the general public. Second, it was Juan Car-

Free Software Magazine Issue 10, January/February 2006 61


MIND SET

caibo the next day, and return on the 29th. That much was bian Venezuela group, were my primary “translation team”
confirmed to me by Ambar Rodriguez, who works for Cona- whenever I spoke with others who didn’t speak English.
tel, which is their state telephone regulatory agency. I had a
chance to speak with Ambar over the weekend, but I didn’t The People’s Ministry of Economics
know which airport I would departing from, or even what
airlines I’d be flying, until Monday morning. Venezuela is blessed with not one, but two economic min-
To understand the blissful attitude I had taken, you have to istries. There is the old ministry of economics, which deals
understand this: I recall one time I was staying with a fam- with the traditional capitalist economy. It is worth noting
ily in San Paulo, where we were scheduled to take a flight that capitalism continues in Venezuela and will likely con-
to Porto Alegre. The airport was across town, and our de- tinue to do so for some time. While lands are at times re-
parture time was about half an hour away when we finally distributed to landless laborers, for the most part existing
wandered out to the car. We didn’t even travel in much of a industries and businesses are left alone, and left to the old
hurry. Yet, somehow, in the twisted and bizarre time warp ministry of economics. Instead, they have a different idea
that is Brazil, we arrived on time for our flight anyway, and of how to transform society here, and this brings me to the
I never quite figured that out either. Time often has a very second ministry.
different meaning in Latin America. The Ministerio Para La Economia Popular, or roughly, the
--------------------------------------- People’s Economic Ministry (and for simplicity, to be re-
ferred to simply as Minep) is tasked with transforming
Samán proposes that the mission of
Venezuela with a new economy. While the ministry does
SAPI should instead become that of
a number of important tasks, I believe their most interesting
promoting “Intellectual Prosperity” by is to train and educate ordinary Venezuelans, who volun-
creating laws and services that promote teer on how to run a worker co-operative. This is done by
the ability to share knowledge as the providing co-ops the tools, financing, and practical training
common heritage of all mankind they need to operate their new enterprises.
--------------------------------------- My interest in this aspect of Minep came in part from their
interest in providing VOIP services along with the comput-
Many of the events and presentations at the event were, ers they are offering to their worker managed co-ops. This
much like mine, of a rather technical nature. My presen- was a rather specific technical issue, and one they were very
tation caused some difficulty for the translator I was given, interested in discussing with me.
who had no experience or understanding of the specialized Many of these worker co-ops are composed of very small
technical terms I was using. This was only corrected near startups that typically have 10 people or less. Minep offers
the end when a different person came forward to translate training and support, as well as financing, to allow co-ops to
my speech. Some presentations were from groups who were purchase computing systems for their business needs. These
using free software in some social setting. The event was systems are now offered entirely with free software, starting
heavily attended by many people, and particular technical with the Debian GNU/Linux operating system, along with
directors from many key parts of the Venezuelan govern- Open Office for general business use, and web hosting under
ment, because of their migration plans for 2006. Apache. Co-ops that go through the Minep program also
I eventually meet up with Jeff Zucker from Perl Mongers, have the ability to host web sites with their own content,
who traveled by bus from Caracas and the well known in- and these usually feature the products or services a given
ternational free software activist, Juan Carlos Gentile, who co-op wishes to offer. Co-ops are also trained in the use of
drove all the way from Caracas along the same roads with the free software they receive and in how to maintain their
Marko, who is also from Italy. While it is said to take own IT infrastructure.
ten hours to drive from Caracas to Maracaibo, as he and The Minep co-op training program was piloted in 2004,
Marko are Italian, naturally I expected he would arrive in with some 3000 such worker managed co-ops formed. Dur-
only five. These three, and Ana Isabel Delgato from the De- ing this year (2005) they have formed over 45,000 such co-

62 Free Software Magazine Issue 10, January/February 2006


MIND SET

ops nationwide, and are expecting to train over 700,000 “Intellectual Property”
Venezuelans in how to form and be part of a new econ-
omy. This suggests to me that perhaps 40% of those that The term intellectual property itself is of course a new-
go through the Minep program eventually do form a com- speak propaganda word that didn’t even exist 20 years
mercial enterprise. ago. First, the topic it covers varies from Copyrights,
--------------------------------------- Patents, Trade Secrets and Trademarks, to a variety of
other things, all of which are in reality all very different
The Venezuelan revolution is perhaps
and unrelated. Second, it’s based on the premise that
the first revolution in history saved by
you can give something intangible to someone else, and
computer hackers
yet control it and decide what other people do with it,
---------------------------------------
as if it or they (and even the ideas they may have about
The use of free software and offering of computer systems it) were your physical property. Intellectual property
for business use as part of the co-op program is actually rel- amounts in part to thought control through legal fiction.
atively new. I believe, if I understood correctly, the full ver- Some even say it amounts to Intellectual Slavery.
sion of free software training program is a 6 month course, The consequence of treating ideas and thoughts as if
and so is rather comprehensive. This year (2005), they’ve they are tangible property is the very destruction of sci-
only trained people from at most a few thousand of the co- ence and education and the elimination of individual
ops on the use of free software through the initial pilot pro- rights and freedoms. Science is in part built upon the
gram. In 2006, however, that program, and free software idea that new knowledge is created by incrementally
training should be available to all interested. improving ideas. Education is based on the idea that
one can learn from existing things and then use that
knowledge to create new works. The idea behind “Intel-
The Ministry of Intellectual Prosperity
lectual Property” interferes with both. It is barbarism,
SAPI, the Independent Service ministry of Propiedad In- and could well lead to a new “dark ages”, where only a
tellectual, is the ministry that used to define Venezuela’s privileged few are allowed to learn, under the exclusive
so called “Intellectual Property” laws. I understand SAPI control of greedy intellectual monopolies.
also at one time concerned itself with the issue of what was Since “Intellectual Property” involves exclusive licens-
called “Piracy”. I would have thought, however, that con- ing, when public universities do this and then let oth-
trolling murderous gangs of anarco-capitalist “gentlemen of ers license their discoveries, the public is made to fund
fortune” who raid ships, would be the job of the navy, or research that only benefits a small number of people.
perhaps the interior ministry. Even worse, those companies which receive such fund-
I had the good fortune to meet the current director general ing can then use this exclusive grant to sell back to so-
of SAPI, Eduardo Samán, while I was in Maracaibo. He ciety the fruits of what society already paid for. This
has very different ideas for the purpose of SAPI. He is a can be thought of as paying for something twice. This
well known internationalist, and had been a key person in could also be thought of as public welfare for private
establishing the program for promoting a developing na- corporations, or more simply: exploitation.
tions agenda within WIPO. Rather than creating new in-
tellectual restrictions, Samán proposes that the mission of
like Venezuela will become the new leading nations in sci-
SAPI should instead become that of promoting “Intellectual
ence and technology.
Prosperity” by creating laws and services that promote the
ability to share knowledge as the common heritage of all
mankind. How oil fuels the Bolivarian Revolution
Assuming that private corporate interests in the developed
world today do succeed in the great program of owning what Maracaibo is also the heartland of the oil industry, and the
people are allowed to think, it is very possible that places state run oil company, PDVSA. Oil companies are also tra-

Free Software Magazine Issue 10, January/February 2006 63


MIND SET

ditionally conservative in nature. However, PDVSA also is ply making the country’s wealthy even wealthier. Many of
a contrast, as both the primary wealth producing institution Venezuela’s wealthier citizens, used to having money from
in the country, and the strongest source of support for Pres- the state oil company, would not tolerate this, and so they
ident Hugo Chavez’s revolutionary changes. decided President Hugo Chavez had to go at any cost, even
I met a number of PDVSA oil workers, who seemed well if it meant sabotaging their own nation to do it.
represented among the ranks of PDVSA management. I also So they tried to close the oil company in December of 2002,
had the chance to talk over lunch with one of their directors, by locking out the workers, holding the oil resources of the
Socorro Hernendez, as well as Jose Luis Rey, whose renoun nation as a whole hostage, and by having the entire IT in-
is both as a skilled hacker and financial genius who was frastructure under their control. If the data and systems
involved in helping rebuild the financial trading systems that present then had been destroyed, it would have been years
were sabotaged in 2003. before another drop of oil could have been produced.
Today, the state-run oil company is a major backer of the Out of 4800 managers, about 200 chose to stay behind, and
free software movement (software libre) in Venezuela and together, with the help of many by then retired former man-
is a major sponsor of the 3rd International Forum on Free agers who were less corrupt than the ones who left, the
Knowledge, which is what brought me to Maracaibo. Every workers tried to save the oil company. But the biggest chal-
question related to the use of free software in Venezuela, lenge was the computer infrastructure.
and to how the Bolivarian revolution started, seems to come Management of IT was at the time contracted to SAIC,
back to PDVSA and the worker oil lockout in 2002. (Science Applications International Corp), which has well
known political and business connections to Cheney’s of-
A little history. . . fice, to the U.S. DOD, and the CIA. At first, when the
Venezuelan army was called out to secure the oil facili-
Before the worker lockout, the administration of the state
ties during the lockout, the SAIC staff created videos of
oil company was strongly connected to the wealthy elite of
the troops securing the facilities in an attempt to claim they
Venezuela. Many of the wealthiest people in Venezuela had
were under attack and tried to persuade the U.S. congress
been getting much richer thanks to the oil company, in part
to give Bush war powers to seize the oil fields. When
through contracts and corruption, not unlike what has been
this scheme failed, the SAIC workers fled the country, but
happening here in the U.S. with politically connected com-
changed all the passwords and kept remote control of all
panies like Halliburton.
of the computer servers of PDVSA. They choose not to de-
President Hugo Chavez was originally elected on a platform
stroy the data on them because they thought they’d be back
to use the oil wealth to help pay for the poor of the coun-
in a few months once the government of President Chavez
try through education and health programs, rather than sim-
finally capitulated.
Much of the infrastructure of PDVSA was under Microsoft
Hugo Chavez Windows-based servers, and used proprietary database soft-
ware such as Microsoft SQL. The IT managers didn’t expect
a bunch of oil workers to be capable of thwarting their plans.
Those same oil workers, working together with local com-
puter hackers, were able to secure control of vital computer
servers, and in doing so saved the oil infrastructure.
The Venezuelan revolution is perhaps the first revolution in
history saved by computer hackers and this is one of the rea-
sons the government is so very strong on promoting the use
of free software, particularly in public administration. The
Venezuelan government wishes never again to have vital in-
frastructure held hostage or sabotaged by agents of foreign
nations. This cannot be accomplished by source secret pro-

64 Free Software Magazine Issue 10, January/February 2006


MIND SET

Conatel Telecenter of Chavez, or military checkpoints promised by the state


department, what is worth noting is the rather ordinary way
society and most institutions operate in Venezuela.
One interesting program is run by Conatel, Venezuela’s tele-
com regulatory agency, which now runs a program to deploy
telecenters into communities around the country. Conatel is
a regulatory agency for the telephone and broadcast services
in a manner akin to the FCC in the United States. However,
in this instance, Contatel also runs a community telecenter
project in order to bring computing and telephone resources
directly to communities across the nation. There are other
similar programs running in various Latin American nations
prietary software, such as Microsoft Windows, with its infa- today.
mous backdoor NSA key. Even proprietary software from a I actually saw the model Venezuelian telecenter at the Cona-
trustworthy source has to be suspect for possible tampering, tel building while I was in Caracas. A typical community
and so must be rejected, not just by Venezuela, but by any telecenter comes with up to a dozen PC workstations, and
nation that wishes to protect and maintain its sovereignty a server. Connectivity is offered through a telecom carrier
against sabotage. for both internet data and for voice. These systems entirely
use free software, and each telecenter includes a staff of two
Back to the present. . . people.
One of the people is trained to manage and teach how to use
Everyone I had met from PDVSA appears completely the computers and resources of the telecenter, and charged
committed at all levels to the basic idea of converting with maintaining the equipment. The second person is
Venezuela’s oil resources into long-term and self-sustaining someone trained in the social needs of a given community.
wealth for the nation as a whole. This is done in part through For example, for a telecenter that is deployed in an agri-
the development of a new economy, as planned for through cultural town, the second person would likely be someone
Minep. who was educated in agriculture. In a mining town, it would
Capturing this wealth is viewed as an urgent matter because, likely be a miner.
even though Venezuela posses one of the largest known re- Each telecenter desktop PC runs Debian GNU/Linux, and
serves of oil, they expect world oil production to begin de- includes software for internet browsing, for performing rou-
clining and see this wealth as very temporary. Socorro Her- tine work such as Open Office, and includes a camera along
nendez said PDVSA believes that nobody will “burn” oil with GNOME Meeting for voice and video conferencing.
(as for example in automobiles) in as little as 20 years. He The telecenters also have VOIP telephones that are made in
also said they believe that, while oil will remain important China and that load an embedded Linux.
to the multitude of other industries in which it is used, the Many carriers in Venezuela offer direct H.323 connectiv-
price will settle to $5 a barrel, so now is not only the best, ity for VOIP, and presumably, like Deutsch Telecom, more
but also the last, chance to create something useful from this than likely use GNU GateKeeper to form their mesh net-
wealth. work. The client workstations use GNOME Meeting, which
is an H.323 client, and even the telephone instruments use
Conatel and Conclusions H.323. No doubt, it would bring a tear to the eyes of Craig
Southern, who heads the OpenH323 project, to know that
I flew from Maracaibo to Caracas on November 26th. Even there is a complete end-to-end national H.323 network in
in Venezuela’s revolutionary republic, custom officials are Venezuela, running the OpenH323 project stack, from the
still custom officials, and airports are still like airports ev- national carrier down to the individual telephone instru-
erywhere. Given the lack of revolutionary posters, pictures ments.

Free Software Magazine Issue 10, January/February 2006 65


MIND SET

I believe telecenters are or will be the public libraries of Copyright information


the new millennium. Unfortunately, most existing libraries
elsewhere in the world today, while often they include com- c 2005 David Sugar.
puters, don’t understand how they should be used. For ex- Verbatim copying and distribution of this entire article is
ample, many libraries in the U.S. have computers, but they permitted in any medium without royalty provided this no-
are really only used for web browsing, and come “attached” tice is preserved.
with nutty politicians more deeply concerned about library
patrons potentially reading about sex rather than about the
laws that require library content to be filtered for this reason.
All these things began with the oil worker lockout. Rather
than bringing down the government of Hugo Chavez, by
working together with foreign interests to directly sabo-
tage the country’s most vital industry, the wealthy elite of
About the author
Venezuela radicalized the oil workers in a way that no other
action could. The workers of PDVSA are now fully com- David Sugar is an active maintainer for a number of
mitted to creating the new economy, and will remain so re- packages that are part of the GNU project, including
gardless of who is in power. When the rich of Venezuela GNU Bayonne. He has served as the voluntary chair-
ponder who it was that made Venezuela become a revolu- man of the FSF’s DotGNU (http://www.dotgnu.
tionary nation, they shouldn’t look at President Chavez, who org) steering committee, as a founder and CTO for
may not have even been thinking of this at the time, and cer- Open Source Telecomm Corporation, and currently
tainly had no means to accomplish it if he had; instead, they owns and operates Tycho Softworks.
should look in the mirror.

S-ar putea să vă placă și