I’ve been holding out on Fedora 14 for as long as I can, trying to avoid moving to GNOME 3. I’ve read too many bad reviews and horror stories. But I finally decided it was time to try it. I backed up my laptop and did a clean install of Fedora 16 and thought I’d offer my impressions.
GNOME 3 seems to be the result of a well-intentioned user interface design that largely misses the mark. The results could have been greatly improved by proper use of time-motion studies and consideration of common use-cases. Unfortunately, it feels like the design was done without the input of users. The result is that GNOME 3 makes almost everything I commonly do on my computer less intuitive and slower. By slower I mean three things: more keystrokes, more mouse clicks, more waiting while the UI presents unnecessary eye-candy in a task-blocking way. Here’s a simple example you’ll run into right away:
Shut down your computer in GNOME 2 – click ‘system’ menu, select ‘shutdown’, click ‘shutdown’ (or suspend, hibernate, or restart) on the shutdown dialog. Done.
Shut down your computer in GNOME 3 – click the name of the current user in the upper right hand corner. Select ‘logout’. Wait several seconds while the desktop cycles and brings up the desktop login screen, click ‘shutdown’.
Sure it looks really cool with all the animations, boxes, and stuff sliding up and down. And you could argue that it’s the same number of clicks but it really does take significantly longer. And there’s the added non-intuitiveness that a user will have to overcome to discover that clicking their user name and then logging out is required to find the ‘shutdown’ option. Compare that to a user guessing that a click on a ‘system’ menu might present system-related functions like ‘shutdown’.
Use GNOME 3 for a couple of hours and you’ll find a dozen similar cases where common tasks are slightly slower and slightly less intuitive.
There are other, more drastic and baffling UI changes. One thing I noted throughout GNOME 3 is that there is a general move away from multi-tasking towards something more akin to a primitive task-switcher. Using GNOME 3 feels like a cross between a 1980s DOS task switcher and a badly designed phone UI.
For example, in GNOME 2, suppose you’re running several terminals to monitor real time data on a remote system. Now you want to open a word processor document to make some notes about the data you’re monitoring. You’d probably click the ‘Applications’ menu, select ‘Office’ and then ‘OO Writer’. And it would start without interrupting your other activities.
That simple, everyday scenario is completely impossible in GNOME 3 because it can only do one thing at a time visually. In order to start a word processor program you have no choice but to stop watching your terminals because the UI literally can’t do both things at once. Viewing the desktop and the ‘Activities’ menu simultaneously is not possible. So the thing to be aware of is that if you need multiple programs and are doing something critical, start them all before hand or you’ll be interrupted by the UI’s inability to multi-task.
So how do you start a new program anyway? Basically the same as always, except the applications menu is now called ‘Activities’ and takes up the entire desktop instead of a small area on the upper left. The first step is to click ‘Activities’. Then you wait while you’re shown a 2 or 3 second eye candy animation of windows zooming all over the place. Once the animation is over, the entire desktop is replaced with a combination of the old applications menu and a sort of crude taskbar that shows what’s running.
Not only does the ‘Activities’ menu take up the entire desktop, but each level of the menu is in a different visual form and location. The first level is a horizontal text menu on the upper left, the second level is text-based again but vertically on the far right side of the screen, and the third level is a jumble of gigantic icons that fill the center of the screen. You’ll waste a lot of time and effort pushing the mouse pointer the full width and height of your screen several times to start one program. Need to start two programs? Sorry, can’t do it. Once you’ve started one, you’re taken away from the ‘Activities’ menu and back to the desktop, where you’ll have to click ‘Activities’ again and start all over for each program. Starting up a dozen or so things can be incredibly time consuming. The apparent design goal here is to slow productivity while speeding development of carpal tunnel syndrome.
As you’ve probably heard if you’ve read any reviews of GNOME 3, they’ve removed the maximize and minimize buttons from the windows. It makes you wonder if they set to out make GNOME 3 the most frustrating user interface ever. Think how many times a day you minimize windows. In GNOME 3 you’ll quickly end up with a disorganized mess of overlapping windows. Need to get a window out of the way for a few seconds and then bring it back? Sorry can’t do it anymore. Need to keep a certain program minimized and at the ready so you can pop it up briefly and hide it again? Sorry can’t do it. If a window becomes completely covered up, there’s no obvious way to reach it. The only way to get it back to the top is to drag and resize other windows until you can see enough of the desired window to click on it.
Why not just click on it in the task bar, you ask? Well, there isn’t one any more. At least there’s not one that’s visible on the desktop where you need it. So even though I found a hack to get the minimize button back on the windows, if I click the minimize button, I’m pretty much screwed.
Where does the minimized window go? Non-intuitivily, it ends up on the ‘Activities’ menu. Remember I mentioned when you first arrive on the ‘Activities’ menu there’s a crude replacement for the task bar? That’s where you’ll find your minimized window. Only you’ll have to identify it by squinting at little screen captures. There is some tiny text with the window title but it’s significantly smaller than the text in the GNOME 2 task bar. So if you had say, 10 browsers or terminals open and minimized a few, it becomes non-trivial to tell which is which among the screen captures on the ‘Activities’ menu. But you can always click them at random until you find the right one.
And between each of those random clicks you have to “task switch” back and forth between the desktop and the ‘Activities’ menu, watching the eye-candy animation of windows flying around between each transition. I think the goal here was generating something akin to road rage in the computer user.
Is there more bad news? You bet! Context menus have been removed. You remember context menus? The menus you get by right-clicking on things to find meta-functionality. Traditionally, left-clicks affect a thing itself (e.g. left clicking an program icon starts the program). Right clicks on the other hand traditionally bring up a menu of properties (e.g. a right click might lead to settings or version information).
Well throw a couple of decades of usability research out the window because GNOME has a better way of doing it! Let’s get rid of that right-click menu by – wait for it – taking away all the functionality that it accessed. In GNOME 3 a right click duplicates exactly the functionality of a left click. Any function you used to access from a right-click is gone, with a few exceptions where they’ve shoe-horned the functionality into a left click menu. So, no, your mouse isn’t broken, it’s just being used half as efficiently now.
Typical example: left click the Network Manager icon in the task bar of GNOME 2. You get a list of available networks. Now right-click. You get a list of options that affect how Network Manager behaves, like turning notifications on or off, editing connections, or version information. Okay, what about in GNOME 3? Left click is pretty much the same, a list of networks you can log on to. Right click is – yikes! – it’s the same as left click. How do you turn notifications on and off? Sorry, can’t do it. How do you edit connections? Left click again and look at the bottom – they’ve shoved a new option in there: “Network Settings”. Where’s “about”? Gone. I’ve noticed that menus like ‘help’, ‘about’, and ‘version’ are hard to find in GNOME 3. Even finding out what version of Fedora you’re running (two clicks in GNOME 2) is now a complex task that a new user is unable to discover without help.
To give a more commonly used example, how do you change your desktop background? In GNOME 2 you right click on the desktop and select ‘change desktop background’. In GNOME 3 it’s a bit harder to find. Click your user name, then ‘System Settings’, then ‘Background’. As with a lot of the changes, it’s only slightly harder and slightly less intuitive but the cumulative effect will make you want to throw your computer out the window.
It took nearly an hour to get a common network printer working with Fedora 16. This is a process that was intuitive and took only a few seconds on Fedora 14. GNOME 3 kept complaining that I needed to change the settings in a firewall daemon (firewalld), a message that would be meaningless to new users (and may represent a new firewall mechanism – the name isn’t familiar to me from previous versions of Fedora). Where is the firewall UI? Never found it. Not in ‘user name’ -> ‘system settings’ which would be the obvious first choice. Also not in ‘Activities’ -> ‘system tools’ or ‘Activities’ -> ‘internet’. Apparently there’s not a firewall UI component in GNOME 3.
After a little Googling, I discovered the GNOME 3 printer setup UI is completely broken anyway. The recommendation online was to ignore it and use the old version from GNOME 2, which is possible by going to the command line and typing ‘system-config-printer’. You may need to install it if it’s not there already. Once I did this I was able to get the printer working in under a minute.
There are too many similar annoyances and my rant is getting way too long so I’ll just list a few others I’ve run into without expounding on them:
- You can’t run multiple instances of a terminal any more. Trying to start a second terminal just takes you back to the one you already started. This is a deal-breaker for me as I often have as many as dozen terminals open at once.
- No more applets on the tool bar. Forget the weather applet that tells you the temperature outside, or the little CPU temperature monitors, and bandwidth monitors, all gone.
- There is a clock on the tool bar but it’s completely unconfigurable aside 24 hour vs 12 hour time. No date, no seconds. And worst of all, it’s centered and displays in a proportional font, so it jiggles back and forth every time it updates.
- The only difference between the active desktop window and inactive windows is a slight variation in the text color: dark gray on light gray for active compared to slightly less dark gray on light gray for inactive.
- There are lots of violations of the principle of least surprise. For example, typing something in the “search” field of the ‘Activities’ menu doesn’t search the ‘Activities’ menu, it starts a web browser and does a wikipedia search (forget about finding the firewall configuration that way).
- One of the most surprising changes is that the update notification in the status bar is gone. There’s no way to know when software updates are available now unless you manually start the software update program, another thing that won’t be intuitive for newbie users.
- The concept of multiple desktops is gone as is the desktop pager on the lower task bar. Maybe the theory is that since window management is a mess now, one messy desktop is better than several?
So to sum it up, there are two fundamental problems here: 1) GNOME 3 is buggy and unfinished 2) GNOME 3 is fundamentally a non-intuitive UI design that’s inefficient and slow to use. I suspect that by Fedora 17 or 18, problem #1 will be rectified and it will be a lot less buggy and have features that are missing from the current version. Problem #2 I’m not so sure about. There are a lot basic UI design mistakes in GNOME 3 and I’m not sure they can be easily fixed.
A good start to improving GNOME 3 would be:
- Add a better, smaller applications menu to the top toolbar so programs can be started without leaving the desktop.
- Add a bottom task bar, or at least a task area to the top tool bar so it’s easy to find out what’s running without leaving the desktop.
- Add max/min butttons back to windows to simplify windows management
- Add right-click context menus to speed up access to frequently used properties of desktop objects.
Those four changes would make GNOME 3 ten times faster and easier for new users. It wouldn’t completely fix things but it would be a good start.