Subscribe to
NSLog(); Header Image

Crufty UI… Or Not

There's an interesting article here on le blog de Matthew Thomas that talks about "interface cruft." Unfortunately, I don't quite agree with all of his ideas, but his article did what I consider as the primary purpose of a good article: it sparked a lot of thought in me, the reader (and in him, the writer, I imagine).

His first beef is with the fact that computers don't automatically save documents for you. He goes so far as to say that computers should "pick a sensible name for a document, and to save it to a person's desktop as soon as she begins typing." Huh? How, given absolutely no context, should software determine what a "sensible" name is? Truth of the matter is that the computer already does this, typically: "Untitled 3" is the name of the BBEdit document I'm typing this in.

Users like to pick names for their files, and allowing the computer to do so would be ineffective and perhaps even insulting. Would you like it if the computer named a file on your desktop "More Drivel" before you'd even produced said drivel! Why, it's like a gigantic whap in the face with a wet haddock!

Should software auto-save? Y'know, no. Not all the time. Sometimes I open a TextEdit window to paste something from a Web site or an email (like directions to someone's house), change the font to a size suitable while steering a 3400 lb. vehicle at 55 MPH, and print. If the damn software automatically saved the document, I'd have to go through the steps of then deleting the document, from wherever the computer guessed to place it given whatever name it guessed to give it. Sorry, no... Unless that folder is ~/.Trash, I'll pass.

I'll pass in lieu of allowing the applications to do this via a preference, and only after I've initially saved the document somewhere. Word has this, and auto-save is nice. But in some other applications, I like to control saves. Photoshop, for example, is not an application that can save in an instant as Thomas states. Ever worked on a 300 MB image with 120 layers? Didn't think so... Furthermore, all of this "auto-saving" would force a redefinition or reapplication of the "Revert" menu option I like to use when experimenting with a base graphic in Photoshop (to keep a consistent example). System-wide auto-save application behavior? No thanks... A good thing for developers to implement on a per-application basis via a user option? Sure, I'll buy that.

Thomas moves on to his second example of "Interface Cruft:" the "Quit" option. He says that, because several applications can be run at once, and because applications can launch quickly, the Quit option is senseless. Unfortunately, his argument is the senseless thing here. He forgets two key realities>

  • Not everyone defines "quickly" the same way, and the same action on the same hardware can take varying amounts of time depending on outside factors.
  • Apple is pushing the "give the user a blank document" ideology on Mac OS X to avoid the "which application am I in?" wonderment.
  • Those two facts - but mostly the first - are why this argument is easily defeated.

    Take Terminal, for example. I click its dock icon, and a blank document is presented for me. I close the window and Terminal does not quit. Thank goodness... it takes four seconds for it to launch and give me a blank document, but only one second to give me a blank document if it's alread running. I can only imagine that if my computer's disk was under some massive file-moving, bit-shuffling attack of some kind (say, by encoding an MPEG stream or who knows what), such launches would be even slower. And what of people running Mac OS X on older computers? Mine's fairly recent, and I doubt I'm the only one that likes shaving three seconds off of something I do a few billion times a day.

    But I don't even have to concoct an example as "willy nilly" as that to prove my point. How quickly does iCal launch for you? How about DVD Studio Pro? Photoshop? Those apps take longer than Thomas' lame (read: arbitrary) "five second" rule. I have Photoshop running right now, sucking up nearly zero processor cycles. If i were to run low on RAM, its ram would be paged out. That's elegance, not cruft. Hell, StuffIt Expander is always launching, because the 1/2 bounce it takes to launch is wasted time bounce as far as I'm concerned. I'll quit it when I'm darn good and ready, thank you very much.

    "Quit" may not be the best way to extend the "desktop" metaphor, and perhaps there's a better way to more closely match the user's expectations (we might have to wait for that mind-reading Bluetooth device), but "cruft" this is not. Just because something has been around for a long time does not make it cruft.

    Thomas' third point discusses open/save dialog boxes. I have little to say on this topic. Sometimes I like the fact that open/save dialog boxes need not represent the same view(s) I have open on my desktop. Why shouldn't I be allowed to save a document into a folder not visible (which is not even the same as "not open")? I like being able to save files into ~/Documents even though the only Finder window I've got open is pointing at ~/Sites/, for example.

    Do I think that Apple's Open/Save dialogs could be done better? Yes. I'm not a big fan of the column layouts: I prefer the list-view-like dialogs I had in Mac OS < X. I think Windows does a better job with its open/save dialogs, allowing varying views. Why shouldn't we be allowed to have a "Finder in a dialog," switching between icon, list, and column view? Custom icons pasted on folders do little at 16 x 16, which is all we get in current open/save dialogs. The fact that some users may never see column view except when in open/save dialogs is disconcerting - why should "browsing files" be a different UI?

    Apple would do well to overhaul this little section of the OS. They could do so without breaking much - all I'm asking for is for the column view to be swapped out in place of a more customizable view. The other widgets can remain the same. But again, just because something has been used for awhile, does not make it "cruft."

    I largely agree with much of his fourth point, which discusses "cruft" in Windows. I don't look at this as "cruft" either, but simply bad design. Given that I disagreed with the three points in which he talks about the Mac, and agreed with the one in which he talks about Windows, I took a step back to see if I wasn't being a Mac bigot. Conclusion: I'm not. The Mac is simply better designed. Heck, that's one of the reasons why I use it, right?

    6 Responses to "Crufty UI… Or Not"

    1. Sir, I have a couple of questions.

      1. Who on earth is this "Thomas" fellow?

      2. Why is he pretending to have written my essay?

      Once that's settled, I'll gladly explain the more substantive mistakes in your criticism.

    2. Typo was fixed some time ago. Substantive? Or substantial? Anyway, wy all means... everyone with whom I've spoken agrees with me, but hey, go ahead. Throw a TrackBack if you do it, too...

    3. sub.stan.tive (adj) 1. Substantial; ... Aaaanyway ...

      The mistake you made with regard to “Quit” is not unique to you. Several people who e-mailed me took the same approach (which, perhaps, indicates a usability problem in my essay). That is: you assumed that you could take an existing program, remove Quit, and make *no other changes*, and it would still be just as usable. Of course that is not the case.

      When porting an interface design from MS Windows to Mac OS, you have to do a lot more than just changing “Exit” to “Quit”. And when porting an app from Mac OS to my imagined system, you’d have to do a *lot* more than just removing “Quit”. Specifically, you’d have to split up today’s monolithic, slow-launching “applications” into dozens of near-instantly-launching viewers and editors, accompanied by hundreds of accessory programs. DVD Studio Pro and Photoshop, as we know them, would cease to exist.

      Your disagreement with auto-saving is more amusing, because it demonstrates a defiance of history that is probably more brash then you intended. History, as you know, is whatever happened since the invention of writing. And for about 4975 of the past 5000 years, when someone did some writing (on clay tablets, or stone, or papyrus, or paper, or whatever), the default behavior was for it to *stay* written. If you wanted it to be deleted, you had to chuck it in the Trash.

      I agree, sometimes when you create a document, you don’t want to keep it. But it's only in the past 25 years that personal computers have changed the default behavior of written material — from assuming that what you create is valuable, to assuming that it is worthless. With most personal computers, you have to go to rather ridiculous lengths (“File”, “Save”, choose a folder, type a name, “Save”) to declare that your writing *isn’t* worthless.

      That isn’t because of any fundamental change in humans’ artistic ability — that they suddenly started creating really crappy stuff. Rather, it’s because of hardware constraints in the 1970s and early ’80s (slow disks and no multithreading), constraints which are now largely no longer an issue. Certainly there are exceptions, such as your 300 MB Photoshop file, but those exceptions shouldn’t be the tail that wags the dog. (The fear caused by auto-saving being a pref — which might have been turned off while you weren’t watching — would, in my view, be worse than not changing the current behavior at all.)

      Unfortunately, it seems your reasonable disagreement with those two points led you into an entirely unreasonable disagreement with automatically choosing a filename. Saving a document as “More drivel” is, obviously, a straw man argument — an automatic naming algorithm would never do that. Unless, of course, it was an article, story, or photo in which you’d put the heading “More drivel” at the top — in which case that is probably *precisely* what you’d want the file to be called. 🙂

    4. Crufty UI

      Erik Barzeski has some sensible reactions to Matthew Thomas’s article. I think there’s a deeper UI principle here, almost a quality without a name. It’s about presenting the right abstraction to the user. Of course the computer should...

    5. Thomas is completely correct that it sould be absolutely impossible to lose a single key-stroke on a computer. That we have not gotten to that point by 2003 is obnoxious. These files obviously do not have to clutter up your primary folders. They can easily be hidden away in some temp directory.

      As far as Quit goes, I'm not sure we're ther yet. There'd need to be some sort of "hide" function as well as a graceful way to manage app memory. I've got 512 MBs and still get very nervous when I have a bunch of apps "un-quit".

      MacOS open/save boxes are a bit confusing to me.

    6. Like my Crufty UI rebuttal, offers a nice rebuttal at this location. My mom understands save and open. My mom also understands how to use iCal and iPhoto (which don't really have "Save" and "Open" in the traditional sense…...