Recently I decided it might be easier to install a recent libxml on Linux rather than try to figure out how to get one on the Mac. I’d forgotten my password for the Linux box I hadn’t turned on in about half a year, and I didn’t seem to have it written down anywhere, so I decided I might as well upgrade. Linux is clearly improving, but is equally clearly not ready for an end user yet. If you like compiling and installing libxml from scratch, Linux is for you. If, on the other hand, “compiling and installing libxml from scratch” is unintelligible techie gibberish, it’s not.
I started by trying to install the latest and greatest Ubuntu, 6.10, Edgy Eft. No go. I got about halfway through the install only to be presented with the flashing underscore of death. This happened twice. I was worried about hardware problems, but I did manage to successfully reinstall 5.04, Hoary Hedgehog, the release I’d had on the same box previously.
I then tried to upgrade to 5.10. No go. I couldn’t find ISOs anywhere, and the upgrade instructions didn’t work. Apparently Ubuntu has pulled crucial files off their web site. I bet you can upgrade from Windows 2000 to Vista though. Ditto for Mac OS X Jaguar to Leopard.
I then downloaded ISOs for 6.06, which is at least still supported. This installed, though my father couldn’t have done it. (/dev/hda1? What’s that?) Setting up partition tables has improved since the early Debian days, but we still shouldn’t be asking users to do it at all; especially when there’s a perfectly good Linux partition set already installed on the hard drive. Of course, you shouldn’t erase the user’s data when you upgrade, which is exactly what the easy install would have done. Thankfully I’m tech savvy enough to decode all this, but I really shouldn’t have to.
Once I finally got everything up and running, I began installing various packages like Apache and PHP. This is actually easier than it was on my Mac, but only because I didn’t stick with Apple’s default version of Apache. On a Mac, Apache is a checkbox item. It’s a little more complex on Ubuntu. I also had to figure out a way to transfer and share files between my Mac and the Ubuntu box. This required installing more software (SSHD and netatalk). On a Mac or Windows machine, this would already be installed and ready to turn on.
Once I finally got it all configured, I’m left with a system that has clearly improved and is equally clearly not ready for prime time. Ubuntu still can’t handle my 1600×1024 widescreen monitor (Windows and the Mac both can). I’m sure there’s a way to setup X to make this work. I’ve done it before; but right now I don’t have time. Instead I’ve just chopped off the left and right sides of my monitor into big black bars.
The networking is better than it used to be, but still not nearly good enough. When I accidentally booted up without the Ethernet cable plugged it it couldn’t find the network. That’s natural enough. However. once I plugged the cable back in, Linux still coudln’t find the network. I had to reboot before it would realize it was reconnected, and this is on a wired desktop. I can only imagine how it behaves on a laptop with a spotty wireless connection.
The default menu layout has improved, but it mixes up menus with buttons, and requires you to navigate a hierarchical menu to find anything.
The file system view (Nautilus?) is still a disaster, but then that’s the case on Mac OS X and Windows too these days. File system interfaces reached their apex in MacOS 9, and have only degraded since then. This probably won’t improve until we abandon file systems completely, perhaps sometime in the 22nd century at the rate we’re going.
The screen savers are very pretty (My cat Marjorie loves them a little too much and almost pushed the monitor on the floor while batting at them) but the desktop itself uses very funny fonts, that seem to be about twice as wide as they are high.
Simple dialogs like the Synaptic Package Manager display too small by default so some of the content is chopped off until you resize it. You’d never see something like this on a Mac, and usually not on Windows. There are lots of other little annoying inconsistencies throughout the package manager , like menu items that bring up dialogs but don’t end in …. And while I’m on the subject of the package manager, why not just call it “Package Manager” or “Install Software”? What, exactly, does “Synaptic” tell anyone?
Another example: setting up a shared folder with Samba requires a non-standard file dialog that confuses opening and adding a file.
There are lots of glitches like this throughout the user interface. Programs don’t seem to follow any coherent guidelines. Every program goes its own way. I’m not just picking on a few bad programs, by the way. Almost every single program, dialog, or menu item I’ve run in just a couple of hours has had multiple serious issues of one kind or another. In fact, in this article I’m cherry picking just a few of the dozens, perhaps hundreds, of problems I could point to.
Some things clearly have improved. CDs now mount automatically. The network was detected when I installed without asking me for anything; but a lot of stuff still doesn’t just work; and what does work is quirky and weird. It’s not that applications don’t act like Mac applications or Windows applications. It’s that they don’t act like each other.
I’ve heard it claimed that Linux is good enough for users who just want to browse the Web and write simple office documents. That’s false. It clearly isn’t. It probably wouldn’t take too much effort to put Linux in a usable state; but I see no evidence that anyone is doing this. The entire desktop UI needs a talented and knowledgeable redesign. This is going to have to extend into all bundled applications, and I suspect some toes are going to need to be stepped on and some applications forked when their developers refuse to follow basic principles of user interface design and consistency. Until that happens, tasteful Unix geeks everywhere are going to continue to buy PowerBooks and run Mac OS X.