GUIs Get a Makeover
jcatcw writes "From Xerox PARC to Apple to Microsoft, the GUI has been evolving over the years, and the increased complexity of current systems means it will continue to change. For example, Microsoft is switching from dropdown menus to contextual ribbons. Mobile computing creates new demands for efficient presentation while the desktop GUI doesn't scale to larger screens. Dual-mode user interfaces may show up first on PDA phones but then migrate to laptops and desktops. Which of today's innovations will become tomorrow's gaffs?"
I've been developing touch screen talking pie menus on handheld devices, like the Pocket PC. Pie menus work very well with touch screens, but of course the way they track and display and give feedback has to be adapted to the quirks of small touch screens. Talking pie menus give you audio feedback with a speech synthesizer, so they don't require a lot of visual attention and hand-eye coordination.
Talking pie menus make it possible to use an application without looking at the screen! That's important for mobile applications like GPS navigation systems, which people use while driving (despite all the warnings again it).
-Don
Take a look and feel free: http://www.PieMenu.com
And all it does is integrate into the window manager. Why would I want to ask the computer to open a window if I just want to ask a question? For instance, say I want to know what time it is. I can't just ask the computer, "Computer, what time is it?" Instead, I have to say, "Computer, open clock" and then read the time.
I don't know much about the present speech systems in OS X, but the older one in classic Mac OS had a "speakable items" folder that was mostly filled with AppleScripts. Speaking the name of any item in that folder would launch that item; if it was an AppleScript, it would do various thing. The system shipped with a number of useful scripts already built in: one of them was called "What time is it?", and all it did was speak (via TTS aka MacInTalk): "It's [current time]", e.g. "It's five oh four pee em." (Then again, I don't find this very useful because I've got a menubar clock, as all Macs have by default for ages, so it's quicker just to glance up there).
There was one really impressive script in that that would tell a number of interactive knock-knock jokes, called "Tell me a joke". So you'd say "Tell me a joke", and it would speak (via TTS) "Knock knock". A response of "Who's there?" would prompt it to select from a number of responses, and it would then listen for "[previous response] who?" after which it would deliver the appropriate punchline.
I just looked, and there is a Speakable Items folder and it has all this same functionality still. Runs a lot faster than it used to, too. Sweet.
-Forrest Cameranesi, Geek of all Trades
"I am Sam. Sam I am. I do not like trolls, flames, or spam."
GUIs are great for utilities that one uses only once in a while, say every two months. Going through a man page, keeping track of options, etc., is a nuisance, and memorization is not worthwhile for rare use. Likewise, well-organized GUI menus are nice for allowing access to commands that one uses rarely. Ideally, there are keyboard shortcuts for common commands.
I firmly believe that when it comes to GUIs, change is almost always for the worse. One reason for this is that once a set of GUI conventions has become established, change is disconcerting--you now have to accustom yourself to the new "look" or to the new way that the GUI works. That inconvenience is rarely repaid by the alleged advantages of the change.
As an example, consider the difference between the Windows 2000 and XP desk tops. Just how is the XP desktop better than the older one? I sure couldn't see any advantage to it. Yet, if you were to use the darn thing (and not switch to the "classic" view), you'd have to figure out again how to do a bunch of stuff you already knew how to do before the interface changed. This is progress? Even at the detail level, the changes are silly and unhelpful. Look at those three-dimensional window title bars. Why is that bulgy look better than the less obtrusive flat title bar of the old Win 2K interface? What convenience or information is added by the 3D bulge? Or how about the XP icon for video options--it's a screen with a flat paintbrush on it instead of the 2K screen with a round paintbrush and ruler in front of it. The two look different enough that it takes me a couple of extra seconds to find that icon in the Control Panel whenever I'm forced to use the default XP interface. It's not that the new icon is better or worse than the old one--but why ever change a familiar, easy to recognize icon? It's done to create the illusion of progress, of course.
Making icons look "cooler" in successive iterations of software is one of my particular pet peeves. Whenever someone releases a new version of their software, they think that people won't believe they got their money's worth if the GUI looks the same--so they jazz up the icons. Usually, this means adding more detail, even though this violates the basic principle of the icon: that it should be simple and easy to recognize. In other words...icons should be iconic.
That brings me to another reason why software publishers change GUIs. From the article:
Excuse me, but if you've got "exploded" features, then you do not have a problem that can be solved by a revamped GUI--you have bloatware. Clean up the mess, and start over.
I haven't seen these new "ribbons" MS is talking about for LongVista, but even the name is dumb. Look, the people at Xerox Park gave us the foundation of a great GUI, and there's no reason to change that basic set of visual metaphors until there's a fundamental change in the mechanics of the computer/human interface. The requirements for a good GUI are well-understood: it should be as simple as possible, it should be consistent between applications, it should use easily recognized familiar symbols and conventions. It most definitely should not change from one moment to the next according to the notions of some guy in Redmond who thinks he can anticipate what I want to do.
Great men are almost always bad men--Lord Acton's Corollary
My product an image manipulation system, has had contextual, ribbon-based selection of tools since 1990. We use a chapter/verse metaphor (click on one level of the toolbar to select the chapter, such as filters or geometric tramsforms, the next level slides into view which contains individual tools such as sharpness and feature removal, or ripples and rotations.)
This layout, like MS's "new contextual ribbon" puts what you need in front of you, and buries everything else until you need it. Our chapters function exactly like MS's "tabs" and our verses function as accessors for sets of tools -- basically, there are three levels to the GUI. We don't put the third level in the toolbar, because there are far too many controls for some tools (as many as 70 sliders, buttons, drop-downs) and it is (we think) a poor decision to always take large amounts of vertical space in an image-processing application. Dialogs let you move all that tool-consuming real-estate around. They aren't modal, though, so you can keep working.
This really is a better and more evolved way to work, and I commend MS on finally getting the point (although I note with some humor that they certainly didn't invent this methodology.) Of course I'm partial to it, having been building and using such an interface for well over a decade now.
The thing that seems to stick in user's craws isn't the difficulty (or "increase in complexity, as you put it) of such a layout, because there isn't any, really... but simply that it is "different." Change is a force for user discomfort, especially UI change. I'm not saying that UI's can't get more complex, they certainly can, but contextual ribbons are a simplifying factor, count on it.
I've fallen off your lawn, and I can't get up.
...absolutely all we need is halfway thoughtful, somewhat intelligent application of the paradigms we already have.
If software developers just spent an extra hour to watch an untrained user play with their software... and their managers gave them a couple of extra weeks to incorporate what they learned by watching... that would have more effect on software usability than the introduction of new techniques.
The problem today is that so much software leaves you gasping with amazement at the seeming perversity of their design. It's been observed since the day Windows 95 was introduced that it is stupid to turn off your computer from a button labelled "Start." Microsoft has had over a decade and one, two, three, four, five major software releases to do something about it, and they haven't. If they don't get it yet, all the pie menus and gestures and voice recognition isn't going to help them.
You may cry foul because this isn't strictly speaking, a software problem, but will you take a gander at the button layout on this portable DVD player? In case you don't get it--it's so mind-boggling it took me a while to get it--the northeast button moves you east, the southeast button moves you south, and so forth. That's why every button has a little printed arrow next to it.
An awful lot of modern software design seems to me to be be putting little printed arrows next to utterly misplaced buttons.
"How to Do Nothing," kids activities, back in print!
Methinks you either slept through your college biology lecture, or just decided it wasn't worth going to. This is a diagram of one facet of a cell's existence, eating. Just that one thing, and there are hundreds of little dots, each of which stand for an enzyme. Then, in multicellular organisms, you have all the signaling pathways (which are multistage...think the 7 layers of the TCP/IP protocol) that is necessary for cells to interact, as well as the massive transport system with THREE different types of transport vesicles...
Then, if you think about the code for cells...in "evolved" eukaryotes, there are not only long sequences of DNA inserted from viruses ages ago, there are copies of genes that just don't work because they're mutated. Talk about junk code. But those sequences are dutifully preserved inside your very cells. It's a nightmare that even Microsoft would hate to dream.
It has been a nervous year, with people beginning to feel like Christian Scientists with appendicitis.
Let me start off with a disclaimer: I hate KDE. (Now, now, it's not the time for a flame way! :P)
;)
Personally, I don't mind that interface. Besides, if that's your only problem with GNOME, then we must have it pretty good! I "strongly dislike" KDE's browsing system (one arrow left, one arrow right, one arrow up, one arrow is a crazy swirl, all so close together and so similar in appearance that it really gets frustrating at times.) And why the default is set to open folders with one click is beyond me. I have one program (Noteedit) that uses the KDE interface, and because of that, I didn't bother downloading all of the customization crap, so I'm stuck with it (if someone has a solution, tell me please!). Also, the taskbar/menu at the bottom always looks too cluttered to me. And the clock is just ugly. And why do they stack the window list in two rows? I came over from the Windows world, and was introduced to GNOME and KDE at the same time (I was playing around with SUSE and Fedora). I liked both the same and eventually my final decision came down to the GUI. KDE just hurt my eyes to use. It's a little hard to explain. All of the icons were so...BIG, and pixilated. And despite the fact that KDE looked a lot like XP's UI, I went to GNOME.
From what I can tell, people are about evenly divided on this issue. It's just whatever appeals to you. No, GNOME is not paradise incarnate, but to me, it's better. Besides, I sure you can customize that path chooser
But isn't that the beauty of FOSS? The fact that you can actually choose? Sort of like democracy, it's all the arguments that actually let you know it's working.
Before you die, you see DoubleRing...
I said that they're NOT GETTING MORE complex, not that they aren't complex already. While extra codes are swapped in and out, the general length stays approximately the same between generations of the overall organism. So individually, cells do not grow in complexity. However, a multicelled organism is more complex than a single-celled organism by way of a modular yet cohesive system. A bit like well-designed components in an Operating System.
Back on the subject of software, the more the complexity is packaged into simpler modules, the more the system above it can be simplified. The end goal is to have modules of a stable complexity (like TCP/IP) forming together to create a simpler OS. The problems occur when there's a monolithic structure that exposes lower-level complexity at a higher level.
Javascript + Nintendo DSi = DSiCade
It makes sense when you understand a) the purpose of the "Start Menu" and b) the history behind it.
The Start Menu is the "one stop shop" for initial tasks in Windows - it's the UI element you go to (or are supposed to) for launching programs, configuring the machine, searching, help, etc, etc. It is (roughly) equivalent to Classic MacOS's Apple Menu, the NeXT Dock, and similar "do it from here" elements in other GUIs. Logically, in Windows, the "Shut Down" command belongs in this UI element and nowhere else (with the possible exception of a dedicated button on the taskbar, like Ubuntu does - although back in the day the problem then would have been wha icon to put on the button).
*Originally* (in the first "Chicago" betas), the Start Menu wasn't actually called the "Start Menu" and didn't have "Start" on it - it was just a button with the Windows logo, much like the GNOME and KDE versions. However, during their usability testing, Microsoft found that users couldn't actually figure out what to do when the system first booted and all they had was an empty desktop and taskbar, with a little Windows logo at one end and a clock at the other (I can't even remember if the clock was there at that stage). So the button got a label - "Start" - to signify that it was the UI element where you "started" to do everything.
First impressions count a lot, so if you take away the Start button most people will feel a bit lost and will have a negative experience. Thus people won't want to let go of Start even if it is in their longer term interests to learn something better.
It's interesting to note that in Vista, the "Start" label is gone. Presumably Microsoft's usability studies have concluded that the "Start Menu" UI element is now so entrenched, users no longer need to be taught what it is.