Unity, love it or hate it, it's here to stay. I recently gave it a try and had to just stick with it and in this following blog post, I'm going to argue why Ubuntu 12.04 is the best desktop experience that the floss community has to offer!
So what's so significant about it? Well it's not just about flashy graphics, this release is a long term support release, this means that 12.04 is supported longer than the usual 18 months and not just any LTS release, this LTS release is supported for 5 years.
Let's let that sink in a little bit, 5 years, that's a lot of faith in a product. One that comes with an interface that, let's face it has had a lot of bad press over this last year and that's something to bear in mind, it's only been a year!
What really makes Ubuntu 12.04 stand out is how very different it feels to the usual Gnome/KDE/XFCE interfaces. Now each interface appeals to a certain user, this is why such choice exists in our community, but Ubuntu is positioning itself as a direct competitor to Windows and Mac in the desktop space, both of which have been revolutionizing their interpretation of the next generation of graphical interfaces.
This is the important thing to take note of, Unity is a next generation interfaces. With the recent exception of Windows 8, the Microsoft operating system has largely had the same basic interface since 1995, seventeen years of the same graphical interface metaphor.
Which is all a graphical interface is, a metaphor for a desktop.
Desks with their files, folders and staplers etc.
Since starting a career in computing most of that "desk work" is done on my digital desktop and while one could agree the metaphor of files and folders is still useful and helps visualise an electronic based task by using familiar real world concepts, the whole thing starts to break down when you need to stitch two PDF files together.
The point is that in the early days a graphical interface imitated the real world. That way new users would have common conceptual reference points, however with computers so ubiquitous in our day to day lives the metaphor doesn't seem quite as useful as it once was.
This is were Canonical have it right, we should start fresh, study how users use their computers these days and develop an interface based around how we interact with the digital. To that end they have done some user testing (here, here and here) and used that as a means to develop and improve their home grown Unity interface.
Here's where I really commend them, they developed a vision and were uncompromising in their realization of that vision. Sometimes you just gotta knuckle down and take a few beatings for sticking with your visions. Apple have been deciding what they think is the right interface for years now and it's worked for them to the point of being viewed as a leader in the Interface world. So if following an unorthodox (at least in the open source world) methodology will ultimately result in a great open source user interface then I certainly have no problem with them adopting a more rigid development method. I also take care to remember that I have not paid a since penny on this OS and that I am not entitled to anything except what I am given.
Anyway lets look at Unity.
If you have not used Unity before it's a bit different, one can see where the various inspirations came from, it has a menubar at the top of the screen (a la mac), a dock/launcher to the left of the screen, which is the go to location for application management and a rather good looking overlay which allows you to search, run and manage your installed applications and documents.
Here's how my desktop currently looks:
Immediately visible along the left of the screen is a dock type application, there's arrows which indicate which applications are open, an arrow on the left of the icon indicates the application is open, an icon on the right indicates that the application is focused.
These are tiny little additions that contribute to a fantastic user interface.
The overlay thing.
You can see several things here, in the top left you have the window controls, in all full screen applications the window controls are always located there. At the bottom there are five icons, these are known as lenses they one to filter results, additionally there's a means to further refine your search results.
Now, you might be forgiven for thinking that it's not vastly different from say, the LaunchPad feature of OSX, but more functional.
Not a lot of difference is there?
Another big feature is the HUD, a means to perform actions that are in the menu but instead of having to click through the menus, it enables one to search the menu by just typing, like so.
As I'm sure you can see this is something of a break in the desktop metaphor, it seems to be driven towards the concept of text input. For years I have been seeing various users using various bits of software for quick launching things based on entering a search string.
Even care has gone into the preference settings, it's a fantastically complete solution, which again allows you to search inside the preferences.
It's not just the graphics though, Ubuntu 12.04 comes with it's own cloud based file sync application (Ubuntu One) that's also available on your phone so you can use Canonical's offering over all your devices.
Finally the variety of free and paid for applications available in the Ubuntu Software Store is fantastic, I was expecting almost no paid for applications, but almost every search produced some premium results, which was encouraging.
This is stuff both Windows and Mac are pushing hard towards and why should we do something different simply because it's what someone else is doing, arguing that one shouldn't do something similar that's popular sounds very much like not invented here to me.
A gret 'feature' is that the interface in all it's advanced graphical glory, can be operated entirely without the mouse, something that a short cut junkie can really appreciate, but by the same token one can still do everything using the mouse, should they choose to.
What it boils down to is the fact that Ubuntu isn't just about the interface (which is frankly stunning) it's a complete end to end solution, with an apps store, cloud integration and excellent preferences management all wrapped in a simple yet powerful next generation graphical interface.
And it's only going to get better.
EDIT: I also forgot to mention that there's also a back up and restore method that allows you to perform incremental backups, this is in the style of Apple TimeMachine and again it's integrated into a central preferences application.
There's also the Ubuntu font face, now, I don't think creating one's own type face was strictly necessary, but it looks very good and does create a unique brand, much like Mac had Monaco for years as the default font. There's merit to it, and the mono space variant is great for programming in Vim!
All these little things add up to create a very polished, functional unique branded desktop experience.
Ok, so I tried to stay out of the editor wars, I went so far as to write my own text editor! I was sure I'd never have to touch vi beyond that damn annoying visudo command and in University I had a really bad experience experience with Emacs, and I haven't touched it again since. I saw no need to look into either text editor.
However I started a new job back in March and had to use a 'real' text editor so it was either Emacs or vi.
When the flashbacks were over and I'd stopped twitching, I looked at Vim as my editor of choice, I wont use Emacs if I can avoid it. Period!
It was rather overwhelming at first, I resented the fact I had to use an editor that were so old, ugly looking and confusing.
As I begun to use it in my daily work, I thought I was experiencing Stockholm syndrome or something because I quickly began to notice a change, it was small things at first, I instantly went to "esc:w" to save documents in Word and in Firefox I hit "/" to google anything, it was like a perverted digital infection that was getting inside my head.I found myself doing things the Vim way, almost naturally.
It came to a turning point when I needed to remove the Windows end of line character on a Linux machine (when the hell will we have this fixed?), I can't remember the specifics, it was in the days before I believed, as many of you do, before my eyes were opened.
It was insane, but it was a varient on the ":%s/\^M//gc" or something like that, it was like magic, dark, secret, arcane magic and it was mine.
The power of Vim comes from it's complext command system, oh that and scripts...
Scripts are the beginning of the downward spiral for me, give me infinate ways to customize something and I will be unable to make it perfect, close to, but not absolutely perfect, but this is where I reveal my perfectionist nature. There is a script for basically anything one might want to do, you can download them all from here. Some work well, others don't, your millage will vary.
It's definately not a friendly text editor, I'm still learning the basics, the hjkl navigation thing is the hard thing to keep my hands in the right place. Twenty odd years of muscle memory of using the arrow keys or wasd will make a transition hard, but ultimately worth it. There is a certain amount of determination and work that has to go into learning Vi(m), like any skill you get back what you put in. I don't know that I would have taken to it so quickly, had I not had someone in the office on hand to help me learn Vim.
There was certinly a lot of customizing work I had to do to the editor to get myself comfortable with it. It was like getting a new chair and having to work that you sized groove into it, I'm still working the groove in because there's some scripts I installed and need to remove and likewise I've found some nice themes, but I will need to adjust them a bit, but it'll get there.
If you haven't used Vim before it's worth giving it a shot if you have need of a text editor, however the text editor is an unusual piece of software largely relegated to hardcore programmers, however I would argue that this recent trend for distraction free writing environments could do worse than use Vim as a base.
All in all my journey so far has been fun and I am still learning and truthfully I wish I'd learned it earlier.
So this post is later than I wanted and has changed a lot from what I intended to write about. It's also largely opinion and speculation based on what I have seen from kicking around the floss world. I make no claims of accuracy or authority, just humble observation and conclusion.
To be honest I think rumours of its death are greatly exaggerated. I remember the KDE 4 thing, now I am not a KDE lover by any degree, but I got the memo that 4.0 was not to be considered stable. So I don't understand why users flocked away from KDE as a brand, I totally get distributions bundling unstable code though, but plenty of distributions did stick with KDE3 for quite some time.
I bring this up because I remember similar stories about how KDE wouldn't recover and its fading into insignificance, but its still here and even though I personally don't like it, it does look like the best KDE yet.
I believe Gnome as a piece of software will weather this storm, its free software with a lot of external investment into its technologies and platform. It's unlikely to be going anywhere soon and even if its parent foundation goes away there are other companies and projects that depend on Gnome in whole or in part that someone, somewhere will adopt it again.
Off the top of my head I can think of xfce, cinnamon, unity etc which all depend on all or in part on Gnome and or its underlying technologies, I don't believe for a second that even if the Gnome foundation was to go under some other foundation wouldn't form and take over or that it would get passed to an existing foundation.
Take LiberOffice vs OpenOffice for example, even though LiberOffice seems to be the more dominent suite these days, old OpenOffice is still kicking around. Gnome replaced Pidgin with Empathy, yet Pidgin is still used by some users. Those who want Gnome to survive will ensure Gnome will survive, in some form or another.
There are plenty of examples of other open source projects that have survived despite the belief that they are not long for this world, however evidence of other projects surviving is not assurance that Gnome will, but I would doubt Gnome disappearing anytime soon.