Monday, October 24, 2011

Upgrage to Ubuntu 11

Broken Upgrade Dialog - Bad Omen
With the release 11.10, my previous version of Ubuntu started receiving popup dialogs urging me to upgrade to the latest and greatest.  Options: "Don't Ask Again", "Ask Me Later", and "Upgrade Now" (more or less).  I had postponed the upgrade several times because I'm usually wary to upgrade since Ubuntu seems to have had many rough edges as of late.  I noticed "Ask Me Later" did nothing, not even close the dialog, so I had simply killed it myself.  Bad omen, I guess.  In the dialog I also saw some type of web-based page with some of the new features offered.  Much of it was cropped off in the little dialog.  Not only was the dialog non-resizeable so I couldn't expand this small page to see the new features, my mouse wheel didn't respect it so I had to use the painful overlay scrollbars that came out in 11.04 (more on that later).

Dash Improvements
There have been several improvements on the dash including expanded right-click support.  Some tasks have more functionality like the terminal button can open new windows and the CD/DVD button has standard options you'd expect like "Eject" or "Open".  Still a little confused about what options come from where.  I can't create new windows for chrome, but can for firefox.  Not sure what the distinction is besides some internal setting allowing firefox to do this.  Seems like if there were a default, it would be to allow the user to have as many sessions opened of whatever as they want.

The workspace icon still has no options to change the number of workspaces (at least via right-click).  I like to have around ten.  I'm told I can install compiz to configure this, but why don't I just get the option via right-click to bring up a properties dialog.  If it's important enough to be on the Dash by default, why doesn't it get custom options?

Global Menu
The global menu is still a little rough.  As mentioned on several other sites, LibreOffice isn't configured correctly to use this menu, which isn't a big deal.  The bigger problem lies with multi-window programs like gimp, which are incredibly annoying to deal with.  If the main window is not selected, the global menu defaults to... nothing.  That means if I change a layer or select a tool, I have to go back and select the main window to access the menu options at the top of the screen.  To me, this seems to be a bug in Unity.  On the other hand, how should it behave if the subwindow has its own menu?  In the short couple of days using 11.10, this has been an extreme annoyance using gimp.  I don't like how the menu is even hidden until mouseover, but that's another direction the Ubuntu team has taken up as a design goal (more on that later).  I don't care how familiar one gets with the menu layout in your applet of choice.  The fact of the matter is menu items are now harder to find because one has to move the mouse up the the menubar, wait for the menu to appear, and then move over to it.  I'm convinced this will slow down every single trip to the menu and I'm hoping the designers of this feature go crazy over it and disable the hiding in the next release.  While it doesn't make any sense to copy Apple's design decisions for the sake of copying Apple's design decisions, the fact that they don't do this should merit some serious thought as to why they didn't.  It's slower to use.  Period.

can just use default scroll bars

main window selected - main menu accessible
secondary window selected - no menu for you :(
Speaking of the menubar at the top, I've caught myself dragging windows close to the top of the screen and accidentally maximized them.  The double-click still works, so I don't know why a user would need a secondary option that potentially isn't what they really want to do.  I have multiple windows up side by side all the time and this just makes resizing them all the more annoying.  I can work around this issue by being more careful, but its a pointless feature that does nothing but increase the possibility of the desktop manager doing something other than intended.

Overlay Scrollbars
While some of the features I've discussed were introduced in 11.04, I'm seeing them now as I've finally moved away from the classic interface, and committed myself to becoming comfortable with this new version.  One feature that's appeared (or disappeared) in Ubuntu 11 is the scrollbars as many know and love.

The goal is to help people immerse themselves in their stuff, without being burdened with large amounts of widgetry which isn’t relevant to the thing they are trying to concentrate on. And when it comes to widgetry, there are few things left which take up more space than scrollbars. --Mark Shuttleworth

As mentioned earlier, Ubuntu designers have publicly stated the design goal to reduce the amount of "widgetry" on the page.  Mark Shuttleworth actually has a lengthy blog post on this topic and delves into great description of this new scrollbar design.

one overlay scrollbar among many
People are usually resistant to change and I certainly have to work as hard as most to take things in with an open mind.  At first I felt they had a webpage-javascript-menu feel to them, but I'm starting to tolerate them.  Unlike Mac OS X Lion, which has also recently removed the scrollbar in a similar fashion (to the dismay of some much frustrated users), Ubuntu at least keeps a small sliver of bar on the screen at all times to give an idea of where the user is on the page.

Ignoring the pomp and circumstance the Ubuntu design team seems to have made over the rollout of this feature (almost to a ridiculous level of pride), I really think it is a rather useless and even problematic problem for several reasons.

First, the display of these overlay scrollbars is application dependent.  As shown in the picture above, only one window in this particular screenshot uses this feature.  Since most of the time I'm in a web browser or my own IDE, I won't see this new feature they seem so proud of.  Having multiple types of scrollbars on the page seems to go against years of work Linux developers have done to get a consistent visual style across applications using different libraries, yet Ubuntu obviously felt reducing widgetry on a few of their applications was more important.  While this isn't a terrible problem for me, it also makes it harder to get used to as I'm now using normal scrollbars 95% of the time and the overlay scrollbars when I open up one of their Ubuntu-based apps.  I have to remember that the lack of scrollbar doesn't mean there's nothing to scroll.  So while Ubuntu is very proud of this feature, it just creates unneeded variation between windows at very little benefit except for making Ubuntu-related screenshots prettier.

Second, when innovating new design features, it's really important (to me at least), to justify the change.  Christian Giordano, one of the main implementers of the design, actually has a lengthy post, Introducing Overlay Scrollbars in Unity, discussing the overall design goals of the project.  He notes that removing "widgetry"--something they've obviously succeeded at--is one of the motivations to "provide a more immersive experience".  That's a nice way of saying prettier.  Regaining screenspace is hardly a problem given the 15-pixel-wide widget is a sliver on a one-to-two-thousand-pixel-wide screen.  He also adds an seemlingly ignored prerequisite in that it "shouldn’t conflict with the window resizing functionalities".  I think this has been brushed over by many critics.

shown in red, these are the areas of the border I
must now use to resize that side of the window
As shown above, resizing has indeed been affected.  The amount of content off page determines how much border real estate one has to resize the window.  The designers added a feature so if one mouses over the overlay for a certain amount of time (~3 seconds), it will dissolve out and one can resize using the full border.  I'm not interested in waiting to resize my window.  I have a feeling this will annoy many who mouse over the scrollbar while reading to get ready to move down the page only to click and find the scrollbar has since evaporated.

Why not just use a scroll wheel, one might ask?  Well, I have a scroll wheel so this doesn't greatly affect me (except in certain cases as described in the beginning where Ubuntu has overlay scrollbars, but doesn't respect the scroll wheel).  However, many users out there still don't have scroll wheels on their mouse.  70% of Apple computers sold have built-in touchpads, and all iMacs come with Apple's smart mouse with a built-in trackpad of sorts as the base mouse.  I do not expect similar numbers for Ubuntu Linux users--many of whom are probably using outdated lab machines without any scroll wheel on the keyboard or mouse.

Despite all my whining, it is apparently possible to disable the feature, but again, why put it in there in the first place?  While Ubuntu has been a pleasure over the last few years as a stable and user-friendly operating system, the new UI-drive championed by Shuttleworth has made for a rockier transition between iterations and bugs have become more and more common during upgrades.  While I'll probably continue with Ubuntu for awhile, I'm hoping they'll change their focus to something that will really improve my desktop experience... like building device drivers.

I got a bit of feedback from a few sources regarding my closing comment on device drivers--one in particular angrily commenting that it's device manufacturers' responsibility to create Linux drivers.  I try not to go into debates online as I feel like one can argue online with a stranger for hours, with whom I might find some quick concensus in person.  I've seen this phenomenon even with family members, where online arguments seem to flair over otherwise menial things.  

Anyway, despite my preference for Linux, I'm of the mind that a manufacturer has little moral or ethical obligation to write Linux drivers.  While driver availability for certain products has certainly improved a lot in the last ten years, its still in a very poor, incomplete state.  Saying manufacturers "should" write their own drivers for non-profitable platforms is a little idealistic, simply shown by the fact that so many new and popular devices don't support Linux.  As such, I was just stating that Ubuntu's engineers would do better in my opinion joining the ranks of many other Linux-advocating contributors by coordinating, creating, and polishing Linux drivers.  And that's all I have to say about that.