Originally Published: Friday, 14 April 2000 Author: Rob Bos
Published to: featured_articles/Featured Articles Page: 1/1 - [Printable]

The "War" For The Desktop

The latest, and largest, niche that that some people and companies are emphatically targetting in the typical distributed effort, is none other than the home and corporate desktop. Here are some of the projects designed to fit Linux in to the home desktop:

   Page 1 of 1  

A typical Linux distribution is a large agglomeration of distinct parts that collectively depend on the Unix architecture and package management systems to keep everything coherently organised. Each of these packages, designed for a different purpose, often has unique configuration files, a slightly different interface, and a different design.

While each package must accede at lest nominally to certain standards (the POSIX standard, for instance, defines what function calls are valid for a Unix program, and the Linux Filesystem Standard defines where binaries, libraries, and configuration files must necessarily go), they are all very different, and require a fair amount of adaptability by the end user in terms of interface.

In what is usually meant by the term "integration" by the end user, Linux fails miserably. All those disparate configuration files, all those different interfaces, all the strange and wonderful tiny little programs that make up a Linux distribution often seem a messy, kludgey mishmash of different things. Understanding how it all hangs together is something that takes a lot of time and poking around.

Unlike Windows, which has a fairly conceptually simple design (though a few very bad decisions, irrationally clung to, have made it unusable -- witness the mess that is the registry), the various Unices seem at first to be overwhelmingly complex, especially with the large numbers of abstracting front ends that have been put on it in recent years to ease some of the complexity to the end user.

Another kind of integration, however, is one that Linux, in its development cycle as an operating system, "snuck in the back door" at companies to get various tasks done. As something that people play around with in their spare time, it has proven to be more important.

Linux has an ability, in almost any space, to integrate flawlessly into a very wide variety of environments. The packages and options that Linux has accrued support for over the years is far wider than any other Unix, and rivals that of Windows itself, despite having a much smaller resource base for development.

Implementations for almost any given networking protocol exist, almost every known programming language is implemented under Linux, and the culture surrounding it is one of people continually trying to adapt it to fit new situations. In one corner, we have one group trying to put Linux on IBM mainframes; in another, Linux on a Palm Pilot. In yet another area, we have people using Linux as a database server. In another, we have people using it as a lab machine for end users.

Linux users often get accused of using their favourite hammer in every situation -- of saying "Linux is the answer!" before even knowing the question. While this is often true of the more zealous and enthusiastic users, a fast process of people making Linux do just that -- fit in different niches despite the fact that it doesn't currently fit in that niche -- has created a slim, modular operating system that can fit almost anywhere with a minimum of effort. All the edges, so to speak, have been bumped off; the design has been made by virtue of natural selection very modular, extensible, and by necessity relatively easy to put in new environments.

Documentation, surprisingly, is one thing that the Linux community, contrary to popular myth, is quite good at -- if you're an advanced user, or a programmer. Often, instructions and help files will exist in copious amounts, provided you know how to read them and have the vocabulary to use them. This is a direct result of Linux' ability to adapt quickly to a new niche; people who have gone before have written down how they did it, and made changes that would make it easier for the next person to come along.

Man pages, while they may seem archaic to new users, are an extremely valuable resource for advanced users. Only recently has pressure been put upon the various free software communities to write documentation and make usability concessions to the end user.

The latest, and largest, niche that that some people and companies are emphatically targeting in the typical distributed effort, is none other than the home and corporate desktop. Here are some of the projects designed to fit Linux in to the home desktop:

  • Users are demanding that OEMs preinstall Linux for business reasons. This is the single greatest barrier to entry. The "average" user of a computer, a new user, one with no experience whatsoever or only minimal experience, will quite simply use whatever is handed to them, be it MacOS, Windows, BeOS, or Linux itself. New users won't care, because the learning curve for Linux in this scenario is greatly lessened by the greater learning curve involved in using computers, period. The differences between a command line and a GUI are relatively slim compared to the differences between a piece of paper and a desktop computer. The OEM preinstall market is one that Linux must crack if it is to fit in the desktop.

  • Ease of Installation. Many Linux distributors are working on this problem; it is one of the most vital functions, if not the only function, of the Linux distribution to make a coherent, working package out of many thousands of disparate software packages, and make it run on a wide variety of hardware. Making Linux easy to install is not a trivial task, and only in recent months has the process been generalised to a point where any given user has a good chance of getting their hardware detected and working with a very minimum of fuss.

  • Availability of Applications. Only recently has Linux gained the desktop market share that it needs to attract the attention of large software companies to the point where almost every large software company pays at least lip service to Linux. While the majority of companies that talk about Linux are doing just that -- talking -- the number of software companies that actually do something is rising quickly as it becomes apparent that porting code is relatively easy (using the WINE libraries, for instance) and demand increases.

  • Ease of Use. There is a huge amount of effort being done in many different corners to create integrated, consistent graphical environments for Linux. The GNOME and KDE projects are the primary examples of this. Linux is becoming, by leaps and bounds, easier to use for the beginner, or for someone coming from more conventional interfaces.

    The important part, however, is that all of these things are being done, in several different ways, in a distributed fashion. If all the hundreds of developers of KDE should suddenly decide that their project sucks, then GNOME will be right there to pick up the slack. If Corel suddenly decides that their WordPerfect Office 2000 suite is not worth maintaining for both Linux and Windows, there is Applix, StarOffice, and numerous others. The KDE office suite, for instance, is looking to shape up within a year to be a fantastically useful and powerful set of applications.

    Linux has a future in this niche, too, and whether it gets adopted or not, it is looking like a better fit every day.

    Rob Bos (rbos@linux.com) has the next three months off from classes and intends to spend it in glorious, unmitigated, but frenetic slack.

  •    Page 1 of 1