Saturday, November 26, 2005

Is Linux Ready for the Desktop?

© Copyright 2005, Charles Tryon

One of the questions I keep hearing again and again is, “Is Linux ready for the desktop yet?” It's pretty clear at this point that Linux is a top flight server OS. Not only is it less expensive over the long haul than certain other proprietary options, but it has shown itself to be more secure, flexible and robust. The market share of Linux in the server market is still relatively small when compared to both more traditional Unix variants and to Windows, however it is the only OS that has been showing consistent, double-digit growth over the past several years. Long standing problems with enterprise support and scalability, such as support for large numbers of parallel processors and huge memory sizes, have eliminated through deep refactoring of key parts of the kernel. With companies like Red Hat, IBM and Novel throwing their full weight behind Linux support, enterprises now have a level of comfort with the kind of technical support they need. While there is still a great deal of change still under way, the kernel is showing signs of the kind of maturity that enterprises require before they are ready to put full reliance on the OS for their mission critical applications and data.

Linux is now firmly entrenched in the server space, especially in the Web server space, where combined with the Apache Web Server, it is a force to contend with. There is still plenty of competition between Linux, Windows and the various Unix flavors, but you aren't going to hear anyone saying, “Linux? What's that?”

However, most of us don't spend our time building Linux servers. It's on the desktop that most of us touch computers and all of the technologies that have become so pervasive in our day. It is also on the desktop that Microsoft has shown its greatest strength in marketing and market saturation. That is where Microsoft has been able to leverage its monopoly position to gobble up more and more application markets, from office productivity suites to Media and home entertainment. It is even through its hold on the desktop that Microsoft has tried to force its way into the server space, tying its desktop clients tightly to enterprise applications such as Exchange, Directory services and enterprise management tools. At one point, it seemed poised to gobble up the Internet itself, squeezing it between IE on the client and IIS on the server.

It is also on the desktop that much of the most interesting developments in human-computer interactions are taking place. We are re-thinking how we interact not only with the piece of hardware sitting on our desk, but with distributed computing, and even with other people spread across the world. It is on the desktop that much of the newest hardware is being introduced, and it is from desktop like platforms that the game and home entertainment industry is branching out.

So, in order to really impact the greatest number of people, Linux must be strong on the Desktop as well as in the server room. It doesn't necessarily have to conquer Microsoft and drive it into oblivion, but it must present a viable alternative in people's minds, appealing to a significant chunk of the computer using population.

Is Linux Ready for the Desktop?

People have been asking this question for a long time – at least since the late 90's. For a long time, it was clear that Linux was, “By Geeks. For Geeks,” but that is quickly changing. But, the question is still being asked, and it still raises heated arguments as to the correct answer. Whenever I have happened on these arguments (or “flame-fests” as they often degrade into), I have invariably found that the opposite sides are really talking about completely different questions. The questions I see break down into basically three categories: (1) Is Linux ready for the desktop? (2) Is the Desktop ready for Linux? (3) Is Linux ready for MY desktop? I believe that, if we really understood the questions behind The Question, we would not only be able to understand each other better, but we would probably gain a greater understanding of where Linux needs to grow in order to continue to conquer the desktop.

(1) Is Linux ready for the Desktop?

If, by this question, the intent is to determine if it is possible to run Linux as one's primary working environment, then the answer is unmistakably YES. Personally, I have been running Linux as my primary working environment, both at home and at my job, for over seven years. Now, I've always been one to swim against the current, and it certainly hasn't been easy all this time. There have been compatibility glitches (running Ximian Evolution in an Exchange world), and sometimes updates have broken things. Over the years, I've spent lots of time on Google and USENET looking up esoteric configuration setting and boot parameters. I still have problems now and then getting hardware to work, or finding support for sound cards or non-standard video drivers. However, I've always managed to somehow get what I need. With stable releases of Firefox, the Evolution email client, and OpenOffice, there is very little that I still can't do on my Linux desktop. If I really needed to, I could get Wine to run most Windows applications, though I still find it easier to have a spare Windows box near by running VNC for the occasional application where there just is no Linux equivalent.

Measured this way, Linux is ready for my desktop, and for the desktops of a steadily increasing number of people. My wife knows nothing about Linux, but she runs it on her desktop. Since she was already using Firefox on Windows, it took her several days to even realize that I had changed anything when I replaced her Win98 install with Fedora Core. I have another friend who was constantly calling on me to clean out viruses and spyware on his system. With his permission, I replaced XP with FC4, and now all he says is that, “My computer runs ten times faster than it used to!” In many situations, especially where people primarily use Web browsing, word processing, email and perhaps IM, Linux is usually a better, more stable, more reliable solution. The list of completely supported hardware and applications is growing. Standard devices like USB drives work just as you would expect them to on a Windows box. There are still plenty of games and other specialized hardware devices which are not fully supported, or that may take extra “heroic” efforts to get working, but that list keeps shrinking.

So, the answer to the first question is, in many cases, a resounding YES.

(2) Is the Desktop Ready for Linux?

The second question is, unfortunately, more of a political, sociological question. Most people, especially those in decision making positions, are familiar with Windows and Windows based tools such as Outlook and MS Office. They are comfortable with the tools, and in spite of the bugs and crashes and security holes and the general attitude of, “We're Microsoft. We know better than you do,” they have learned to navigate their way through the tools they use. They may only need 10% of the features, but they have grown to rely on them. They are comfortable not only with what the applications do, but how they do it. They know the terminology. They are used to the quirks. They have set up macros to format their files how they want them. They have their Access databases set up and their mail-merge files configured. They have other custom tools which are integrated with the Microsoft way of doing things. They may grumble and complain about the costs of licensing, but they know that their purchasing department is already set up to OK the yearly costs, so they just bite the bullet. They have IT groups who's very organizational structure is built around Microsoft's tool chain and licensing requirements.

When it comes down to it, people don't really care what operating system they run. They don't even think of it as something separate from the computer. For all they know, Windows is just something that comes for free when they buy the hardware. They want to run their applications, or their games, and Windows is the way they run them. They think word processing is “Microsoft”, and they have no concept of the distinction between hardware, OS and application.

When you tell the average user about Linux, they give you this confused look and ask, “What will Linux do for me?” It doesn't matter to them that it's free (as in “free beer”, or “freedom”), since they don't think they paid anything extra for Windows. Chances are, they didn't pay anything for MS Office either, either having it as part of a bundled system, or installed from a friend's copy. (They don't even really think of themselves as pirates. It's there, and so they use it.) They don't “get” the philosophical or moral significance of Free Software, since it doesn't seem to directly impact them, or they way they use the computer.

Put simply, the average user doesn't see any particular benefit to using Linux, or at least not yet. More and more “average” users are beginning to feel the pain of poor security, and they are starting to notice that some other people, such as people using Mac's, don't seem to be getting as many viruses. People are starting to hear about this “Linux thing”. Lord knows that Tux is a recognizable icon. IBM is making really cool advertisements on TV spots. Slowly but surely, the word is getting out.

Still, it will be a while before Linux gains the critical mass in the minds of the majority of computer users in order to really take off. It is very likely that this will happen sooner overseas than it does in the US, since there is an understandable distrust of American technology and monopolistic companies pushing their weight around. Massachusetts and its adoption of the Open Document Format is still a curiosity. The EU pushing for the use of Open Source software is not. The Desktop may not be ready for Linux yet, but it is headed in that direction.

(3) Is Linux Ready For MY Desktop?

In arguments about whether or not Linux is ready for the desktop, those who claim that it is not ready invariably point out that, “I have to use application X, and there simply is no equivalent application on Linux.” There may be applications which are close, such as The Gimp is to Adobe Photoshop, but there is still some kind of gap. It is even possible that the parallel Linux application may be superior overall to the required Windows based application (such as some would argue is the case between OpenOffice.org and Microsoft's Office suite), but there is some significant feature which is still missing. Sometimes it is simply a case of #2 above, where the user is comfortable with their current tools, and reluctant to have to learn everything all over again. In many cases, the required application is some highly specialized piece of software either custom written, or aimed at a very narrow market. It would be possible to port to Linux, but as long as the vendor feels no economic incentive to do so (i.e., no paying customers in the Linux or Mac market), the port will never happen.

However, whatever the underlying cause, there is a significant roadblock to the individual or group's path to adopting Linux on their desktop. It may in fact be that Windows, while it's not be the greatest tool, at the moment, is the only tool available. There are many efforts under way (some coordinated, and some not) to address these shortfalls, but others, mostly because of market size and interest, will never be filled. Hence, no matter how much the user may want to go to running Linux on their desktop, circumstances have painted them into a corner. In these cases, Linux is still a long way from being ready for those particular desktops.

Ready or Not...

So, the answer to the original question depends on which underlying question you are really asking. It also depends on the situation the individual user is in. Plainly, the answer is not the same for all people, or all groups. For some people, Linux has been ready for a long time, and has already been running as their primary desktop for years. For some others, Linux may never be a good fit. For others, it may only be a matter of making the decision to dive in and switch. For many, it is simply a matter of finding someone to help them through the process.

These questions, and their answers, may also give us a hint of the future, and how we can work to drive Linux on to more and more desktops. As noted, often the greatest roadblock to acceptance of Linux on the desktop is the psychological barrier of leaving something familiar for something new and uncertain. The friend I mentioned with the constant spyware problem wouldn't have had a clue how to install and configure a Linux desktop. For me, it was a simple half hour job. Once I did that for him, aside from the fact that some Web page plugins don't work, he hasn't had a single problem.

The problem of applications is a bit of a chicken-and-egg problem. Without market penetration and demand, vendors aren't going to port their applications to Linux. Without applications, market penetration will stall. One answer is for the community to come up with viable alternatives, though this takes time and resources. While the Open Source community isn't directly driven by dollars, it has its own “currency” of recognition, teamwork and feedback. The community will not spend resources on a project unless there is the definite feel that a significant number of people want the product. That “significant number” may actually go to the number one, if the developer and the audience are the same person, but projects of one take a long time to get off the ground.

So Linux is truly ready for the Desktop, but there is still plenty to be done before it can gain the momentum to rise above the noise level and become a viable alternative in the eyes of typical consumers, software vendors and heads of corporate IT departments. In my opinion, the following points are where growth is needed:

  • Software corporations (ISV's) taking the gamble that Linux on the desktop is growing, and that they need to consider it in their targeted platform plans. It is still a long shot for them, but the potential payout of grabbing “first mover” status is huge. As an example, there are signs that the Gaming industry is starting to catch on, as game titles are coming out with Linux releases, sometimes before the Windows release.

  • In cases where they can't find a viable business plan to create Linux based versions of their products, software corporations need to consider open sourcing their products. Obviously, this is a complicated process, and not a decision to be made lightly, but there are strong examples of others, such as Sun with OpenOffice.org, who have been successful with this approach.

  • The larger Open Source community – from developers to corporations that “get” FOSS, to government agencies – needs to keep up the fight against the use of software patents and other IP claims to try to create legal barriers to Linux where simple marketing dollars, threats and strong-arm tacts have failed. There are people in positions of power who are still deathly afraid of losing that power and influence to this “cancer” of open source.

  • Individual developers and communities need to keep producing quality open source products. More and more the key needs to be driving consistency and integration. One thing which large corporations such as Microsoft have is the ability to enforce consistent interfaces, where users know what to expect, and to build integration between different products, so they work together. Obviously, they aren't always good at this, but they generally have been better than the community. There are efforts such as the LSB for system level consistency, and desktop environments such as Gnome and KDE, and now Mono which provide frameworks for integration, but developers need to keep their eyes and ears open to what is going on around them, and to consider how they fit into the whole computing “experience”..

  • Individual Linux users need to look for more opportunities to help others. The community is known both for its helpfulness, and for its impatience with what it considers to be laziness or incompetence. Be patient with newbies! Don't scare off the non-geeks! Take a little time to help grandma with her computer by installing Linux, and then sticking around long enough to make sure she is not frustrated by some glitch she doesn't know how to fix. Volunteer your time to set up some computers at the local elementary school or community center. Give a seminar on Internet Security at your church. Hand out Ubuntu Live CD's at work. Donate cold hard cash to organizations working to spread inexpensive, Linux based computers in developing nations overseas.

  • Use Linux yourself. Show your boss that, yes, you can run a Linux desktop at work, get your job done, and not make his job more difficult. (Chances are, once your IT person gets over the initial shock of seeing Linux on your computer, he or she will be relieved because yours will be one less desktop to worry about during the next virus outbreak.) Sell it to your boss by telling him that you are actually more productive using Linux than you are stuck on Windows, and then make sure it really happens.

Linux is ready for the Desktop, though not all desktops are ready for Linux. It will continue to grow, but our efforts can accelerate that growth. Wherever we are, and whomever we might be, there are things we can do to promote freedom in software. FOSS may not have the same impact as Solving World Hunger, but in its own way, Free Software, in the way it spreads knowledge and the ability to share, communicate, learn and participate in the communities around us, can serve to make the world we live in a little better place.



No comments: