Canonical and the Ubuntu folks have taken a lot of risks in the Unity interface that ships with Ubuntu Linux. One of the things that the company has been leading towards is the Head-Up Display (HUD), a new tool for controlling applications that moves away from the traditional menu interface that debuted decades ago with the Xerox PARC GUI.
Canonical's Mark Shuttleworth blogged about the new interface design today, with a description, screenshot and a video demonstrating the use of HUD.
What's wrong with the current method of doing things? Shuttleworth says:
"When they get nested, navigating the tree can become fragile. They require you to read a lot when you probably already know what you want. They are more difficult to use from the keyboard than they should be, since they generally require you to remember something special (hotkeys) or use a very limited subset of the keyboard (arrow navigation). They force developers to make often arbitrary choices about the menu tree ('should Preferences be in Edit or in Tools or in Options?'), and then they force users to make equally arbitrary effort to memorise and navigate that tree."
Instead of a nested tree of options, users will have a "vocabulary UI" that's "closer to the way users think" according to Shuttleworth.
The Canonical folks have been re-thinking the standard desktop layout for some time, and part of that has been trying to replace the application window menus with a global menu similar to the one in Mac OS X. According to Shuttleworth, that's all been leading up to HUD.
"The HUD concept has been the driver for all the work we've done in unifying menu systems across Gtk, Qt and other toolkit apps in the past two years. So far, that's shown up as the global menu. In 12.04, it also gives us the first cut of the HUD."
Here's how the HUD works. Instead of having the traditional "File," "Edit," "View" menus (and so on) users will pull down a menu to type in commands. So if I want to change preferences I'd start typing "pref" and (in theory) the HUD will suggest commands that match that.
Shuttleworth says that the HUD would support fuzzy matching so users could be able to type "settings" and still get "preferences" and so forth. Shuttleworth even says that it will learn what commands users use most often, so it can prioritize commands that are used more frequently.
Open The Pod Bay Doors HAL... Er, HUD
But that's not all. Shuttleworth says that the HUD will tie into system functions as well as application-specific ones. So users should be able to use The HUD to do things like manage IM status and so forth.
Ultimately, and this probably ties into Canonical's hopes and dreams of using Ubuntu to power TVs, the HUD could be voice-driven. The menu interface that relies heavily on pointer-driven activity is clunky for a television. Being able to talk to your TV to change channels, set up recordings and whatnot would be a big improvement over navigating menus.
Shuttleworth says that Canonical wants "to make it easy to talk to any application, and for any application to respond to your voice. The full integration of voice into applications will take some time. We can start by mapping voice onto the existing menu structures of your apps. And it will only get better from there."
Change We Can Believe In?
As we all know, users love change. (Where's that sarcasm font when you need it?) But strong ideas backed by equally strong implementations can win out. Looking at the video provided by Canonical and the description of the HUD, it seems like a usable alternative to existing application menus.
The main objection to the HUD is discoverability. I can easily adapt to HUD for functions that I know are supported by an application, but what about functions I'm unaware of? You can explore the menus for an application and find new (to you) features, but the HUD doesn't support that. For now, Shuttleworth says that the traditional menus will still be around – but they still need to solve the discoverability problem.
If you're eager to test it, it's available in an add-on repository that works with Ubuntu's 12.04 pre-releases. If all goes well, this will land in Ubuntu 12.04 and users will have their hands on it right away.
What do you think? Is the HUD the way of the future? Should Ubuntu (and other desktops) keep the menu?