Linux

Linux



Towards Linux Desktop Comfort

or, Why Doesn't Johnny Run Linux?

Anyone got a picture of a Tux riding a tank?


   Hacker with bullhorn: "Save your money! Accept one of our free tanks!

   It is invulnerable, and can drive across rocks and swamps

   at ninety miles an hour while getting a hundred miles to the gallon!"


   Prospective station wagon buyer: "I know what you say is

   true...but...er...I don't know how to maintain a tank!"


   -- In The Beginning Was The Commandline, Neil Stephenson


 


 


[See also my Scale4X presentation on this topic]


Most of my non-tech-savvy acquaintances, if given a choice between a just-barely-working Microsoft Windows 98 system and a nicely purring but alien Linux system, will choose the Microsoft Windows system.


Odd though it may seem, the average Joe is comfortable with Microsoft Windows. The challenge facing desktop Linux is to achieve the same or greater level of comfort that Microsoft Windows enjoys.


Here are a few areas where Linux's comfort level needs to be raised before it can thrive on the desktop, plus links to ongoing work in these areas:


   Rapid Startup

   Usability

   Accessibility

   Pre-Adaptation

   Legacy Software Support

   Easy Application Installation and Updating

   Microsoft LAN Integration

   Drivers

   Plugability

   Availability

   Patent and Copyright Fears

   Peer Support

   Dogfood


Rapid Startup

KDE, Gnome, OpenOffice, the Linux kernel, and Firefox all take too long to start up. If you don't believe me, look at George Ou's benchmarks comparing startup times under three different operating systems on the $200 Linux desktop computer sold at Fry's (a large US retailer):


      win 96MB   win 352MB   suse 96MB   suse 352MB   Linspire 96MB   Linspire 352MB

   boot/login   50   25   94   55   132   107

   start OOo2.0   -   -   48   10   56   16

   start MS Word 2003   3   3   -   -   -   -

   CPU: 1.7GHz Sempron

   RAM: 128MB (32MB taken up by the onboard graphics), also tested with an extra 256MB of RAM installed

   OS: OpenSuse 10.0, Linspire 5.0, or Windows XP Pro sp2

   Desktop: KDE (not sure which version)


That system is more or less unusable as shipped due to the observed poor performance. (I'm not trusting George here; I verified this myself.) Presumably the similarly equipped system sold by Wal-Mart suffers as well. This gives Linux a bad reputation. Surely we can improve our performance on 96MB machines.


But given the software as it stands, surely retailers can configure their systems to perform well. To determine how much RAM OpenOffice 2.0 really wants, I benchmarked Red Hat 9 on a dual 650MHz Pentium 3 system using lwm in place of kde or gnome. Boot time and firefox 1.5 startup were constant at about 60 and 10 seconds regardless of RAM, but OpenOffice 2.0 startup time varied as follows:

   64MB   96MB   128MB   192MB   448MB   

OOo2.0 startup   41   28   21   15   12

Thus OpenOffice 2.0 should be given at least 192MB of RAM for best user experience on small documents; if Fry's and Wal-Mart could be convinced to equip their entry level system with 256MB of RAM instead of 128 MB, the systems would be a lot less frustrating to use.


(I did similar benchmarks on an Athlon 64 laptop, and was surprised to find that the Windows version of OpenOffice starts faster under Wine than the Linux version does when the system only has 96MB of RAM! Something's gotta be wrong there.)


Related links:


   Bootchart - Boot Process Performance Visualization

   wiki.ubuntu.com/BootCharting

   KDE

       One third of KDE warm startup time is in fontconfig?!

   Gnome

       Analyzing and Improving GNOME Startup Time (Oct 2005) "GNOME startup time is I/O bound, and is dominated by disk seeks. The proof-of-concept modifications proposed allow the reduction of GNOME startup time by close to 50%"

       $4500 bounty on improving Gnome startup time

       All hail the speed demons (re: Gnome, KDE, OpenOffice startup time work)

   OpenOffice.org

       OpenOffice 2.0 takes 5 minutes to save a 12MB presentation on a 256MB/1.2GHz machine

       Bdirect linking patch - Michael Meeks found a way to cut Openoffice warm-cache startup time from 4 seconds to 2; Ulrich Drepper blew him off, but Michael keeps on plugging

       performance-activities-overview

       OOo wiki page on Performance

       APPR (kind of like a bootchart for openoffice)

       Speeding OpenOffice Startup

   Linux

       Reducing OS Boot Times for In-Car Computer Applications

       CE Linux Forum: BootupTimeResources

       Linux: Boot Time Speedups Through Precaching

       initscripts-ng

       Suse supports parallel init scripts (anyone got a better link for this?)

       ubuntu discussion about Sun's SMF and djb's runit

   Firefox

       Browser speed comparisons

   Remote X (needed by thin clients like LTSP which run apps remotely via X)

       Firefox startup over remote X really really slow

       XCB: an X protocol C Binding

       XorgPerformance

       X Window System Network Performance (Packard/Gettys 2003)

   On faster application startup times: Cache stuffing, seek profiling, adaptive preloading - Bert Hubert, OLS 2005 ("Very preliminary experiments have already shown a four-fold speedup in starting FireFox from a cold cache.")

   2005 Linux Kernel Summit notes on desktop performance

   2004 Linux Kernel Summit notes on desktop performance

   Super SuSE (I added links to subprojects and the mailing list archive already, but it needs a general decruftification.)

   A little Linux can revive a pokey PC - Lou Dolinar, Newsday (also in LA Times), Jan 2006


Usability

As one user put it, "On Microsoft Windows, I know how to download, how to install software, how to find things, and how to kill programs that are misbehaving. I have no clue how to do that under Linux, even after using Linux on and off for weeks."


Related links:


   OpenUsability

   Better Desktop

   Linux Usability Studies by Relevantive

   The Luxury of Ignorance: An Open Source Horror Story by ESR

   Anecdotes about Evolution's usability by Nat

   My first 48 hours enduring Ubuntu 5.04

   KDE Usability Project

   Gnome Usability Project

   Ubuntu's UsabilityWishlist


Accessibility

Many tools (screen readers, speech recognition, braille displays) are available for Microsoft Windows and Microsoft Office to assist users with various disabilities. Those users are now relatively comfortable with Microsoft Windows.


Case in point: OpenOffice. Some blind users are worried that OpenOffice will be hard to use. Sun has put lots of work into making OpenOffice fully accessible but admits there's more to do. They're planning to use the 2.0.2 release of OpenOffice to address a few issues in OpenOffice, and they're working on an open source tool called Orca that should make many users happy. (Especially since it replaces packages that cost $500-$1000.)


Related links:


   Linux Accessibility Resource Site

   FSG's Accessibility Workgroup

   BBC's "My Web for Linux"

   The FSF/Unesco Free Software directory : Accessibility

   The Gnome Accessibility Project

   The KDE Accessibility Project

   Peter Korn's blog, and in particular, Massachusetts, Open Document, and Accessibility

   Orca


Pre-Adaptation

Users will be more comfortable switching to Linux if the software they use every day on Windows is also available for free on Linux, or if the formats they use daily can be understood by free software. Robust, free office suites and/or office suites that support open formats like OpenDocument can really help here.


Related links:


   Wikipedia: OpenDocument

   OpenDocument Fellowship

   Open document formats and the path to world domination (lwn.net)

   Spread Firefox

   The Open CD


Legacy Software Support

Linux, thanks to the Wine project, can run Microsoft Office and several other non-Linux applications. Wine is still working on being able to run more 'must-have' applications properly. The more Windows applications run on Linux, the more comfortable people will feel switching. This is an area where a little effort could have a big impact; if your office needs a Windows app that doesn't run right under Wine yet, you might consider paying Codeweavers a few grand to make it work.


Related links:


   WineHQ

   Codeweavers

   The Wine QA Project

   Shipping Your Windows Application for Linux using Wine (ISV outreach from the Wine project)

   Gimp can now run Photoshop Plugins under Linux - since Photoshop plugins are separate processes, it was relatively easy to get this working with Wine!


Easy Application Installation and Updating

In a way, Linux has not fragmented at all. Everybody's using essentially the same kernel and libraries. However, to users, what matters is that installing third-party software should be as easy as breathing -- and the software should be kept up to date, so they don't have to worry about security holes in old versions.


In this sense, Linux is highly fragmented; there is no universally accepted way of packaging third-party Linux software for sale or download, as each distribution requires slightly different toolchains or packagers. The LSB is an effort to solve this problem; their Desktop profile should make it possible to package the most common desktop Linux software portably sometime in 2006.


But above and beyond the current LSB goals, we should enhance updaters like apt-get, yum, and up2date to treat LSB packages as first-class citizens. It should be possible in Debian to use "apt-get install" to install or upgrade apps built as LSB packages, and it should be easy to add third parties' repositories to the network updaters.


Distributions can help by making sure they're LSB-compliant. Developers can help by packaging their applications as LSB packages and giving feedback to the LSB project.


Related links:


   The Linux Standard Base

   The Linux Standard Base: Desktop

   Make dapper LSB 3 compliant

   Linux Problems - notes from the autopackage developer on binary compatibility challenges.

   Alternative installation/packaging schemes:

       Matrix comparing various alternative installation/packaging schemes

       autopackage - what to do when you absolutely, positively can't wait for the LSB. (Note: some people, including myself, consider autopackage to be irritating, wrong, and impure in some ways, but it seems to fill a genuine need.)

       klik - see also the slashdot article from Jan '05. Nice central idea, but lacks most of the binary compatibility ideas from LSB or autopackage.


Microsoft LAN Integration

Linux should be able to drop into Microsoft LANs and use the same passwords, files, email, and calendaring. Sadly, it's not easy yet.


Related links:


   In Pursuit of Good Desktop Linux: Network Neighborhood and MS Windows Partitions (Mozillaquest, Aug 2005)

   Samba (Samba is both a file server and an Active Directory client and server)

   Linux CIFS

   recent Linux CIFS bug discussion

   KDE's Networking with Windows -- you have to configure LISa with the IP addresses of all windows file servers?!

   SUSE Interoperability Project - not much there yet

   Evolution - a Linux client that supposedly lets you access nearly every feature of Microsoft Exchange Server, including public folders


Drivers

Linux has good driver support for the most common devices, but new devices still often don't get Linux drivers until the community writes them.


Wireless, sound, and video drivers are all somewhat problematic; many drivers exist, but things still don't quite Just Work.


   LWN's writeup about the April 2006 Wireless Networking Summit

   Wireless: One small step towards a more perfect union (in which John Linville agrees to become the wireless maintainer! (11 Jan 2006) See also his posts summarizing the situation, with subjects like "Wireless: recap ...")

   State of the Union: Wireless, Jeff Garzik, 6 Jan 2006

   Linux and wireless networking, LWN, 11 Jan 2006

   Where Linux 802.11x support needs work (Jan 2005)

   Wireless Tools for Linux (with links to drivers)

   ndiswrapper - use Windows drivers on Linux (even though it's a bad idea)

   Kernel Summit 2005: The hardware vendors' panel

   OSDL Open Source Driver Summit Minutes (Feb 2005)

   OSDL driver developer resource site

   A shot across the bow (Nov '05) -- binary-only Linux drivers' days may be numbered. (The followups make interesting reading.)


Plugability

It's pretty easy to install printers or plug in network cables under Windows; usually, the system doesn't even ask you any questions. In particular:


   if you plug in a USB camera, printer, or scanner, or an Ethernet cable, it should work without asking you any questions and without requiring a reboot

   if you leave a USB device powered off when you boot, the system should not ask you whether you want to unconfigure it

   if you close your laptop, it should hibernate or suspend properly (ok, this isn't quite pluggability, but it's close)


Linux isn't quite there yet. These issues were part of what made Red Hat 9 unusable for a friend of mine.


Related links:


   Linux Desktop Printing Summit summary 1, summary 2 (2006 Apr 15)

   Pavel reviews suspend2 and finds it unready for merge (2006 Feb 19)

   Nigel gives up on trying to merge suspend2 (2006 Mar 7)

   Common Power Management Framework

   Stateless Linux

   Gnome's Project Utopia

   LinuxPrinting.org

   SANE - Scanner Access Now Easy

   DBus

   HAL

   udev

   Linux Hotplugging


Availability

Major computer vendors do not prominently market Linux desktops.


Fry's does sell them occasionally, but always puts Linux on computers which are slower than any they sell with Windows.


Related links:


   Linux lovers hit hard times as home users (4 Nov 2005, ZDNet UK)

   Linux PCs: Customer service or lip service? (2 Nov 2005, cnet)

   How Dell repels attempts to buy its 'open source' PC (6 Oct 2005, The Register)

   Hunting the Wily HP Linux Laptop (Aug 2004, kegel.com)

   Froogle search for linux desktop ghz (most valid hits are either the HP dx2000 or Microtel.)


Patent and Copyright Fears

SCO sued Linux users and vendors a few years ago. It appears their lawsuit was without merit, but people still fear some sort of legal action against popular open source projects. In particular, some potential users of the Linux kernel, OpenOffice, Wine, and Mono have expressed fears that copyright or patent issues might become unpleasant. As one project leader put it, "I lost a big customer because they were afraid Microsoft would sue."


Although small customers are generally unaffected by this issue, the largest potential customers are more likely to be worried. Risk management and indemnification might be needed to quell these fears and allow the largest customers to adopt Linux without fear.


Related links:


   Open Invention Network (see press release)

   OSRM

   SFLC

   OSDL's Patent Commons

   IBM - patent pledge

   Sun - royalty free patent license re OpenDocument

   Novell - indemnification

   Novell - patents

   Red Hat - indemnification

   Red Hat - patents

   Nokia - patents

   Why Mono is Currently An Unacceptable Risk (Seth Nickell, May '04)

   Bruce Perens' speech at WSIS ("... they are using ineffective patent pools to deceive legislators that the problem is solved for Open Source and that laws supporting software patenting can now go ahead. Planning to defend Open Source with a patent pool is like planning to hold off the avian flu with a box of tissues.")


Peer Support

It's hard to ask your neighbors for help with Linux if they don't use it already. It's also hard to ask distant Linux-savvy friends or relatives for help if you can't easily give them a desktop session remotely -- and most remote access software is notoriously difficult to keep running if the user you're trying to help is behind a firewall.


To increase the pool of helpers, we should encourage the use of Linux in education; maybe Joe User can at least ask the smart kid down the block, if not his neighbor. And to increase the number of friends and relatives each helper can reach, we should encourage the development of easier ways to use things like X, VNC, and NX to control machines behind firewalls.


Related links:


   The Case for Linux in Universities

   The Vino Remote Desktop Project

   Remote Desktop Administration Using Vino

   vnc faq re firewalls

   Dan Stromerg's VNC page


Dogfood

Companies that have a strategic interest in the success of Linux on the desktop should themselves try to migrate to Linux on the desktop, and help solve problems this uncovers. (This is called eating your own dogfood.)


Q: What OS do the CEOs and CFOs of IBM and Red Hat run on their laptops? If the answer isn't "Linux", why not?


Related links:


   Jan 2004: IBM plans move to Linux desktop by end of 2005

   Jan 2005: IBM choking on own dogfood?

   Inside Novell's Linux Migration (Oct 2005)


Related pages

Here are a few other people's takes on the subject:


   Aus und Vorbei - Linux adé (linuxforen.de - March 2007) (His complaints: poor photoshop support, no dreamweaver support, no smartphone sync, Officejet T45 printed slower and poorer, performance worse with 256MB system than Windows XP. Fair complaints, IMHO.)

   A Challenge for Linux developers Chin Wong, Manila Standard Today (July 2006)

   What Sucks About DEs, pt. I: Ubuntu's GNOME, Thom Holwerda, OS News (June 2006)

   Out the Window: Are Linux operating systems as easy as promised? We test them out, Mark Golden, WSJ (May 2006)

   10,000 bugs away from World Domination, Keith Curtis (10 Apr '06)

   The 800-Pound Gorilla: Can anything threaten the Microsoft desktop empire? Redmond Magazine (Mar '06)

   My notes on the Linux Desktop Architects meeting at OSDL in Dec 2005

   Dan Gilmor: Still Looking for a Desktop Linux (21 Nov '05)

   A. Lizard: What's wrong with Linux? (18 Nov '05)

   Matthew Newton: Everyday Linux gripes (11 Nov '05)

   Slashdot: What Does Open Source Need for Mainstream Desktop? (2 Nov '05)

   Greg Reiz: Linux Thoughts (1 Nov '05)

   John Terpstra: Stopping Linux Desktop Sabotage (18 Oct '05)

   Asa Dotzler: Linux not ready for the desktop (11-31 Jul '05)

   W. McDonald Buck: Corporate Desktop Linux - The Hard Truth (Feb '05)

   OSDL: user survey summary, comments from user survey

   Desktop Linux: Where Art Thou? (Bart Decrem, Apr '04)

   Linux on the Desktop Report (Mitch Kapor, July '03)

   I have a Linux Desktop dream by Lasse Christiansen (June 13, '03)


Comments and corrections welcome. Contact the author at dank at kegel.com

Last Change 15 Mar 2007

Copyright 2005, 2006, Dan Kegel

[Return to www.kegel.com]