The Open Source Debate - Why Linux is struggling on the Desktop.

Introduction

We all understand that Windows is not going to be going away. Then again, nor is Linux. These two operating systems both have their advantages and disadvantages. Therefore, we must continue to develop ways to ensure they co-exist and integrate in the computing environment.

It would be ridiculous to assume that any single operating system (or vendor, for that matter) can possibly offer ideal solutions for every IT problem.

"…the organisation that can take advantage of the best of both worlds will reap benefits unavailable to those who insist on discarding one operating system or the other". (Moskowitz, J. 2005)

Notwithstanding the popularity of Windows, Linux/GNU is now a stable, reliable, flexible, secure and low cost operating system based on the open source philosophy. It has gained a considerable reputation in server rooms mainly and, to a lesser extent, on the desktops of many organisations. In fact, Linux coupled with Apache (an open source web server) accounts for over 56% of the servers on the World Wide Web. So, it is obvious that Linux is very capable. Even 72% of IT executives of $1 billion or larger companies plan to increase their investment in Linux, according to a Forrester study. (Computer Associates. 2004)

Why, then, is Linux struggling to gain even 2% of the desktop market? (Lyons, D. 2006)

To answer this question, we must look at some of the fundamental issues related to Linux and its adoption in the home. These include the methods used to develop and license Linux/GNU; the culture surrounding Linux; general public perceptions of Linux (and Open Source in general); and, importantly, availability of popular commercial software, especially the latest games.


Benefits

There is no disputing that Linux has made a significant impact in server rooms across the corporate and governmental landscape. These reasons include: access to the source code (which helps with security), code portability, scalability, stability (reducing upgrade pressure), flexibility, reduced lock-in and low licensing costs.

Let's look briefly at those benefits.

Source Code Availability and Security

The Open Source development methodologies allow anyone access to the source code. As a result, there are no surprises as to what the software is actually doing. This reduces the risk of Trojans and other malware. Therefore, it can be trusted – which is a very important aspect for some organisations. For example, the Chinese Government has backed a Linux development team called Red Flag Software Co. Ltd. (which, in late 1999, leveraged the Red Hat distribution). Red Flag has developed a number of distributions for Chinese industry and the government. For obvious national security and commercial reasons, China does not wish to rely on a foreign-owned, proprietary software developer. The same can be said for many highly-competitive western companies.

Linux is developed by a vast community of IT professionals. Their collective experience and input has helped to create an extremely flexible and configurable system. This is well suited to the needs of IT support personnel and corporations who can customize the source to perform dedicated or specific tasks. These modifications are often fed back to the open source community for assessment, collaboration and inclusion, if they are appropriately useful.

In a Windows world, access to the code is forbidden. It is a commercial product, after all. Therefore, one can only suggest modifications to Microsoft and hope that Microsoft listens and develops the desired features. It is rare that they will invite external code for inclusion.

Code Portability - Cross Platform Applications

There is a growing list of cross-platform, open source applications available. Most of them are designed to perform identically on Linux, UNIX, Windows and OSX. Examples include; Firefox (web browser), Thunderbird (e-mail client), GIMP (graphics manipulation), Pidgin (formerly Gaim, multi-protocol instant messaging), Skype (VoIP soft phone), VMware (virtualisation), Open Office (office suite of programs) and Star Office (fully supported office suite of programs), just to name a few. This consistency is extremely useful in a mixed desktop environment or, more appropriately, in preparation for a migration to Linux so that the transition is less intrusive.

Scalability

Scalability using commodity, low cost or older hardware is a strong Linux feature. With Linux, an organisation can expand its computing resources at a rate synchronised with its needs. No requirement to invest in “big-iron” up front in anticipation of future growth. Linux can easily accommodate vertical scaling (multi-processors) and horizontal scaling (clusters).

Being able to recompile the Linux kernel to suit specific hardware is significant and has a twofold benefit: you end up with a much more efficient (faster) kernel as well as a much smaller one (discarding the unneeded components). As a result of this ability, it is highly adaptable for embedded devices, such as PDAs and smart-phones, ready for a more mobile workforce. Linux has already proven itself in network routers and firewalls appliances.

Reduced Upgrade Pressure

When using Linux or other Open Source products, there is less pressure to continually upgrade, especially if it is adequately performing its assigned task/s. There is no vendor pressure to roll out updates and new feature-sets.

With Linux, there are strict controls over its development cycle. Most patches and bugs are fixed quickly, due to the sheer number of developers involved and new features are not released unless they are ready. This is because there is no financial pressures, therefore, no marketing department or manager trying to get the product on the shelves prematurely.

In commercial software, the requirement to speed up returns on investment can lead to the release of bug-riddled code. Demands to get a product to market as soon as possible, then fixing problems or even adding promised features to the product later are definitely not afflictions of Open Source development.

Reduced Possibility of Lock-in

With Linux, vendor lock-in issues are almost non-existent. In general, Linux developers do not have any reason or incentive to make porting data or applications difficult. Commercial software vendors often (and justifiably) attempt to lock customers in to their software by way of proprietary data formats or protocols. This makes marketing sense for the vendor, but is not always in the best interests of the customer.

Conversely, Linux responds to user needs. It includes solid compatibilities with almost all of the popular operating systems, file formats, protocols and standards because that is what the users want. Developers know that Linux cannot be considered in isolation. The developers realise that Linux must be able to integrate in order to survive. Linux must interact with the more popular standards and prove itself to be better than the others at doing so.

Hardware Flexibility

Linux will run on a broader range of older, less powerful hardware. This allows some organisations to continue to use outdated or underutilised hardware for longer periods, offering subsequent cost savings. The use of many older machines in a horizontally scaled (clustered) environment offers much better value for money than continually upgrading a powerful proprietary mainframe system.

The flexibility of Linux is most apparent in the OLPC (One Laptop Per Child) initiative. Many older technologies are being explored in order to produce a cheap laptop for donation (or cheap sale) to developing countries. Linux is ideal as an operating system on lower spec hardware that is suitable for this project.

Other developing nations, in Africa and South America, for instance, have realised the benefits of a low cost operating system coupled with older hardware discarded or donated from developed countries. A fair indication of this is the dramatic increase in scam email from such countries.

Reduced Licensing Costs and Tracking

Linux does not have license tracking requirements and can be installed on as many machines as required without any licensing fees. This is not to say that there are no costs associated with supporting Linux. But, being able to freely install Linux across the organisation without restraint is a considerable benefit. With a proprietary system, there is a requirement to purchase licenses for servers and clients, as well as client access to the servers. Not so with Linux and the same can be said for most Open Source applications and utilities.

Licensing costs and compliance are complicated and a considerable impost on the resources of any reasonable sized organisation. Thus, some less-than-scrupulous organisations use pirated copies of Windows. This is an obvious problem for Microsoft. So, in response, Microsoft developed the Windows Genuine Advantage (WGA). This has made it more difficult to load and use unauthorised copies of Windows; however, WGA may backfire on Microsoft, especially in the developing countries.

For example, back in July 1998, Bill Gates made a comment in regard to China and its rampant piracy. "Although about 3 million computers get sold every year in China, but people don't pay for the software," he said. "Someday they will, though. As long as they are going to steal it, we want them to steal ours. They'll get sort of addicted, and then we'll somehow figure out how to collect sometime in the next decade." From my research, this statement annoyed the Chinese government and, in 1999, Red Flag Linux was borne. Nevertheless, WGA is making it more difficult to use unauthorised copies of Windows.

In affluent countries, WGA is reducing piracy which is helping generate more revenue for Microsoft. However, in poorer countries that cannot afford to pay for an OS and cannot readilly pirate Windows, Linux is becoming a much more attractive alternative. My prediction is that people in these developing countries may “get sort of addicted” to Linux. This will only make it considerably harder for Microsoft to penetrate these emerging markets, even if the economic status improves for these countries.

As can be determined from the above benefits, Linux definitely has some compelling reasons to be considered. Hence, there is a steady rate of adoption in the server rooms and on the desktops of organisations across the globe.

We must keep in mind, though, that taking on Linux is definitely not the panacea of all business computing needs. There are many reasons to be very careful when considering Linux as an alternative. This is especially true on the desktop. Experienced technical staff can cope with the changes involved in a mixed environment. They can usually adapt easily (some may even enjoy the challenges of the change), but it is a different story when non-technical personnel are involved. There is a resistance by the end user and commensurate drop in productivity when drastic changes are made to what they are used to.

This is understandable. It is human nature to resist changes. However, in a corporate environment, end users may not have the choice. The CEO and CIO may have done their research and concluded that Linux offers enough tangible benefits to justify any initial resistance or drop in user performance subsequent to implementation.

In the home, however, the decisions are not made by others. Home users know what they want and they want what they know. In the developed world (at least), predominantly what they know is Windows.


Inhibitors

This brings us to some of the main factors influencing the slow uptake of Linux in the home environment.

Too many Distributions

With the recent launch of Windows Vista, many people have complained that five versions constitutes too many to choose from. Quite a few became confused. John Gruber (creator of the Daring Fireball web site) said, ‘every decision you force the customer to make you give them another chance to walk away‘. So, considering that five versions of Vista is confusing to some, it is no wonder there is a lot of bewilderment in regard to choosing a Linux distribution from the thousand or more available. For example, DistroWatch has a "Top 100" list of Linux distributions.

It is not too difficult to find a table comparing the feature-sets of the different Windows Vista versions. But it would be near impossible to create anything remotely useful for all the different Linux distributions. How, then, would a non-technical home user be able to decide on what is best for his or her needs?

Not only are there too many choices of Linux distributions, many of the popular distributions include an overwhelming collection of extras. Often there is a choice of office applications, media players, web browsers, text editors and even different versions of similar desktop games! This is often coupled with some very obscure names, so it is far from easy to work out what to install and what to leave out.

Choice of Desktop Environments

This brings up another area of contention; desktop environments. Explaining the methods used for presenting a GUI within Linux is beyond the scope of this article; suffice to say, Linux has a selection to choose from. Windows has only one (although it can be customised somewhat). This is, again, another confusing aspect for potential users of Linux.

Of the more than dozen main Desktop Environments, KDE and Gnome are the two most popular. KDE seems to emulate the look and feel of Windows more closely than does Gnome. However, it has been said that the overwhelming array of customisation features of KDE can be distracting to new users. Gnome is somewhat less cluttered, but it is noticeably less Windows-like for users.

Lack of Marketing

A lack of commercial marketing of Linux has prevented it becoming known to the mainstream. Red Hat is one of the most recognised of the Linux distributions (with its catchy logo). However, this recognition is predominantly among computer enthusiasts. Red Hat definitely lacks the marketing spread of Microsoft and Apple. Those exposed to any of the limited Linux marketing (at tech shows, educational institutes and in specialist magazines), are usually already relatively tech-savvy. Advertising Linux in a computer magazine is only exposing itself to those already interested in computers and compelled to buy a magazine related to their interest.

While on the subject of magazines, a brief investigation into dedicated Linux magazines has shown that they are expensive (all of them over $10 per issue, with most over $15), there are no Australian magazines (that I could find) and many of them assume prior experience. Some of the other computer magazines (including Australian) do offer some Linux content, but it is usually only a small section or just some news items.

This lack of mainstream marketing prevents any prospective new computer user from knowing that there are alternatives to a PC running Windows or, to a lesser extent, a McIntosh running OSX.

Even though Red Hat is relatively well known in the Linux fraternity, it has abandoned the home desktop distribution in favour of "Enterprise Linux". Their community-developed, home desktop distribution was spun off as Fedora Core in late 2003. This is a strong indication that there is not enough interest in a mainstream home use distribution, at least for Red Hat.

On the other hand, Ubuntu has focused strongly on the desktop and has developed a number of specialised distributions based on Gnome, KDE and even for educational desktops. Since its recent launch, in 2004, Ubuntu has gained a considerable reputation among new Linux enthusiasts. It certainly has helped to gain more exposure.

Even though Dell has recently decided to offer Linux on some of its desktop systems, I will be interested to see what sort of marketing they will use. After purchasing a 24" Dell LCD monitor, I receive Dell "specials" via e-mail each week. None of these eletters have, so far, mentioned their Linux-powered systems. If, they do start to advertise them, I feel it will be difficult to convince a majority of people to abandon Windows unless the prices for Linux machines are considerably cheaper or they can provide some other compelling reasons. I can’t help but feel Dell’s Linux machines will only attract a few business customers wanting to save money and some new computer enthusiasts.

Too Different

Those users that may have been exposed to Linux through a friend or relative (so they know about Linux) would find it far too different from what they may be used to at work or previously at home. Even if they were running an earlier version of Windows, they would not find it difficult to acclimatise to the most recent version. Most features in all versions since Windows 95 have remained relatively similar and mostly backward compatible. Therefore, the user feels comfortable and knows that it will work with their existing software and hardware.

Linux still relies heavily on the command shell. This does offer some powerful features to those who know how to use it, but it is daunting to anyone who has never needed to use a command line before. KDE and Gnome have come a long way in attempting to solve this by way of feature-rich graphical user interfaces and myriad configuration tools. But, part of the reason Linux is so stable and reliable is its simple text-based configuration system. Therefore, it is designed around a more hands-on methodology. Some people dislike Windows because of its propensity to hide away its configurations and its reliance on proprietary tools to make changes. Despite this, many are used to the Windows method and insist on similar features in Linux. At least with Linux, you have a choice; use the GUI tools or work directly in the configuration files.

There is also the lack of tangible benefits in changing. Other than cost, to most home users, Linux simply offers no perceived benefit.

Application Availability

According to an OSDL survey (2005), the following applications (in order of importance) were deemed critical to Linux desktop deployments (in a corporate environment):

  1. Email/messaging
  2. Office productivity – word processing, spreadsheets, presentation, databases
  3. Browser
  4. Database applications
  5. Developer tools – editors, compilers and so forth
  6. Dedicated applications for specific business needs
  7. Internally developed applications
  8. Secure remote access/VPN
  9. Personal information management
  10. Audio/video players
  11. Instant messaging

We must keep in mind that the respondents to this survey were IT personnel from organisations that had already migrated some or all of their desktop clients to Linux; hence, we do not see games listed (see below). Nevertheless, it is interesting to note that email is considered the most critical application (even more so than office productivity and a browser). This is an indication of how pervasive and important email has become in modern business.

Although there are many email clients available for Linux (not to mention the web based email services), most of them are only capable of basic features. Novell’s Evolution, designed for Linux, on the other hand, is a functional equivalent of Microsoft’s Outlook, including seamless access to Exchange servers.

What the above list helps to make clear is that Linux is capable of fulfilling the needs of all the critical requirements in a business environment. This is not in dispute. As for point six, though, there is still a lack of native support for popular commercial applications such as Photoshop, InDesign, Quark XPress, AutoCAD, Quicken, etc. Keep in mind that these applications are used mainly in the corporate environment and there are ways of getting them to work in Linux. We could use virtualisation, API interpreters or multi-booting systems, for instance. But home users or small businesses requiring such applications usually do not have the know-how or ready resources to implement such solutions.

Even if, miraculously, all the above applications were rewritten to work natively on Linux, the vendors would want to regain costs for the development. In other words, a cross-grade would not be without a fee. This scenario would certainly help the adoption of Linux, though, as some users would be able to decide to change platforms when the next versions of their important applications became available.

Games Availability

This has to be the most important inhibitor facing Linux in the home desktop market.

As stated previously, most home computer systems are used for leisure activities. Therefore users want unlimited access to the software and products that help them achieve this.

The success or otherwise of games consoles is directly related to the number and quality of games. The PC is subject to the same pressures. To load Linux onto a leisure machine severely limits access to the most recent games (and their subsequent new features). As an extension to this, many modern games require cutting edge hardware (sound and video, or even the new PhysX cards) and many hardware vendors still do not provide drivers for Linux.

This is not to say there are no games available for Linux. On the contrary, there are thousands.

However, most of them are open source and, although they are free and more than entertaining, they are not of the same quality as the popular, big-budget, commercial offerings. Also among the Linux games are some copies of older "classics" and commercial ports. These usually require hacks and workarounds that would be too complex for non-technical users.

Most users simply want to be able to walk into any games store and purchase the latest blockbuster game, load it up and have it work.

Peripheral Support

As stated above, hardware drivers in Linux are still relatively limited. Some open source developers have created drivers for popular hardware, but sometimes these do not fully support all the hardware features.

Hardware vendors are in a similar position to that of the software vendors (although not as acute) when it comes to Linux support. The chicken and egg conundrum prevails; there is no incentive to support Linux until it becomes popular, but its popularity is dependant on hardware and software support.

Linux developers have been quick to include support for open standards, such as USB media, networking, writeable media, etc. But there are many products that offer specialised features that may be too new or cannot rely on these standards. They almost always create appropriate drivers for Windows, but Linux is usually neglected.

An example of how Windows strongly influences the market would be the iPod. When it was first released, it only worked with iTunes on Apple computers. If Apple decided to ignore the majority of potential customers (running PCs with Windows), there is no doubt that iPod sales would have languished. Realising this and creating a Windows version of iTunes, gave PC owners access and has ensured the iPod's unassailable lead in the portable music player market. Linux is a long way from being this influential.

A look at the Linux Incompatibility List shows a considerable number of quality hardware devices and peripherals that are still requiring Linux support.

Open Source Methodologies and Perceptions

One of the main benefits of Linux in the corporate world is the availability of the source code. In a professional environment, this is a definite advantage and easily leveraged as a benefit. In a small business or for a home user, the resources to take advantage of source code availability are not usually on hand. This benefit is, therefore, not seen as relevant.

There are also perceptions that many of the developers of open source are anarchistic hackers working alone in their bedrooms. Obviously this is not necessarily the case. Many of the developers of open source are professionals working as volunteers or as part of their normal employment. However, these negative perceptions persist.

Although people like a bargain (value for money), the fact that Linux can be installed without cost is another factor in a perception that it is inferior to commercially available products. Many still believe that you "get what you pay for" and associate this with the freely distributable open source products.

Evangelism

The almost religious zeal that permeates much of the Linux user community is definitely a barrier to many seeking to join. We often end up with a contradictory effort; on the one hand, many will espouse the virtues of Linux being the "best" and "only decent" operating system, while on the other, many seem to attempt to keep Linux arcane. Those wishing to keep it arcane most likely want to feel like they are part of an elite group.

This was evident after reading a few Linux forums. I was relatively pleased to see that, in general, most Linux users were helpful. Nevertheless, it was difficult to find questions from very new users. I can only assume I was unable to find the right forums. In spite of this, the low number of questions from very new users, I feel, is due to a degree of contempt shown to them. Therefore, most of the forum questions showed a measure of previous experience and seemed to be in relation to relatively advanced problems. This is definitely off-putting for new users. I felt a little intimidated in some of the forums, myself.

This evangelistic zeal is blatantly evident in a recent tech blog on ZDnet. Adrian Kingsley-Hughes (also author of the PC Doctor web site) dared to write a piece titled "Five crucial things the Linux community doesn’t understand about the average computer user" (21 May 2007). In it he elaborates on the following issues,

  1. On a whole, users aren’t all that dissatisfied with Windows.
  2. Too many distros.
  3. People want certainty that hardware and software will work.
  4. As far as most people are concerned, the command line has gone the way of the dinosaur.
  5. Linux is still too "geeky".

I agree with (and have mentioned) almost all of his points. The most significant fact in relation to this particular blog is the unprecedented number of feedback comments – over 1,000! Reading some of them is a good indication of the passion of some Linux users and would definitely raise the hackles of many Windows users. The interest in this particular blog prompted Adrian to write a follow up, only two days later. This time, titled "Three more things that the Linux community doesn’t get". This, too, generated over 500 comments.

Summary

With all my research and reading on this subject, I can’t help but come to the conclusion that Linux, although it is highly capable, will remain an enthusiast’s operating system in the home environment. My statement is particularly true in developed countries where Windows already dominates.

This is not to say that Linux won’t continue to gain support and more converts as it evolves. When games, specialised applications and cutting edge hardware are supported on Linux with little or no extra effort, only then will Linux rapidly increase its market share.

For the time being, many Linux users will be required to maintain some degree of Windows compatibility. This will be so they can access specialised applications and games as well as use certain unsupported hardware and peripherals (for example, a slide scanner with automated batch scanning software). These enthusiasts will be capable of setting up virtual machines, dual booting installs and other Windows compatibility methods. However, some will just load Linux on an older machine to do their day to day tasks (such as more secure web access) and keep an up-to-date Windows machine for the not-so-important activities as games.

One driving factor for Linux in the hands of individuals will be helped along by developing countries. These countries, unable to afford to pay for commercial operating systems (and the hardware required to run them), will rapidly adopt Linux. Especially now that Windows Genuine Advantage (WGA) makes it more difficult to load and use unauthorised copies.

References

Fink, M. The Business and Economics of Linux and Open Source. Prentice Hall PTR. 2003.
Schwartz, KD. Windows to Linux Migration Guide. Enterprise Linux. July 2004.
OSDL. Desktop Linux Working Group; Linux Client Survey. October 2005
Moskowitz, J. Boutell, T. Windows & Linux Integration: Hands-on Solutions for a Mixed Environment. Wylie Publishing, Inc. 2005.
White Paper. Top 5 Strategies for Managing Linux. Lavanta. 2006.
Lyons, D. Computer Hardware & Software: Desktop Linux. Forbes. 31 August 2006.