Sunday, June 10, 2012

It’s Time for Canonical to Stop Protecting Unity

GNOME vs Unity screenshots

I recently installed Ubuntu 12.04 on my T43, just to take it for a test spin, and because I had heard a lot of really nice things about the release. I’m still totally in love with OpenSUSE 12.1, which is my day-to-day home OS, but the vast Ubuntu repositories are always a selling point for me. I was curious if Unity was workable for me down the line.

The T43 is a great machine but its lack of a super/Windows key is always a bit of a challenge since more and more desktop environments map cool functionality to that key. With Unity, I had a tough time mapping a new shortcut to the Dash. However, I was eventually able to remap a shortcut to the launcher, because I try and avoid using the mouse as much as possible.

I’m still shocked by how complicated Unity is. Like how is the Unity plugin not its own application? And how is it not installed by default? Is this poor usability or is Canonical trying to dissuade users from making changes? I think it’s the latter given the warning from the CompizConfig Settings Manager, but all that warning does is make me wonder why making changes is so potentially dangerous.

Once I got the Unity shortcuts working, I felt like I was using GNOME 3, so I decided to install it, just to see how different it is in Ubuntu. GNOME 3 was also shockingly challenging to make function without a super key. But what I had working in my favor was understanding the GNOME 3 concept, and knowing what the different parts were called. I was eventually able to remap the super key, which calls up the search/application launching area, using dconf and changing the keybindings in org > gnome > desktop > wm > keybindings.

In general, the experience made me realize what a huge fan of GNOME 3 I’ve become. It works effortlessly for me. I use it fairly stock and don’t feel the need to make many changes, although I did install the shutdown button extension. Once I had the super button remapped, it felt just like home. I don’t think of it as a desktop environment so much as I think of it as the launcher I’ve always wanted.

Unity is fine to work with, but it still feels very similar to GNOME 3. I’m not sure why Canonical has spent so much time and effort making an environment that feels subtlely different from an existing one, but I appreciate that they seem to have resolved a lot of the technical issues I saw in 11.10. The lenses are an interesting concept, but I prefer to browse content through a web browser, rather than an application launcher.

Unity has the new HUD feature, allowing users to access application menus via typing. It’s an interesting concept, but because there’s no formal application nomenclature, users need to remember things like which programs Close to shut down versus which ones Quit. As much as I try to avoid the mouse, it’s usually pretty quick to just user the X button to close out of applications.

I was thinking a lot about the point of Unity when I had some interesting usability experiences over the past few weeks.

The first was using my friend’s MacBook to test some apps for work. I didn’t get the Finder area and had trouble identifying some programs along the dock. I made a comment along the lines of “This isn’t very intuitive, is it?” and my friend immediately disagreed and said he finds it effortless to work with.

Just a few days later, Linus Torvalds let loose with his now infamous rant against GNOME 3, which made me immediately realize that GNOME 3 is not working for everyone.

It seems painfully obvious to write this, but it bears repeating: not everyone uses computers in the same way. Any time anyone proposes there’s a magical, singular desktop experience that should work for everyone, we should all brace ourselves for failure.

And that’s really where I take exception to Unity. It’s not that it’s inherently bad — it’s that Canonical pushes it so hard on its users. They make it tough to customize Unity. They eliminate desktop competition. If a desktop environment isn’t customizable, there should be a variety of desktop environment options for users. In other words, if users can’t easily tweak an environment, it should be easy for them to choose a different one.

I can see how someone trying to tweak GNOME 3 might be frustrated by it. And for people who like using menus, it must be especially frustrating. But as someone who hates to touch the mouse, the GNOME 3 experience is fantastic. I feel no need to customize it because I only interact with it for the brief moment it takes to type the name of the program I need. Then, it disappears.

Windows 7 is actually shockingly receptive to this kind of workflow, with an amazing file search algorithm that seems to rate frequently used files above others. In that workflow, I hit the super key, type a file name, and Windows 7 shows me what matches. Right now a lot of my files begin with something like spring12, but Windows puts the ones I work with the most at the top of the list, making it easy to select and open, all from the Start menu. It’s a real time-saver, and is one of the few things I do in Windows that I wish I could do in GNOME 3 (GNOME 3 remembers recently-used files, but the search is not as comprehensive as Windows.’ Unity has a very nice search, though). Alas, it seems like this Windows 7 infatuation has an expiration date.

It’s important for distros to not only support different desktop environments, but also to curate them. Although OpenSUSE is known as a KDE-centric distribution, its GNOME implementation is fantastic. People seem to love Voyager, which is actually based on Xubuntu. Sabayon supports a number of desktop environments, too. That’s the way Linux distributions used to behave, before the emphasis on getting everything to fit on a single CD. It’s a tradition distributions should return to, making it very easy for users to choose and experiment with different environments.

GNOME 3 runs just fine on Ubuntu 12.04, but it’s a stock implementation. It’s great that Canonical believes in Unity, but it would also be nice if they threw some resources behind other desktop environments, too. Improving other desktops can only help improve Unity. Choice continues to be a core value in the Linux world. Canonical doesn’t inhibit choice with Ubuntu, but they could probably do more to promote it. As leaders within the Linux community (whether Canonical or the community likes it or not), promoting choice, even at the perceived expense of Unity, is very important.

It’s fine that Canonical has a vision for Unity that doesn’t allow easy user customization. But in the absence of customization, they should at least curate other environments so users have choice. The community-driven variants are great, but they’re not the same as a Canonical-supported environment.

If Canonical really believes in Unity, they shouldn’t be scared to put it up against KDE and GNOME and let their users pick which they prefer. Competition will only make Unity stronger, and in the end, that’s what everyone wants.

Sunday, October 30, 2011

Ubuntu 11.10: Looks Kind of Cool But Who Is It For?

I decided to try out Ubuntu 11.10 on my Thinkpad T43. It was actually my first time using Unity, although I had used the Ubuntu Netbook Edition on a netbook, and I knew the two had similar UIs. This isn’t going to be a huge, in-depth thing because I don’t see how anyone is going to touch the Ars Technica review of 11.10 (DarkDuck’s Unity vs. GNOME3 review is also quite good).

I was very curious to spend some time with Unity. I know it’s controversial, but I’ve been intrigued by the idea that Canonical is trying to give Ubuntu an experience beyond what’s provided by existing desktop managers. It seemed like an interesting direction to take.

While the Unity interface is interesting, the code behind it still doesn’t seem to be there yet.

For instance, to make any kind of change to Unity, you need to download and install the CompizConfig Settings Manager and then edit the Unity plugin. There’s a shortcut to do this, using about:config from the Unity launcher. However, after updating my system and installing CCSM, I lost the Unity interface. After messing around and even re-installing Ubuntu, I figured out that the Unity plugin was being deactivated by some kind of conflict. I reactivated the plugin in 2D mode and Unity was back. But I had never even changed anything in CCSM to cause a conflict. It seemed to be something in the update process that caused it.

The side panel thing is kind of strange. I would guess most users would want to be able to easily customize it. I’m not a big menu person, so it didn’t bother me. The application launcher is nice, but I was never able to figure out a key combination to summon the launcher. I would have loved to be able to use something like Ctrl-space to pop it up and open files and applications. Having to click a menu key just isn’t as cool.

The side panel menu also seemed to get stuck sometimes, where it wouldn’t recede after I had opened a program.

And I don’t get moving the window control buttons to the opposite side of the screen. That just seemed mean. Or else, Canonical is trying to re-train our muscles.

I think some of my problems with the Unity plugin might have been related to using older hardware (my T43 is over five years old). But in my experience, most people run Linux on older machines. In fact, that’s how lots of people get into Linux. So why not optimize Unity for older hardware? Unity has the 2D option, but it’s not as eye-catching as the 3D version. And part of the appeal of Unity (I imagine) is that it has so much visual bling.

The UI is an adjustment, but it seems designed for newer users who don’t want to tweak their systems. But how many new Linux users are going to feel comfortable in a system where they can’t change any settings to make the experience more familiar? Or one where they have to download a program and navigate a wall of settings to make simple changes?

And the technical issues I encountered were shocking. Ubuntu installations have always been flawless and drama-free. That’s a huge selling point of the distro. Everything usually just works. And whatever doesn’t work usually doesn’t prevent you from getting up and running enough to fix the rest of your system. But my Unity issues were pretty rough and required some command line work to poke around and launch programs. I’m not sure a new user could have known how to even begin to get Unity back.

Unity looks cool. It’s simple. It’s not about giving users choice. It’s about crafting a very specific experience for them. I’m OK with that. I think the global application menu is weird, but I get that Canonical wants the screen to look seamless.

But I keep coming back to who Unity is for. It seems to be for new users who aren’t invested in an existing desktop environment. But it would seem to be designed newer Linux users who are willing to install Ubuntu on relatively new hardware. How big a market segment is that? Plus, the technical issues are going to be a huge turn-off for new users. The previous Ubuntu versions are much, much, much more new user friendly. You install and you’re ready to go in less than an hour. Unity took me longer to get going than my last installs of Ubuntu, Lubuntu and Xubuntu combined.

I know Canonical is looking to crack the enterprise market, but is enterprise ready for a totally new desktop concept? Windows 8 is already taking hits for being too different a desktop. Enterprise thrives on the familiar, not necessarily on the innovative.

I understand Unity isn’t for me and I think it’s a very interesting experiment. But it still feels like a work in progress. I’m not sure why Ubuntu didn’t hang with GNOME a little longer, even if they avoided GNOME 3, instead developing Unity as an option for early adopters. If there were Unity packages users could play with, without having it forced upon them as a default, I think more users might have been more open to the Unity concept. It wouldn’t have been as heavily tested, but changing a desktop paradigm takes time. It’s not something you can do in two or three releases.

Canonical has been rushing to get Unity up and running and it shows.

Change is good, but it needs to be handled well. Unity feels like change that’s still a little bit broken.

Sunday, May 22, 2011 Saturday, May 14, 2011 Wednesday, April 27, 2011 Saturday, April 16, 2011

Curating Linux Distributions

I’ve been following the conversations around Unity, the new front-end for Ubuntu 11.04.

It’s been very interesting, because opinions are so mixed. I’ve read some nice things and some not so nice things.

Ubuntu is really trying to rethink the desktop concept, with an eye toward keyboard-free computing. It’s a bold step, so it’s bound to alienate some people.

I haven’t played with Unity yet, but I have to admit that I am curious. I love Xfce but it’s very much rooted in the “traditional” desktop paradigm. What I like about it, is that it’s very much menu driven, so I can do a lot of selecting, without a lot of clicking and mouse work. It’s almost more of a very powerful file manager than a desktop.

From what I can tell, Unity takes that model a step further. In a lot of ways, it seems like Canonical has crafted an iOS experience for the desktop.

But it’s made me appreciative of the thought Canonical puts into their products. Obviously, not everyone likes the direction they’re going in with GNOME and Unity, but in general, Canonical makes decisions based on what they think is best for the user.

Less and less users grew up with traditional desktops as their only means of computing. There are people who only use desktops for very specific purposes, like typing a paper. Or even just printing one. I actually once witnessed a student come into a computer lab, open up a word processor, and transcribe a paper off of her phone. I’m not sure why she didn’t email it to herself, but I was fascinated that she would compose a paper on a phone before moving to a desktop/laptop.

Canonical seems to be making an effort to make an OS that makes sense to those types of users.

But at the same time, Canonical seems very respectful of the users using the Canonical variants. I’ve been playing with Debian Testing and Mint Xfce and while both are good, neither feels as composed as Xubuntu. Xubuntu does more than just work. It creates a curated Xfce experience, with a lot of thought put into software selection. Debian is a little too hands-off in its software selection for Xfce, allowing the user to choose everthing himself. Mint is basically trying to cram GNOME into Xfce. Both OSs can be fixed by the user, but I like that Xubuntu doesn’t really need to be.

When we talk about Linux distros, we talk about stability and reliability and hardware integration. And those are all important things. But as those factors improve across distributions, user experience becomes more important. I can run any number of Xfce-based distributions and have similar reliability, but I’ll probably stick with Xubuntu because of their software selection. The maintainers think about how Xubuntu users might use the desktop manager and select programs to create a cohesive experience. Obviously, I could choose another distro and simply mimic the Xubuntu defaults, but why add in an extra step if it’s not necessary?

It’s safe to say that Linux now works easily in most (your mileage may vary) situations. So now, the next battle is creating distributions that create a certain kind of user experience. Unity is an attempt to do that. It’ll be interesting to see how non-Linux-inclined people respond to it.

Monday, February 28, 2011