In the server market, Linux and Microsoft were supposed to
be mauling each other like jackals by now. Instead they are
contentedly polishing off the bison of Solaris, IRIX, and
other proprietary Unix server software. Linux and Microsoft
Windows have both grown in the server market–Windows faster
than Linux.

Linux on the desktop is a similarly confusing story. A

conference on desktop Linux
,
the first of its kind, was held in the Boston, Massachusetts
area on November 10. The forum allowed the leaders of Linux
and free software development to evaluate the progress these
have made on the desktop.

Linux as an end-user system is at an early stage, but
inroads are impressive. One statistic puts annual growth of
Linux on the desktop at 44%. It is already in heavy use as a
limited, kiosk type of application (point-of-sale terminals,
for instance) and as a technical workstation. More general
use is expected to come within the next couple years.

By now, free software office utilities are perfectly
satisfactory and largely compatible with Microsoft Office;
if they lack certain features of Office, they also lack
certain bugs, and compensate with their own features and
bugs. A sizeable base of knowledgeable administrators has
emerged. And installation shouldn’t be such a big issue.
Windows installation can be hard too, and people often turn
to professionals for installation.

So why hasn’t Linux made big inroads yet among ordinary
computer users? Let’s look at a few theories–two that are
relatively commonplace, and one of my own.

The first theory is that Linux’s advantages will eventually
overcome corporate and government conservatism. A roadmap
was even laid out in the Desktop Linux Conference (described
in my

weblog from the conference
).
In fact, the tipping point could be so near that we may all
soon be laughing about the time we were worried about
Linux’s difficulties. Japan and China, combining one of the
world’s most important established economies with one of its
most important emerging ones, are pouring huge amounts of
money into Linux. IBM is no slouch either. People are
getting it: Linux is a solution to many current computing
ills.

A second possibility is that Linux may not catch on at all
for Mr. and Ms. Average Schmo, at least not for the
foreseeable future. But is that so important? Linux could
meanwhile become dominant for servers, embedded systems, and
kiosks. It could also reach the Average Schmos on large
organizational networks using
Linux Terminal Server Project.

But we should also consider a third theory. Nat Friedman of
Ximian (now Novell) explained at the Desktop Linux
conference that the highest barrier to Linux adoption is the
cost of rewriting applications. This was the conclusion of a
consulting firm brought in by the city of Munich to
determine whether it should replace Windows with Linux. The
consulting firm warned that application migration costs
would override the savings in licensing fees, and Microsoft
came in with a stunningly low counter-offer. Munich decided
to move to Linux anyway, for strategic reasons. But it’s a
hard decision to make.

Friedman and the Munich consulting firm were not the only
ones to point this out. Back in September, the well-known
consulting firm Gartner reportedly told companies that it
would cost them money to move to Linux–precisely because
they’d have to rewrite their applications. For desktop
users,

“migration costs will be very high because all Windows
applications must be replaced or rewritten.”

And this is the same Gartner that had warned companies to
get off of Microsoft Windows because of security flaws!
(Before Gates and Ballmer started to make grand promises
about putting security at the top of their priorities.)
Despite Linux’s advantages in the areas of licensing,
stability, and openness, Gartner believes companies would
lose money by switching.

Another
article
is more hopeful but suggests that it would take five years
to see financial benefits after a switch from Windows to Linux.

And that leads me to my theory.

For Linux to reach the ordinary user, it has to offer more
than good office suites and The Gimp and other free software
implementations of common applications. Most people won’t
make the move just so they can keep doing what they did
before. Security and freedom mean a lot to a few of us, but
they are not enough incentive for the vast range of Average
Schmos. And we need those Average Schmos; the median is the
message.

People will move because they feel forced to–because there
is an entirely new way of working that the old system cannot
offer, and the new system can. It must be a shift that
sweeps up millions of adherents and becomes a perceived
necessity.

Historically, graphical user interfaces were just such an
innovation (although if you were around when they first came
in, you might remember how many ordinary people stubbornly
stuck to their old command or full-screen utilities for
years). The Internet was another: Microsoft, AOL, and others
had to really scramble to avoid being swept into the dustbin
by it.

No single new application is enough to cause a switch.
Microsoft is perfectly capable of writing applications, so
if somebody thinks up a neat utility on Linux, people will
soon get something like it on Windows. What we’re talking
about is a new paradigm (pardon that word); a whole shift as
big as GUIs and Internet use. What could it be?

Let me break my chain of reasoning here to point out that
Microsoft itself is not afraid of changing the way people
use computers. It’s forging ahead with initiatives such as
Longhorn and SharePoint which, if they live up to the hype,
will put people in new relationships with their data and
with each other. Microsoft has put tremendous energy into
separating data from presentation and creating frictionless
chutes that carry the data from database to office
application to Web page with minimal user intervention.

As usual, one can get snowed when presented with Microsoft’s
lists of audacious upgrade features. But what emerges for
me, as the basic Microsoft vision for the computing future,
is an impressive pervasiveness of data–data that can
instantly be viewed and tabulated by anyone who wants it
using the most convenient tool at hand, without fussing over
conversions and conscious transmission from place to place.

Microsoft is not stuck in the past; they’re pulling as hard
as they can to move their users to these upcoming
innovations–trying to make them seem indispensable to
staying competitive–because otherwise the company will have
to stand by and watch the hose that gushes license fees
gradually diminish to a trickle over the next couple years.
No, Microsoft is pushing ahead. If any developers are stuck
in the past, it’s the free software programmers diligently
recreating what’s been done before.

But the kink in Microsoft’s hose is that its business plan
is a plan for business, not for end users. On the whole,
Microsoft’s initiatives revolve around corporate data use,
and depend on adoption by corporations. And corporations
are naturally conservative. They’re afraid, for instance,
that the grand SharePoint achievement of integrating office
applications and corporate servers will lead to more bugs
and security problems with both. They’re not likely to
budge.

Individual users, by contrast, are not conservative. History
has shown them to be, if anything, quite reckless. Look at
what hordes of ordinary people did when they get their hands
on Web server software in the early 1990s. Look at the
current popularity of instant messaging, and now SMS, both
of which started as novelties. Look at the millions who
signed up for the original Napster, and then slid over
comfortably to current peer-to-peer systems.

So Linux has a natural user base it can appeal to. The very
people advocates are trying to reach–individuals at home
and in school–are the people likely to drive radical
innovation in computing.

The area where Linux excels is services. Apache, Samba,
MySQL, and mail transfer agents are practically household
words thanks to Linux (although of course they run on many
other systems too, and are found on Windows more often than
people give credit for). Anything that you need to do that
requires running a service benefits from the
state-of-the-art network stack and security offered by
Linux. This includes peer-to-peer applications, as I
explained in a
talk
I gave back in 2002.

What’s the advantage of running an application as a
continuous, background service? Many find it hard to
remember, because the division between server and client has
become so commonplace (and the second-class citizenship of
the Average Schmo, exiled to the client side, has been
enforced for so long). Advantages include:

  1. You’re more in charge of your own data. You don’t have
    transmit it to some remote system under somebody else’s
    bailiwick or beg for someone to put it up for you before
    others can access it. Immediacy opens up whole new
    dimensions, such as the ability to provide dynamic,
    instantly customized content.

  2. You’re more in charge of your own processing. You can choose
    when to process information in tiny chunks and when to
    postpone processing and do it in batches. You can choke off
    access or open up new threads to accommodate more. The
    simple, synchronous connections clients have may work for
    small amounts of communication, but when you get busy it’s
    critical to have the flexibility of a server.

  3. You’re more likely to be able to support multiple users.
    Many servers recognize the idea of an account and offer
    access controls.

But running a service on your computer is socially
disruptive. It puts control in your hands rather than in a
central professional staff, so it’s suspect in large
organizations. It also bothers Internet providers because
you need potentially more bandwidth, a static IP address,
and perhaps a domain name. But accommodations have been made
for activities as diverse as file-sharing, Web servers, and
chat. The practice may grow, and that’s where the arguments
against migration to Linux break down.

Will the move to desktop Linux take place?