UI & Usability

To put Ubuntu GUI in the context of existing operating systems, I’d lump it in with Windows XP. If you can use Windows XP, then you’re going to be right at home with Ubuntu. The window layouts are similar, the buttons are the same, many of the shortcut key combinations are the same. Whether it’s intentional or not I can’t say, but with the similarities it’s a very easy transition to Ubuntu coming from Windows.

But there are some important differences between Ubuntu and XP, and they start to make themselves apparent almost immediately. The taskbar and its conjoined twin the start menu (the Menu Bar in Ubuntu) have been separated – the taskbar gets the bottom of the screen and the menu bar gets the top. Because the menu bar is always visible by default this makes it look close to Mac OS X, but due in large part to the fact that applications do not share the menu bar like they do in Mac OS X, it’s functionally much more like XP. Joining it up top are the Ubuntu equivalents of the quick launch toolbar, and the system tray. This leaves the taskbar at the bottom, containing running applications along with the controls for Ubuntu’s virtual desktops implementation.

This is something I find works quite well on narrow screens, but is a wash on larger screens and widescreens. By putting the menu bar and the taskbar on different physical bars, it leaves more space for active applications in the taskbar while not forcing the menu bar to be compacted. Depending on how cluttered your complete taskbar may have been under Windows, this can buy you enough space to comfortably fit another couple of active applications, which may not be much but can make all the difference in some situations. The cost of this however is that you lose additional vertical real estate compared to if everything was on one bar. Hiding the bars can get this space back, but it’s been in my experience that most people hate auto-hiding bars, which may very well be why no OS has them auto-hiding by default.

At first glance, the menu bar is just different enough from XP’s start menu to throw some people for the loop. The contents of the start menu have been broken up a bit: Applications is Windows’ All Programs, Places is My Recent Documents, and System is Control Panels. Coming from Windows, the two biggest changes are that most applications are organized by functionality rather than each application getting its own subfolder in the Applications menu, and that what would be found in Control Panels is now split between the Preferences and Administration submenus under System, based on if it adjusts a per-user preference or a system preference (and hence would need administrative access).

Nautilus, the Ubuntu file manager, really drives home the idea that Ubuntu works like Windows. It takes the “file manager is a web browser” concept just as far Windows ever did, which isn’t necessarily a good thing given how old (not to mention dead) the concept is, making Nautilus feel a bit dated. Beyond that, there’s little that can be said that differentiates it from Windows XP’s Explorer.

Multitasking is also handled in a very XP-like fashion. Beyond the taskbar, alt-tab switches among applications just as it does on Windows (or cmd-tab on Mac OS X). Notably, Ubuntu has copied some of the more interesting quirks of both Windows Vista and Mac OS X. From Windows Vista it inherits the ability to see the contents of a window when alt-tabing, and from Mac OS X it inherits the ability to close an inactive window without needing to focus on it, allowing you to keep focus on whatever you’re working on.

Ubuntu also has one more trick up its sleeve when it comes to multitasking, and that’s virtual desktops. Virtual desktops, or workspaces as they’re called in Ubuntu, allow for the creation of multiple workspaces in a single user session, such that different windows can be in different workspaces, completely hidden when that workspace is not active. It’s been a feature of various *nix operating systems for ages, and Apple added this feature as Spaces in 10.5 Leopard. Windows has no built-in equivalent.

I’ve tried using this method before as Spaces, and again on Ubuntu with their workspaces, and I fully admit I don’t “get it.” The idea of being able to move a window completely out of your way by keeping it in another workspace makes sense, but I have never been able to make it work for me. Ultimately I find that I have to go chase down a window that I need when it’s off in another workspace. I know there are plenty of people out there that can make good use of workspaces, so it may as well just be a personal flaw. It’s a neat concept, but I haven’t been able to make it work for me.

Moving on, one thing I find that Ubuntu does well is that it better bridges the look of the OS with and without eye-candy. Windows Vista does a very poor job of this, and it’s immediately obvious if Aero is running or not. The style choices for Vista clearly were based on Aero, so if for any reason Aero is disabled, you get the 2D-only Vista Basic UI that poorly compensates for the lack of transparency. Ubuntu on the other hand looks nearly identical in static screens, only the lack of subtle window shadows give away when Ubuntu is running without visual effects (Ubuntu’s name for 3D accelerated desktop compositing). Most people will never run Ubuntu with desktop compositing disabled, just as most people will never run Windows Vista with Aero disabled, nevertheless this is one of those subtle design choices that impressed me.


An example of Ubuntu's hardware compositing. Hardware composited on the left, software on the right.

With desktop compositing enabled the experience is similar to that of Windows Vista or Mac OS X. Windows fade out of view, shrink & grow, etc just as they do in the other two. I feel like I should be writing more here, but there’s just not a lot to say; it’s the same desktop compositing abilities everyone else has, including their UI tricks that serve to accelerate user interaction. The one thing in particular that did catch my eye however is that Ubuntu includes a UI feature called Scale that is virtually identical to Mac OS X’s Exposé. As a self-proclaimed Exposé junky I find most welcoming, as this is my preferred way to multitask with a large number of windows. There have been a couple of times, as a result, where I have found my workflow under Ubuntu being smoother than that of Vista, though Mac OS X still surpasses this.

However I’m much less enthusiastic about the icons Ubuntu uses, and there’s one element in particular that nearly drives me insane: executables/binaries don’t even have icons. In Windows executables can be packed with resources such as icons, and in Mac OS X app bundles contain icon files that are used to give the bundle an icon. On Ubuntu however, the executables don’t have their own icons. Ubuntu can assign custom icons to anything, but apparently this is being remembered by file manager, rather than actually attaching an icon. By default, the only thing with custom icons are the Launchers (a type of shortcut) that Ubuntu automatically creates for installed applications. Everything else is either issued a default icon for its type, or certain media types (e.g. images) are thumbnails.

In an ideal world this isn’t an issue because everything is installed to the system and has its own Launcher somewhere in the menu bar, but with software that doesn’t directly install (such as programs distributed in compressed folders) this isn’t something that’s handled automatically. In place of an application specific icon executables have a generic executable icon, which worse yet is shared by more than just executables. As an example of this we have a screenshot of the folder for the demo of Penny Arcade Adventures: Episode 2. Can you figure out which item launches the game?

The right answer, the document-like item called RainSlickEp2 (which is actually a shell script) is completely non-obvious. If this were Windows or Mac OS X, there would be an appropriate custom icon over the right item. Meanwhile not only are we lacking a custom icon, but the binary icon is used directly in 3 different places, and as an overlay on top of a document icon in a 4th place. Only 1 item is even an executable binary. And while I had hoped this was an issue just with this game, it extends to everything else; even Firefox’s actual executable lacks an icon. As it turns out, the Linux executable format, ELF, doesn’t have the ability to contain icons.

I hate to harp on this issue, but I am absolutely dumbfounded by it. Usability goes straight down the tubes the moment you need to use non-packaged software because of this – and because the DEB package format is not a Linux-wide standard, there’s a lot of software like that. On a GUI, there needs to be graphical elements to work with.

On the flip side, I find it interesting that Ubuntu has icons in certain places where Windows and Mac OS X do not. Action buttons such as “open” and “close” have icons embedded in them, while the other two OSs have always left these buttons sparser, containing just the text. The ramifications of this are that with icons in your buttons, you don’t necessarily need to be able to read the text to be able to use the OS so long as you understanding the meaning of the icons. It’s easily the most drastic difference between the Ubuntu and Windows/Mac OS X GUIs that I have noticed. But at the same time, I’ll say that it’s so different that even after a year I still don’t know quite what to make of it – it often results in big, silly buttons when something smaller would do. The jury is still out on whether this is a good difference or not.

I would also like to touch on the directory structure of Ubuntu, as it falls under the nebulous umbrella of usability once you have to start traversing it. Because Linux is a spiritual successor to the ancient Unix systems of years past, it has kept the Unix directory structure. This is something I believe to be a poor idea.

I don’t believe I’ve ever seen a perfect directory structure on an operating system, but there are some that are better than others. As an example of this, here’s a list of some of the more important Linux root directories: bin, boot, dev, etc, home, mnt, opt, sbin, usr, and var. And if this were Windows Vista: Boot, Program Files, Program Data, Users, and Windows.

The problem I have with the Ubuntu directory structure is that the locations of very few things are obvious. Firefox for example is in /usr/lib/Firefox, while on Windows it would be in /Program Files/Firefox. Why /usr/lib/? I have no idea. There’s a logical reason for that placement, but there’s absolutely nothing intuitive about it. Microsoft is no saint here (how many things are in /Windows and /Windows/System32?) but at least the location of user installed programs is completely and utterly obvious: Program Files. And if we’re on Mac OS X it’s even easier, /Applications. This all adheres to a standard, the Filesystem Hierarchy Standard, but that just means the standard is just as confusing.

Thankfully, and to be fair, there’s little reason to be going through the entire contents of the OS partition looking for something, but If you ever need to do so, it can be a frustrating experience. Ubuntu would benefit greatly by using a more intuitive structure, something that I’m convinced is possible given that Apple has pulled this off with Darwin, which also has the *nix directory structure, but avoids it as much as possible. I’d also like to see user data kept in /users like Windows and Mac OS X rather than /home, but Rome wasn’t built in a day… There is much room for improvement here.

Wrapping things up, when I first started with Ubuntu I did not have very high expectations as far as usability was concerned. I expected Ubuntu to be functional, but not necessarily exceptional – GUI design is an ugly and hard job, just how good could it be on a free OS? For all the reasons I like Mac OS X I can’t sing high praises about Ubuntu’s GUI or usability, but it surpassed my initial expectations. Other than the icon issue, there are no glaring flaws in Ubuntu’s GUI or the usability thereof. It’s not a revolutionary or even evolutionary GUI, but it does come off as a very solid facsimile of Windows XP with a few unique quirks and the eye-candy of Vista and Mac OS X thrown in, and that’s something I’m satisfied with. And a satisfactory GUI is not a bad thing, it’s quite an accomplishment given just how difficult GUI design is.

As an aside, I’m not a big fan of the default orange/brown color scheme for Hardy. It can be changed easily enough although I’ve always thought they could do better for a default scheme. I hear 9.10 may finally do away with orange, so we’ll see what we get in Ocotober.

The Package Manager – A Love/Hate Relationship Installation
Comments Locked

195 Comments

View All Comments

  • apt1002 - Thursday, August 27, 2009 - link

    Excellent article, thank you. I will definitely be passing it on.

    I completely agree with superfrie2 about the CLI. Why resist it?

    Versions: I, like you, originally plumped for Hardy Heron because it is an LTS version. I recently changed my mind, and now run the latest stable Ubuntu. As a single user, at home, the benefits of a long-term unchanging OS are pretty small, and in the end it was more important to me to have more recent versions of software. Now if I were administering a network for an office, it would be a different matter...

    Package management: Yes, this is absolutely the most amazing part of free software! How cool is it to get all your software, no matter who wrote it, from one source, which spends all its time diligently tracking its dependencies, checking it for compatibility, monitoring its security flaws, filtering out malware, imposing sensible standards, and resisting all attempts by big corporations to shove stuff down your throat that you don't want, all completely for free? And you can upgrade *everything* to the latest versions, at your own convenience, in a single command. I still don't quite believe it.

    Unpackaged software: Yes, I agree, unpackaged software is not nearly as good as packaged software. It's non-uniform, may not have a good uninstaller, might require me to install something else first, might not work, and might conceal malware of some sort. That's no different from any other OS. However, it's not as bad as you make out. There *is* a slightly more old-fashioned way of installing software: tarballs. They're primitive, but they are standard across all versions of Unix (certainly all Linux distributions), they work, and pretty much all Linux software is available in this form. It never gets worse than that.

    Games: A fair cop. Linux is bad for games.

    GPUs: Another fair cop. I lived with manually installing binary nVidia drivers for five years, but life's too short for that kind of nonsense. These days I buy Intel graphics only.

    40 second boot: More like 20 for me on my desktop machine, and about 12 on my netbook (which boots off SSD). After I installed, I spent a couple of minutes removing software I didn't use (e.g. nautilus, gdm, and most of the task bar applets), and it pays off every time I boot.

    Separate menu bar and task bar: I, like you, prefer a Windows-ish layout with everything at the bottom, so after I installed I spent a minute or two dragging-and-dropping it all down there.
  • GregE - Wednesday, August 26, 2009 - link

    I use GNU/Linux for 100% of my needs, but then I have for years and my hardware and software reflect this. For example I have a Creative Zen 32gb SSD music player and only buy DRM free MP3s. In Linux I plug it in and fire up Amarok and it automatically appears in the menus and I can move tracks back and forth. I knew this when I bought it, I would never buy an iPod as I know it would make life difficult.

    The lesson here is that if you live in a Linux world you make your choices and purchases accordingly. A few minutes with Google can save you a lot of hassle when it comes to buying hardware.

    There are three web sites any Ubuntu neophyte needs to learn.
    1 www.medibuntu.org where multimedia hassles evaporate.
    2 http://ubuntuguide.org/wiki/Ubuntu:Jaunty">http://ubuntuguide.org/wiki/Ubuntu:Jaunty the missing manual where you will find the solution to just about any issue.
    3 http://www.getdeb.net/">http://www.getdeb.net/ where new versions of packages are published outside of the normal repositories. You need to learn how to use gdebi installer, but essentially you download a deb and double click on it.

    Then there are PPA repositories for the true bleeding edge. This is the realm of the advanced user.

    For a home user it is always best to keep up to date. The software is updated daily, what did not work yesterday works today. Hardware drivers appear all the time, by sticking with LTS releases you are frozen in time. Six months is a long time, a year is ancient history. An example is USB TV sticks, buy one and plug it into 8.10 and nothing happens, plug it in 9.04 and it just works or still does not work, but will in 9.10

    Yes it is a wild ride, but never boring. For some it is an adventure, for others it is too anarchic.

    I use Debian Sid which is a rolling release. That means that there are no new versions, every day is an update that goes on forever. Ubuntu is good for beginners and the experienced, the more you learn the deeper you can go into a world of software that exceeds 30,000 programs that are all free in both senses.

    I look forward to part 2 of this article, but remember that the author is a Linux beginner, clearly technically adept but still a Linux beginner.



    It all comes down to choice.
  • allasm - Thursday, August 27, 2009 - link

    > I use Debian Sid which is a rolling release.
    > That means that there are no new versions, every day is an update that goes on forever.

    This is actually one of the best things about Ubuntu and Debian - you NEVER have to reinstall your OS.

    With Windows you may live with one OS for years (few manage to do that without reinstalling, but it is definitely possible) - but you HAVE to wipe everything clean and install a new OS eventually. With Debian and Ubuntu you can simply constantly upgrade and be happy. At the same time noone forces you to upgrade ALL the time, or upgrade EVERYTHING - if you arehappy with, say, firefox v2 and dont want to go to v3 because your fav skin is not there yet - just dont upgrade one app (and decide for yourself if uyou need the security fixes).

    Some time ago I turned on a Debian box which was offline/turned off for 2+ years and managed to update it (to a new release) with just two reboots (one for the new kernel to take effect). That was it, it worked right after that. To be fair, I did have to update a few config files manually after that to make it flawless, but even without manual updates the OS at least booted "into" the new release. Natuarally, all my user data stayed intact, as did most of the OS settings. Most (99%) programs worked as expected as well - the problematic 1% falling on some GUI programs not dealing well with new X/window manager. And had no garbage files or whatever after the update (unlike what you get if you try to upgrade a winXP to say WinVista)


    Having said all that, I 100% agree that linux has its problems as a desktop OS (I use windows more than linux day-to-day), but I totally disagree that using one OS for a long time is a weak point of Ubuntu.


    P.S. one thing i never tried is upgrading a 32 bit distro to 64 bit - i wonder if this is possible on a live OS using a package manager.
  • wolfdale - Wednesday, August 26, 2009 - link

    A good article but I have a few pointers.
    1) More linux distros need to be reviewed. Your "out of the box" review was informational but seemed to more in-tuned with commercial products aimed for making a profit (ie, is this a good buy for your money?). I, for one, used to check AnandTech.com before making a big computer item purchase. However linux is free to the public thus the tradeoff for the user would now be how much time should I invest in learning and customizing this particular distro. Multi-distro comparisons along with a few customized snapshots would help the average user on deciding what to spend with his valuable time and effort.

    2) Include Linux compatibility on hardware reviews. Like I said earlier, I once used AnandTech.com as my guide for all PC related purchases and I have to say about 80% of the time it was correct. But, try to imagine my horror about 1.5 years ago when my brand spanking new HD4850 video card refused to do anything related to 3-D on Ubuntu. I spent weeks trying to get it to work but ended up selling it and going with Nvidia. Of course it was a driver issue but no where did AnandTech.com mentioned this other than saying it was a best buy.

    Thanks for listening, I feel better now. I'm looking forward to reading your Ubuntu 9.04 review and please keep adding more linux related articles.
  • ParadigmComplex - Wednesday, August 26, 2009 - link

    When I first saw that there was going to be a "first time with Linux" article on Anandtech, I have to admit I was a bit worried. While the hardware reviews here are excellent, it's already something you guys are familiar with - it's not new grounds, you know what to look for. I sadly expected Ryan would enter with the wrong mindset, trip over something small and end up with an unfair review like almost all "first time with Linux" reviews end up being.

    Boy, was I wrong.

    With only one major issue (about APT, which I explained in another post) and only a handful of little things (which I expect will be largely remedied in Part 2), this article was excellent. Pretty much every major thing that needed to be touched on was hit, most of Ubuntu's major pluses and minuses fairly reviewed. It's evident you really did your homework, Ryan. Very well done. I should have known better then to doubt anyone from anandtech, you guys are brilliant :D
  • Fox5 - Wednesday, August 26, 2009 - link

    One last thing I forgot to say....
    Good job on the article. I (and many others) would have liked to see 9.04 instead (I don't know of anyone who uses the LTS releases, those seemed to be aimed at system integrators, such as Dell's netbooks with ubuntu), but the article itself was quality.
  • jasperjones - Wednesday, August 26, 2009 - link

    I'd like to make one last addition in similar spirit. I appreciate this article as a generally unbiased review that covers many important aspects of a general-purpose OS.

    And just to be sure: I'm not a Linux fanatic, in fact, for some reason, I'm writing up this post on Vista x64 ;)
  • jasperjones - Wednesday, August 26, 2009 - link

    You're right that there are historical reasons that dictate that one Linux binary might be in /usr/bin, another in /sbin or /usr/sbin, yet another one in /usr/local/bin, etc.

    However, you really couldn't care less as long as the binary is in your path. which foo will then tell you the location. Furthermore, there's hardly any need to manually configure something in the installation directory. Virtually anything that can be user-configured (and there's a lot more that can than on Windows) can be configured in a file below ~ (your home). The name of the config file is usually intuitive.

    But yeah, for things that you configure as admin (think X11 in /etc/X11/xorg.conf or Postgres usually somewhere under /usr/local/pgsql) you might need to know the directory. However, the admin installs the app, so he should know. Furthermore, GUIs exist to configure most admin-ish things (I don't know what it's in Ubuntu for X but it's sax2 in SUSE; and it's pgadmin for Postgresql in both Ubuntu and SUSE)
  • ParadigmComplex - Wednesday, August 26, 2009 - link

    Again, if I may extend from what you've said:

    Even though it is technically possible to reorder the directory structure, Ubuntu isn't going to do it for a variety of reasons:

    First and foremost, one must remember Ubuntu is essentially just a snapshot of Debian's in-development branch (unstable aka Sid) with some polish aiming towards user-friendliness and (paid) support. Other then the user-friendly tweaks and support, Ubuntu is whatever Debian is at the time of the snapshot. And while Debian has a lot of great qualities, user-friendliness isn't one of them (hence the need for Ubuntu). Debian focuses on F/OSS principles (DFSG), stability, security, and portability - Debian isn't going to reorder everything in the name of user-friendless.

    Second, it'd break compatibility with every other Linux program out there. Despite the fact that Ryan seemed to think it's a pain to install things that aren't from Ubuntu's servers, it's quite common. If Ubuntu rearranges things, it'd break everything else from everyone else.

    Third, it would be a tremendous amount of work. I don't have a number off-hand, but Ubuntu has a huge number of programs available in it's repos that would have to be changed. Theoretically it could be done with a script, but it's risking breaking quite a lot for no real gain. And this would have to be done every six months from the latest Debian freeze.
  • jasperjones - Wednesday, August 26, 2009 - link

    I disagree with the evaluation of the package manager.

    First, there's a repo for almost anything. I quickly got used to adding a repo containing newer builds of a desired app and then installing via apt-get.

    Second, with a few exceptions, you can just download source code and then install via "./configure; make; sudo make install." This usually works very well if, before running those commands, you have a quick look at the README and install required dependencies via apt-get (the versions of the dependencies in the package manager almost always are fine).

    Third, and most importantly, you can simply update your whole Ubuntu distribution via dist-upgrade. True, you might occasionally get issues from doing that (ATI/NVIDIA driver comes to mind) but think of the convenience. You get a coffee while "sudo apt-get dist-upgrade" runs and when you get back, virtually EVERYTHING is upgraded to a recent version. Compare that with Windows, where you might waste hours to upgrade all apps (think of coming back to your parent's PC after 10 months, discovering all apps are outdated).

Log in

Don't have an account? Sign up now