Barriers to Desktop Linux Transition

The first time I installed Linux was on an old 486 with a floppy drive and keyboard that made a typewriter sound silent. Whilst this initial system was not the most functional, it sure was a learning experience. It gave you the feeling of flying a Sopwith Camel in stormy weather without your pants on; exhilarating and you could sure could feel the wind passing between your legs.

Today you can put a Knoppix CD into just about any machine and within minutes have a secure, functioning desktop complete with Web browser, office suite and many other useful desktop applications. The desktop is fast, elegant and most of your hardware just works. Whilst many people agree that a Linux desktop is more secure, stable and increasingly just as functional as its Windows equivalent there is still no discernable move towards a Linux desktop in the office environment. Unfortunately I believe there are still five significant interface, functional and most importantly ideological barriers blocking mainstream adoption:

  1. Office users are lazy and crave consistency.
  2. Office users only want to log in once.
  3. Office users always choose simplicity over functionality.
  4. Office users can imagine physical drives.

Unlike a geek an office user does not choose to use a computer just like they dont choose to go to work. Geeks crave choice, flexibility and can persevere with unwieldy processes as long as the functionality and integrity of the solution is maintained. Office users just want to get the job done and view terms like mount and root as just slightly rude words.

Office Users are Lazy and crave Consistency

As a Linux user I can choose from numerous operating environments, dozens of themes, a handful of office suites and thousands of other small helper applications that can make my life easier in one way or another. From my perspective this is great because I can use exactly the right tool for the job. However from a general users perspective this process is unwieldy as too much choice and customization just leads to confusion.

Mozilla and OpenOffice are beginning to provide standard set of productivity tools for the Linux desktop. However at a more fundamental level the Gnome/KDE debate is still dividing and diluting the desktop experience. This division, like equal poles on a magnet is forcing the desktop direction further away from a standard experience as both sides attempt to differentiate and outdo the other. Users cannot be expected to relearn their operating environment for the sake of a better underlying system. In this respect a Linux desktop must feel and act like its Windows alternative and should not require any change of practice from the user. This concept is not new and Linux distributions such as Linspire or Suns Java Desktop have spent a great deal of effort trying to emulate the Windows environment look and feel. Unfortunately where these products fall short is in their inability to seamlessly tie a number of applications/utilities into a seamless experience similar to Microsofts Windows/Office/Exchange solution.

Nowhere is this more apparent than in the Gnome/KDE battle for the desktop environment. Novell in their latest Desktop Linux release went to a great deal of effort to provide near identical environments for KDE and Gnome users. Whilst intriguing from a geeky point of view a lot of effort was wasted on a feature their target market (non-Linux users on office desktops) really could not care about. Resources could have been much better spent focusing on making a single operating environment the most user-friendly and familiar to these users. A very good example of this inconsistency is the Gnome/KDE File Save dialog box. Both Gnome/KDE alternatives are very different to their Windows counterpart yet in both cases they are significantly lacking user-friendly features. With the Windows dialog it is fairly straightforward to perform file management tasks and navigate local/network drives in a logical manner.

The differing dialog boxes also cause massive confusion when working between Gnome and KDE applications. I use Gnome as it is the most Mac-like of the two major environments. However Gnome does not have a decent CD/DVD burner application, the default Gnome utility is too basic whilst other Gnome alternatives are just way to complicated. K3B is an excellent burner application for KDE so I use this instead. Unfortunately when using K3B it feels tacked on to my system as the controls and dialog boxes do not match their Gnome equivalents. It takes me a little time to readjust my mouse movements before I feel fully at home in K3B and from a functional/aesthetic position the whole experience is just confusing.

Office Users only want to Log In Once

Within a networked environment there is an increasing number of network usernames and passwords the user must remember (not to mention change on a regular basis). Natively Windows eases this burden by attempting to reuse your username and password when connecting to a network service or printer. Alternatively in an Active Directory/Novell Network environment intelligent clients are available for automatically authenticating the user with servers, firewalls and various other network services. As a consequence a general user only has to log in once at the beginning of the working day and everything he or she may need is automatically at their disposal.

In a Linux environment this is not the case. A user first my login to X Windows and then manually connect to any network devices or services they may require. It is possible to automatically mount a network share on logon but this process rests on the script knowing the username/password beforehand and cannot reuse or store in memory the users credentials for later use. All of these tasks create barriers and frustrations for a normal user. Novell with their last desktop release had the perfect opportunity to remedy this problem with a Linux port of their very useful Windows Novell Client. Unfortunately for them they failed to take this opportunity and instead placed emphasis on Samba and their interesting but not completely useful iFolder product backed up by the standard range of POSIX based authentication mechanisms. The strange irony of this move was the existence of the open-source Linux Novel Client that all but mirrored the file sharing functionality of its Windows equivalent.

Required is an X Windows login plug-in for KDE/GDM that not only authenticates with a central directory but also mounts network drives and printers defined by information from the same network directory. Red Hats recent acquisition of Netscapes Directory System may signal the first serious move by a Linux distributor to provide user management services similar to those in the Windows environment (as Novell has obviously dropped the ball). Once a user can seamlessly move between Windows and Linux and back again without any obvious change to the services available to them can serious adoption of the Linux desktop can begin.

There are a number of issues beyond the simple development of an X Windows client that must be resolved. Of greater importance I believe is a rationalization of a Linux users Home directory. Presently this location stores ones personal files, program settings and often becomes a place for scratch files as well. Although poorly implemented Windows does attempt to separate user files from configuration information. This segregation is important in a networked environment where connection speeds are low and reliability below optimum (as is the case in many office environments). The system must be able to identify what information is crucial to pass down the wire to a client (such as program settings), what is preferred but not essential (cached mail and Internet) and what can be stored centrally for infrequent access (personal files). Asking application vendors to change their programming habits is asking too much, instead the network client should ensure the user organised their data in a way that suits the system. For example a roving home directory may look like the following:

/home/david -> Application settings downloaded during login and uploaded on logout.
/home/david/mail -> Mail cache on server (if using Unix mail system)
/home/david/files -> GUI wise this is the folder users will see as their home directory
/home/david/files/Documents -> Default document directory
/home/david/files/Desktop -> Desktop directory
/home/david/files/Network -> Links to network shares created during logon
/home/david/files/ -> Anything else (music, movies, photographs)

The clear distinction between settings and data would allow the network client to minimize bandwidth through the selective downloading of essential files. Alternatively selected aspects of a user profile could be downloaded/synchronized by the client based on a users preferences. This feature would be useful for laptop users who may only log onto a network occasionally for synchronization purposes rather than for any services need.