Linux on the Desktop: Making it Happen

21 May 1999
Eric W. Sink
Software Craftsman

My Background

This presentation is not about me or my company. It's about Linux.

Nonetheless, I want you to know where I'm coming from. AbiSource is a young software company. We develop Open Source applications, licensed under the GNU GPL. Our applications are available on multiple platforms, including Linux and Windows.

The first application in our suite (which we'll call AbiSuite) is our word processor, AbiWord. This presentation was written and presented using AbiWord 0.7.0 on my laptop running Red Hat 6.0.

"Linux on the Desktop"

When I say "Linux on the Desktop", I mean Linux in mainstream usage on desktop systems. Servers don't count. Embedded systems don't count. Programmers don't count. I want to see vast numbers of normal people, including consumers, corporate users and educational institutions, using Linux. I want to be able to buy a PC at Best Buy or Wal-Mart with Linux installed.

PCs are currently selling so fast that it's hard to get accurate estimates of how many machines there are in the world. I've heard Bill Gates say that 70 million PCs are sold each year. I think it's quite safe to say that there are over 200 million PCs in use right now. Most of these machines fall in the market segments I'm referring to as "desktop" users. (BTW, in general, desktop software is also laptop software. I don't consider laptop machines to be a separate market segment for the purpose of this discussion.)

The desktop represents the largest market for PC software.

We're *Not* There Yet

The first thing to say about Linux on the desktop is that we're not there yet. Not even close.

Admittedly, there are people who use Linux in desktop situations, including myself. Recent developments, including GNOME and KDE, are promising signs of future success for Linux on the desktop. However, please remember that most people have never heard of Linux.

In general, corporate America does not use Linux in desktop scenarios. Even now, they're barely beginning to use it for servers. If you think that Linux is a success on the desktop, then you're thinking too small.

Let's celebrate our successes, but not exaggerate them. The server is just the beginning.

OK, So How Do We Get There?

I'm presuming that you agree that Linux on the Desktop is a good goal. Not everyone does. I've seen comments from people who value Linux for its obscurity, as if being a Linux user were a membership in a private club for geeks only.

I count myself a geek as well, but reaching the mainstream desktop is the passion of my business, so I've spent a lot of time trying to figure out how to get there.

The first and primary reason is:
The desktop software available for Linux right now is simply not acceptable to the mainstream customer.

Key #1: Create Software for Normal People

The word "normal" is quite subjective, so I'll offer an informal definition we can use for this context. Granted, this class of people is large and diverse, but a few generalizations here won't hurt anyone and they help explain the chasm of differences between normal people and geeks like you and me.

  1. Normal people use their computer as a tool to get something done, not simply for the sake of using a computer.
  2. Normal people generally don't care about software, except when it scares them.
  3. If you have typed "ls -l" anytime in the last month, you are not normal.
  4. Normal people often think that the main problem with Windows 95 is that it is too hard to use. MacOS is a much more friendly system for this class of user.
  5. If you have ever used the middle button on a 3-button mouse, you are not normal.
  6. Normal people find the notion of a double-click to be a nonintuitive.

Building Software for Normal People is Hard

If we want to be serious about Linux on the desktop, it's time to learn how to create software for normal people. However, doing this is harder than you think.

  1. You don't know what they want or need. Most programmers are completely out of touch with the needs and priorities of real users. The features they think are important in an application are almost certainly different than the ones you think are important.

  2. Software for normal people is not cool or exciting. Most users simply don't care about cutting-edge features. Open Source software is built upon a culture of people who build software for fun and enjoyment. Quite often, the fun comes from building things which are new, innovative or unique. Normal people don't want anything innovative because innovation usually arrives in the form of discontinuous innovation. They want something simple and unobtrusive, and they will not risk trading away their comfort in exchange for the possibility of a new feature you think is cool.

  3. You probably don't even like normal people. It's okay to admit it. You probably spend time with people who share your interests. (What geek doesn't like to hang around with Rasterman and hear him talk about the latest features of E which take advantage of that monster hardware on his desk?) It's hard to motivate yourself to write software which is targeted at the needs of someone other than yourself.

Writing software for non-geeks is a special kind of satisfaction all its own. Learn about normal people. Talk to them. Find out what they like and dislike about software.


A lot of people think that Linux will not reach the mass market of normal people until it is as easy to use as Windows. This is not true -- Linux must be easier than Windows. Simply being as easy as Windows will not be enough. (This nifty little idea came from a USENET posting I saw recently, by Brian 'Beej' Hall, ( beej@ecst.csuchico.edu).

So What's Wrong With GNOME?

Nothing. I like GNOME. It's a major step in the right direction, and I use it on my primary machines. The GNOME team has done some very nice work, but in terms of reaching normal people, GNOME simply isn't ready.

As pre-installed with Red Hat Linux 6.0, GNOME contains too many features to be considered approachable by normal people. Furthermore, it hasn't reached the level of polish necessary for a mass market.

When Linux does reach the desktop, GNOME will be an important part of the story that helped it get there. Nonetheless, the desktop appearance and environment are not enough. We need applications.

Key #2: Apps

Normal people use applications. In order to reach the desktop markets, Linux will need to come with a full set of top-quality applications. All of the stuff I said in Key #1 was focused on the nature of software which is friendly to normal people, but this key is about figuring out which software to write for them.

It's absolutely necessary that all of the bread-and-butter applications be available for Linux. I'm probably leaving out something important, but here's a list of the basics:

word processor
personal database
web browser
email client
personal finance package
presentation package

BTW, Key #3: Don't Skimp on Interoperability

Desktop software simply must be compatible with the document formats of the market leading proprietary counterparts. The number one question we hear at trade shows is, "Does AbiWord properly import Word 97 files?"

Regardless of what your application is, if you're competing with an established proprietary offering, you've got to be compatible with that competitor in every way that your users will expect. If you view this feature as optional, your target market will view you as optional.

After We Get All This Coding Done, Then What?

OK -- let's assume for the moment that the Linux community has now solved all of the software problems I've just described. We've got the OS and a complete suite of productivity applications and Internet access tools, and everything is full-featured, high-quality, and easy to use. Are we then ready to complete our conquest and attain world domination?

No way.

Building it will not make them come. Normal people hate change. They don't like to try anything new. It doesn't matter if your technology is ultra-cool and friendly to normal people. They'll still want to know why they should bother to change. They're happy with what they've got. They already went to all the trouble to learn how to use Windows 95. Do you honestly think they want to learn something new? Not a chance.

Key #4: Marketing 101

One of my favorite books is "Crossing the Chasm", by Geoffrey Moore. I highly recommend it. The ideas I'm presenting here are distilled from what I have learned from Moore's excellent writings.

As I said when I started, desktop software is the largest market for PC software. When trying to penetrate this kind of market, it's important to start with a good understanding of how these kinds of markets move.

In classical marketing-speak, the people in a market organize themselves in a bell-curve, with the early adopters at the far left side of the curve and the majority clustered in the middle. This "majority" is the mass market I've been talking about.

(The following graphic was obtained from http://www.sloan.org/scale/links/library/geoghegan/Fig2wp.gif.

The key observation in Moore's book is the existence of a chasm between the early markets and the majority. The shape of the bell curve would lead one to believe that penetrating the mainstream markets is a natural step, but most companies never get there, because they fall into the chasm. They succeed at selling their product to all of the early adopters, but they fail to penetrate the majority since they lack a way to get across the chasm.

What Causes the Chasm?

These normal people occupying the center of our bell curve tend to move in a herd mentality. They don't like change, and they don't understand technology, and technology changes often, so they stick together because they feel safer that way. They only change when they see everyone else doing it.

As I said, normal people do not understand technology but they are expected to make technology decisions anyway. They can't use their technology expertise to evaluate and choose the best products since they don't have any such expertise to use. So, they do whatever the rest of the crowd is doing since this gives them a higher confidence that they made the right choice, and it also gives them a large group of peers with whom they can commiserate whenever they make a bad choice.

This means that the normal people herd moves very slowly, and very quickly. Getting the first one to change to your product is nearly impossible, but once the change starts happening, it happens fast. The only thing normal people hate more than change is feeling left out when a change is happening.

How to Get Across the Chasm

The key to making it across the chasm is to do the least intuitive thing you can imagine -- stop focusing on the mass market and focus on the needs of a very small niche.

The trick is to look across the chasm and identify a small group of people within the majority who have unmet needs. Then, meet every need they've got. Make sure your product solves every problem they need it to solve, even if it means making your product more focused and less appropriate for the broad market.

Do this right and your new customers will love you, and they will, in the language of Moore, sponsor you across the chasm. Your success with this group will prove to the rest of the majority that you know how to service normal people. Your success is not a certainty but this new niche is a building block for reaching the rest of the majority.

Back to the Practical

Linux on the desktop will face a chasm, even after the apps are there. To get across this chasm, we will need to earn our credibility and prove ourselves as a worthy choice. We'll need to find a niche of normal people within the majority who find our particular advantages to be especially appealing. If we find the right niche, and if we win that niche, we'll have a decent shot at making a substantial impact on the larger market.

Key #5: Make it Free

Linux Desktop Software Must Be Free, Reason #1

Your user is happy with what they've got. If you want them to change to your product, you're asking them a lot already. They've got to endure the hassles of switching, not to mention the tedium of learning how to use your tool. They are taking a risk, since your tool may not work as well as what they had. On top of all this, you expect them to pay for it?

Not likely.

The next revolution in software will only happen if the right to use software is not withheld in consideration of payment.

Note this is a necessary condition, but not a sufficient condition. Even a free product must compete for the attention of its target users.

So How Do We Make Money?

First of all, let's acknowledge right up front that you will make less money than Bill Gates. This should seem obvious, but I'm saying it anyway. The next revolution in software is simply not worth as much as the last one was.

There are lots of ways to make money in the software industry without charging people for the right to use the software. Just ask Red Hat -- they seem like a very successful company as far as I can tell. :-)

Physical goods still cost money, and always will. Services cost money, and always will. Time costs money, and always will.

Don't charge your customers for the right to use your software. Rather, charge them for the service of helping them use it better.

Linux Desktop Software Must Be Free, Reason #2

Reason #1 dealt with the fact the price is not going to be a tolerable barrier. Reason #2 deals with competitive pressures.

The PC software war is over. Microsoft has clearly won. I am quite convinced that nobody will every beat Microsoft on their terms. If Linux desktop software is not free, then we are simply competing with Microsoft at their own game. Having Linux itself be free is simply not sufficient. Normal people need The Whole Product (another Geoffrey Moore term. Read his book. You'll love it.), or they won't make the switch. By making Linux free, as well as the core applications, we change the rules, and this is the only way to avoid getting stomped into the ground.

The competitive landscape we're facing is hardly new. In the early and mid-eighties, PC hardware was very similar to the way PC software is now. PCs were expensive and margins were high. IBM was dominant and very few people considered them vulnerable. Then, Compaq came along and cloned the PC offering it for sale at better prices. Within a short time, PC hardware was a commodity industry. Prices fell and margins became very thin. Vendors stopped competing on the basis of technology and features and began to compete with their brand names, their value-added services, and their pricing.

This process will soon repeat itself in the software industry. It's just a matter of time. The market for mainstream desktop productivity software will transition to a become a commodity-like industry with prices falling dramatically.

As an example, consider the market for office suite software. This is a $6B market. However, the technology itself is quite mundane. Word processors are boring. They've been boring for a decade and each new upgrade confirms that nothing new of interest is happening on the technology side. All three of the major competitors in this market have similar feature sets, yet one of those three has 95 percent market share.

People still pay an outrageously high premium for Microsoft's offering, even though comparable products from Corel and IBM are available at a much lower cost.

The operating system itself is obviously en route to life as a commodity as well. Windows is currently the 2nd most expensive component in a low-end PC. This is really quite silly when you think about it.

In order to push these situations over the edge and really effect the transition to commodity software, Linux desktop applications must be free. Right-to-use licenses are a barrier which will prevent the normal people from making the change.

BTW, People Don't Pay for Technology Anyway.

People who buy Microsoft Office instead of Corel's counterpart are apparently not paying for technology anyway. Why pay a huge premium to get something which is technologically comparable?

It's important for us to recognize that normal people usually don't buy software for its technological aspects. Your technology is not as great as you think it is, so why are you so worried about making it free?

Customers don't buy technology -- they buy services, and they buy intangibles.

Linux and Open Source will reach these mainstream markets only if it is willing to separate these services and intangibles from the right to use the software itself, pricing them separately. The right to use must be free. Everything else costs money, and the pricing for those parts should be fair.

Summary of the Keys

  1. Create Software for Normal People
  2. Apps
  3. Interoperability
  4. Get across the chasm
  5. Make it free

Truth be told, this list of recommendations is not complete. Even if we achieve every one of the above goals, each of which I believe to be critical, there will still be lots of ways we could fail.

Nonetheless, getting all of the above done right is a tall order, and would position us very nicely for success in our mission.

Of course, this is not a one-horse race.

Microsoft's Response

One particularly pessimistic summary of everything I've said so far might go like this:

We have a lot of work to do, and we're not going to make much money doing it.

From here, the news gets worse:
Microsoft will fight back, and they'll fight hard. Furthermore, they'll have plenty of time to prepare a top-notch counterattack since it's going to take us quite a while to get all this stuff in place. Furthermore, because we are Open Source, they will never have any trouble finding out what we're up to.

Prepare. Don't let the battles surprise you. This will not be pretty. I don't know what it will look like, but I do know that if we want to get serious about penetration of the mainstream markets, we'll face very stiff competition.

But take hope. We have some advantages which were not present in any prior attempt to defeat Microsoft. There simply is no single company which can beat Microsoft, and in fact, there have been multiple examples of failure even when groups of companies banded together against their common foe.

However, as big as Microsoft is, and as powerful as they are, the Community is stronger. As a Community, we have more money and more people than Microsoft.

I'd like to mention that Microsoft is not the only proprietary software company. Villainizing them as I'm doing now is quite out of character for me, since I don't hate Microsoft and I never have. I'm referring to them here as a proxy for all developers of proprietary desktop productivity applications. They are the market leader, so to choose one representative from that crowd, Microsoft seems the right choice.

Eventually, Linux Will Win Anyway

Joel Barker writes an excellent book called Paradigms. This may sound like a silly buzzword which deserves Scott Adams' ridicule, but it's an important concept here.

Sometimes, the fundamental rules change. Even after the change has occurred, it takes time for the change to be realized and implemented, but the change has happened nonetheless.

We call this a paradigm shift, and it brings a wealth of exciting new opportunities.

Barker's observation is that people who were successful in the old paradigm are usually not successful in the new one. Everything they know is no longer useful. In fact, they may be the last ones to even recognize the new paradigm.

My belief is that the rules have in fact changed and the paradigm shift is now underway.

BTW, Users Actually Aren't That Happy

I maintain that truly large change will be gradual, but user dissatisfaction with the old paradigm may accelerate things a bit.

I know a lot of computer users and I like to talk to them. I usually ask them what they use and if they like it. I've been consistently surprised to find that most people use Microsoft Word, and most people don't like it.

More generally, people do not like the upgrade rat race. They do not like being required to pay for upgrades just to get basic needs such as Y2K compliance, file format compatibility, or basic bug fixes.

The New Rules

For your convenience, I am including a copy of the new rules here:

  1. Basic desktop software, including the OS and the applications, should be free, and they should come pre-installed on the PC.
  2. Vendors will do better when they strive to serve their users instead of control them.
  3. Users don't have to pay money to get the quality they expected to get in the first place.
  4. The Community can do a better job developing software than any single company.
  5. Software developed by the Community belongs to the Community.


Paradigm shifts are notoriously hard to predict. Most people who try to do so end up being wrong, but that's a risk I'm willing to take.

Even now, I earn my living working partially on proprietary software. Nonetheless, I believe in the future that I'm predicting, and I am very much looking forward to seeing the new rules come to their fullness.

It will be a whole new ball game.