In my last computer post I talked about how I had updated my computer’s main OS to Ubuntu 11.04 because of some problems I was having. Here’s an update, and some commentary on some of the significant changes that had been made from previous versions.
One thing to mention is that I did go ahead and update from 11.04 (Natty Narwahl) to 11.10 (Oneiric Ocelot). Yes, they have weird names. I did this because they have made some small but significant changes to the Unity interface – basically, Natty was more of a transitional and experimental release, and Oneiric is closer to a full release. Additionally, Natty was still based on Gnome 2, and Oneiric was built around Gnome3 – updating allowed my to also install the gnome-shell interface alongside Unity and experiment with that as well.
Overall impressions: Both Unity and gnome-shell take a little getting used to, but I am liking them, and I’m thinking their overall structure for task management is actually better than the traditional gnome-panel/windows-style approach.
Unity’s launcher (the bar on the left with the icons) is used like a regular dock, showing icons for frequently used applications and for currently open applications. It autohides for maximized applications or if you put a non-maximized window against the left side of the screen, but is configurable to be always visible or to only hide for the window that currently has focus. It is a convenient way to launch applications.
Unity, by default, uses a global-menu similar to Apple’s OSX called the application-menu (to distinguish it from an older Gnome2 project called global-menu). Unfortunately, the application-menu is hidden until you hover the mouse over it, and that behaviour cannot be changed. Fortunately, there are a couple of ways to disable the application-menu entirely so that menus are in the application’s window where they belong. Guess what my preference is? :)
Another issue is that the min/max/close buttons for maximized windows are also hidden in the top-panel until the mouse is hovered over them. This makes using them less than ideal, and like the menu hard for new users to discover.
Unity uses a system called the Dash (shown above) for finding and launching programs when they’re not in the launcher. It’s accessed by pressing the Super key (usually marked with the Windows logo), or by clicking on the Ubuntu icon at the top of the launcher. Once open, you can click on one of the ‘lenses’ in the top row to browse by category, or start typing to search for a file or application. Additionally, you can also search within the lenses with the search being restricted to the scope of the lens. Searching works fairly well, but browsing is clumsy and limited compared to a traditional menu, especially if you aren’t entirely sure what the application’s actual name is.
Workspaces: One of the best features of Linux based systems (and Unix based systems like OSX) is the availability of Workspaces for organizing windows around tasks. A workspace is essentially a separate desktop for placing additional windows together. Unity puts a workspace icon in the launcher that puts you into the above overview, showing all your workspaces (the default is four). From here, you can switch to another workspace, or drag-and-drop open windows between workspaces. You can also drag an icon from the launcher to any workspace, and it will open a new window for that application on that workspace. Workspaces are arranged in a 2×2 pattern, and pressing Ctrl+Alt+[arrow] will move you to the workspace in that direction. It works pretty well, but we will see later how gnome-shell handles this (and management of open windows) a little better.
Window management: Here is where Ubuntu has an issue, in both Unity and Gnome-shell (which may mean it’s an issue with Gnome3 itself). The traditional Alt+Tab invokes the usual switcher, with an application-based focus, but it switches among all open applications, across all workspaces, with no indication of which workspace each window is on. Pressing down will open a preview (also showing individual windows for the application), but if you’re using similar documents on different workspaces, you can easily end up choosing the wrong one. Pressing Alt+` will open the switcher directly into the window view, but still ignoring the workspace associations. Again, window management is handled somewhat better by gnome-shell, as we’ll see next.
Gnome-shell centers around the ‘Overview’, which is triggered by pressing the Super button, by clicking the Activities button in the upper left hand corner of the screen, or by a hotcorner in the same location. The Overview, seen above, combines several of the elements in Unity that I covered here. On the left is the dock (called the Dash in Gnome-shell), which serves roughly the same function as Unity’s Launcher. In this respect, Unity’s Launcher is easier to use because it is always available simply by moving your pointer to the left edge of the screen, and if you have no windows open or maximized the Launcher is automatically exposed, whereas in Gnome-shell, you have to go into the overview to access it, even when you have no windows open. In the center is a view of your open windows, similar to the Exposé from OSX or the Scale plugin for Compiz. On the right is the workspace view, which defaults to being partially hidden until you move the pointer over it.
Here is where Gnome-shell has some superiority to Unity’s switcher – the Overview shows only the windows on the current workspace, with a pop-out launcher-style bar on the right that shows the actual workspaces and allows you to switch workspaces and even drag-and-drop windows from one workspace to another, all in one view. Unlike Unity, the number of workspaces in Gnome-shell is dynamic, and changes so that there is always one empty workspace. Move a window or start an application in that empty workspace, and a new empty workspace is created at the same time.
Searching for files and applications is the same as under Unity – open the Overview and start typing. In Gnome-shell, however, if you select the “Applications” option in the top left, there is a list of categories on the right side of the applications list that can be used to browse through based on category.
Notifications pop up from the bottom center of the screen instead of being ‘connected’ or near the system-tray/clock in the upper right like previous versions. This can be a little surprising, until you get used to it.
Other comments and my current opinion: Both Unity and Gnome-shell are still in late development, somewhere between actual beta testing and what most people would consider a stable and official release. In fact, officially, Oneiric – including the latest changes to Unity and it’s integration with the Gnome 3 base – is still in beta until later this month. Of the two, Unity seems a bit more stable, but also a bit less polished. There are a few usability areas I’d like to see adjusted or redone in both, though less so in Gnome-shell. A lot of the usual customization is not currently available, in part due to philosophical changes behind the design of Gnome 3, and in part because Gnome 3, Unity, and Gnome-shell are all so new that the developers are focusing on functionality first, and more customization will come later. Realistically, I expect both to be in flux a quite a bit until the release of 12.04 LTS (which will be named Precise Pangolin), the “long term support” release scheduled for April of next year, and possibly even beyond that.
Bottom line? I’ll keep playing with both until they settle down, at which point I’ll probably settle on one or the other naturally.
END OF LINE