2007-02-26

F/OSS Challenges

I got a printer for my system today, a process which highlights some of the major weakness of F/OSS that has to be improved upon if it is to ever replace commercial software.

Let me compare three processes. The first process is buying a printer (or WiFi card or video card or ...) for any Windows-based system:

  1. Decide what I want in terms of functionality.
  2. Go to the computer shops/online venues/whatever and pick the hardware that has the functionality I want at the best price.
  3. Take my purchase home, attach/install/whatever to my system.
  4. Optionally insert the installation CD.
  5. Enjoy my new purchase.
The second process is doing the same thing for a modern Apple system (changes are highlighted):
  1. Decide what I want.
  2. Go to the shops/whatever and pick the hardware that has the Mac/OSX/whatever logo on it at the best prices.
  3. Take my purchase home, attach/install/whatever to my system.
  4. Optionally insert the installation CD
  5. Enjoy my new purchase.
The third is doing it for a modern Linux distribution (again modifications are highlighted):
  1. Decide what I want.
  2. Go online and research which devices are supported by which distributions/kernel versions/whatever of Linux I'm using.
  3. Print off a list.
  4. Go to the shops and hunt high and low for specific devices.
  5. Find none of them.
  6. Record, instead, devices which seem similar to devices I've found through my research.
  7. Go back online and research further, asking questions in the right forums, dredging through Google page after Google page, etc.
  8. Make an educated guess.
  9. Go back and buy the hardware that I think might work.
  10. Take my purchase home, attach/install/whatever.
  11. Optionally monkey for hours with cryptic settings in /etc files.
  12. Enjoy my new purchase, hopefully getting at least 50% functionality from it.
Can you guess why Linux isn't taking off on the desktop?

I just went through the process outlined above to buy a printer. Openprinting.org listed almost 700 printers (!) that "work perfectly" with Linux/CUPS. I found 7 of them, all of them seriously overpriced models for light occasional, non-professional use. In the end I settled on an HP Deskjet D2368 because the D2360 was listed as being supported and the whole D2300 Series (minus the D2368) all worked from the same driver. Of course the printer is supposed to go to 1200DPI and I can only get 600 from the drivers (hence my "50% functionality" crack). Luckily I'm not really all that interested in 1200DPI work right now.

Now I'm willing to put up with this nonsense because a) I can, and b) I'm just bloody-minded enough not to give in to Unka Bill's or Cousin Steve's seductive call to the dark side. But me? I represent likely less than a 1% fraction of computer users. An average computer user wants stuff that Just Works (for any sufficiently broad definition of working).

And the real kicker? HP is considered one of the good guys for really supporting F/OSS! We're not talking secretive half-open solutions like Epson inkjets or NVidia video cards. We're definitely not talking about all-closed solutions like Lexmark. We're talking printers that have fully-documented command languages and open-sourced drivers!

I keep hearing people in the F/OSS community blaming pathetic hardware support under Linux on hardware vendors who don't publish their interfaces. This is, not to put too fine a point on it, utter bullshit. HP, as I said, is one of the so-called "good guys", yet the open source drivers do not offer good support. (There is, for example, as far as I can tell, no head cleaning interface either. I'm really not looking forward to handling the inevitable head clogging down the road.) Until this issue is faced up to instead of scapegoated away, Linux will remain a fringe market once and for all.

Linus? How about a stable ABI for a change?...

2 comments:

Anonymous said...

HP's drivers, HPLIP, do support a fairly featured toolbox including head cleaning support. Make sure you install the latest release for all the various tools and support for your printer.

Michael T. Richter said...

I just downloaded the latest HPLIP and went through the nightmare of installing it. It still only gives 600DPI as the maximum available resolution although the printer can go to 1200x1200 and even 4800x1200 in photo mode.

At least it has the head cleaner, and that sort of stuff, although I'm a little nervous that the automatic setup GUI scripts that came with it couldn't successfully detect my printer even though CUPS could and can print to it....