Drowning in Aqua

This article first appeared on IBM developerWorks.

Apple's new user interface doesn't hold water

Peter Seebach (crankyuser@seebs.plethora.net)

April 2002

Apple's new user interface, Aqua, reads like a checklist of things that the classic Macintosh interface got right, and everyone else got wrong. Aqua gets most of them wrong.

Indistinguishable gumdrops

The most eye-catching thing about Aqua, the UI for Apple's OS X, is the cute little gumdrops it uses to represent window controls (close, minimize, maximize). Depending on the window being used, any of the three buttons may be non-functional; this is denoted by drawing the graphic in gray.

In normal windows, the buttons are colored whenever the window is active. In pop-up or "floating" windows, they are colored only when the cursor moves over them. When the mouse moves over the buttons in a normal window, handy icons appear to tell the user which button does what.

In pop-up windows, all you get is the color-coding (as in Figure 1). When the mouse leaves a normal window, the gumdrops stay colored until another application is selected -- and even then, they still regain their color instantly when the mouse moves over them.

This is almost perfectly wrong in every way I can imagine. Small windows can't be used unless you've developed the habit of knowing which of the three gumdrops is which. A gumdrop that isn't colored may indicate that the function isn't available, or that the cursor isn't over the gumdrop. Generally, if it's available, it'll be a slightly darker gray -- but not so much darker that it's always easy to see which is which. In practice, when a window isn't the foreground window, you have to move the mouse cursor over the gumdrops to see what your options are.

The buttons should always be colored, and should always include their representative icons. Mouse movement should not be required in order to determine which interface widgets do what. In the early Mac interface, Apple was quite consistent about ensuring that an unavailable interface widget was always visually distinct, no matter where the mouse was.

Last but not least, Apple has moved all the widgets together -- precisely the wrong thing to do. When confronted with a Windows machine, Mac users used to complain at length (and rightly so!) that the "maximize this window" button (which moved all of the controls away from the mouse) was immediately next to "close this window" button. Thus, closing a window without changing the size at which it would next appear was frequently a three-click process, with a lot of mouse activity. Apple has dutifully copied this defective behavior.

A ghost of a chance

In the old Mac interface, an inactive window was visually distinct from an active one, but was still visible. In Aqua, the title bar of an inactive window is made partially transparent. If that window's title bar happens to be on top of a fairly stable background, it's generally pretty readable, but if it's in front of another window, it can easily become impossible to read either window's title bar. Some people claim that this is a "feature" because it allows you to see what's behind a window, but in reality, you can't see what's behind it well enough for it to be of any use.

Likewise, pop-up dialogs aren't separate boxes, but semi-transparent things that drop down from a window's title bar. Menus, too, are now just a bit transparent. Enough to annoy, not enough to be useful. No one I've talked to has ever taken advantage of this valuable opportunity to examine something obscured by a menu. If the ability to see what would have been obscured by an opaque menu fills a much-needed void, no one appears to be benefiting from it. In addition, some users find these menus much harder to read.

Similarly, window borders are now rendered with drop shadows. This looks very nice, but it means that there are no corners to grab, except for the menu bar. And when I tested the behavior of the "maximize" button, by maximizing a terminal window and restoring it to its previous size, it resized to 79 columns -- rather than the original 80. Under the old UI, there would have been a widget in the corner that allowed me to grab and resize. Now there isn't -- there's just a drop shadow.

But of course, all of these issues could have been overlooked. The true killer is that the transparency, like the color-only gumdrops, is not made optional. There's no way for the user to say "thank you very much, that was pretty, but I don't need it." You can't have real window borders, either. A third-party hack allows you to turn the drop shadows off, leaving you with entirely borderless windows -- hardly a substantial improvement.

Docking procedures

Then there's the Dock. This feature was first introduced in the classic NeXT user interface, and was imported into the new Mac interface. It lost quite a bit in the translation. The Dock was a convenient and consistent way to have all of your most frequently used applications available in one place. However, the UI designers at Apple systematically went through it, and destroyed every feature that made it an excellent tool.

Placement is everything. In order to give users easy access to these frequently used applications, the Dock originally had a fixed collection of icons, holding only those things that the user placed there. Furthermore, it started in the upper-right corner of the screen, and went down from there. Adding a new item to the Dock didn't affect the positions of the other items in the Dock. Running applications and minimized windows got their own separate organizational scheme, and their icons were placed starting at the lower left of the screen. This worked fine.

With OS X, when you start an application that wasn't in the Dock before, an icon for it is added to the Dock. The Dock starts out horizontally centered on the bottom edge of the screen. You can move it to the left or right edge of the screen, in which case it will be centered vertically. Since the Dock always stays centered, adding new programs moves existing ones around. Especially awful is that the trash can -- one of the single most frequently used interface widgets -- has no fixed location, and cannot be counted on to be in one corner of the display. Under the old MacOS, you could at least put the trash in the corner; with OS X, you have no such option. (Of course, third-party utilities solve this.)

The combination of running and frequently accessed applications turns out to be a nightmare. If I have a program running and it's got an icon in the Dock, how do I know whether the icon will remain if I close the program? I just have to remember whether I dragged it there before I started it.

The inability to control placement in absolute terms is nightmarish, and the way in which objects move when other objects are added to the Dock is disconcerting at best. Once again, third-party hacks help -- one of which allows the Dock to be anchored against the corner, rather than in the middle of the screen. In addition, it's good to see that the magnification effect (where objects grow as the mouse nears them) is optional.

Misleading labels

Finally, the most beautifully and perfectly wrong aspect of the OS X interface: The application menu. OS 9 had a menu in the upper-right of the screen -- carefully distinguished from the normal menus for programs -- that allowed you to select which application you wanted to run next, as well as allowing you to hide or reveal the windows associated with various applications. Wonderful.

On OS X, this has been split into the Dock (click on an application to bring it up and to the front) and a menu. The menu invariably has one or two options specific to the program (such as "Preferences") and a handful of options that have nothing to do with the program, such as "hide others" or "show all."

This is abysmal. Disgraceful. Wrong. Stupid. Beyond comprehension. For example, if I'm running a program called "Terminal," there will be a menu with the heading "Terminal" just to the left of the File menu. Of the menus provided, this will be the only one that is not specific to the application I'm running; instead, it's a menu that doesn't vary from one application to another, so it has nothing at all to do with the program called "Terminal." The label is simply incorrect.

The new menu contains the same things in every program. Some of these items have been moved from the places where users were accustomed to finding them. One of them is a new feature, which doesn't seem to belong where it is.

The first victims of the relocation program are "About [program name]," "Preferences," and "Quit." On the classic Mac, "About [program name]" was always on the Apple Menu. It was probably moved during the early revisions of Aqua, when the Apple menu didn't exist; it should have moved back. "Quit" has been on the File menu since the first Mac emitted its hesitant power-on beep; likewise, "Preferences" has been on the Edit menu for well over a decade.

The next victims are the "Hide" and "Show" menu options, which used to hide the windows for inactive applications, or show them again. These used to live on a special menu that was kept on the right edge of the screen, where it was clearly distinct from the application's menus. This menu was also labeled with the name of the application, but, since it was on the far right of the screen, it didn't get in the way, or confuse users so much.

The new feature is the "Services" sub-menu. This sub-menu probably should have been put in the Apple menu, since it's a system feature, and not related to specific applications at all.

As an added bonus, the new menu's name changes every time you change to a new program, so the menus to its right aren't in the same places all the time. Experienced Mac users generally took advantage of the knowledge that the File and Edit menus were in exactly the same place in every program, all the time.

Summary

The Aqua interface isn't all bad; there are many quirks and features, I'm sure, that have improved. However, Aqua stands today as a tour de force, a grand showing of just how unbelievably awful an interface can be.

This week's action item: What's the interface "feature" that annoys you most? Is there a way to turn it off? A third-party hack that disables it? If it's not optional, why do you think it wasn't made optional?

Resources

About the author

Peter Seebach has been having trouble navigating through badly designed pages since before frames and JavaScript existed. He continues to believe that, some day, pages will be designed to be usable, rather than being designed to look impressive. You can reach him at crankyuser@seebs.plethora.net.