It's amazing to me what features drive decisions when choosing a technology. In my case, it's a clock applet, but let me set a little bit of a context first.
I stopped configuring my UI environment several years ago, opting instead to use the experience that had been designed for me by the fine folks at Ubuntu. This wasn't entirely just blind trust or pleasure - but rather that the defaults were sensible enough, and I wanted to be in the business of doing things, not spending an hour deciding what font I wanted my desktop to display. I believe I've been doing this since dapper, if not earlier.
Until now.
I tried. I mean, I've bitched at Jorge some in person, but I ran Unity starting with Natty up until last week. I ran it as provided, as intended, and I tried to learn to think about things in the way it was asking me to.
Unity is generally a decent piece of software. I don't hate it by any means and it is certainly workable. I can see how, if one wanted to design a single user interface that would work on laptops, tablets and phones that Unity might be what you'd end up with. There are weirdnesses, such as alt-tab having become counter-intuitive and seemingly non-deterministic. That the launcher buttons launch a program the first time you click them and switch to the program subsequently makes sense for every application I run - except for terminal windows. Of course, since Unity isn't designed with me in mind (even though I'm a stalwart and loyal Ubuntu user who evangelizes it to eveyone I meet) it's to be expected that UI behavior around having 20 different terminal windows open might fall through the cracks
None of the things I didn't like about Unity were monumental though, and I learned to deal with them in the spirit of being a good sport and knowing that sometimes initial distaste is really just distaste for change itself.
On a lark last week, while reading about Mint, I decided to give the Mint Gnome Desktop Extensions a try - which meant installing Gnome 3 - so I gave that a try too. Same thing, really - gnome-shell, MGDE - they're both fine. They're both weird in a their own way, and I'm sure I could get used to both of them if I cared to spend the effort - but they aren't any better than Unity, nor is Unity any better than either of them. They're all just new and weird and will take getting used to for a person who has used and loved an X11-based desktop as his primary interface since 1999. I've got habits. I expect them to work. On urging from a friend, and since I was already trying out alternatives, I gave XFCE a shot. It's also fine. It behaves more like how I'd expect things to behave than the others do, that's for darned sure.
So I had some alternatives, and they either fixed some things I mildly cared about, or they didn't and just chose their own unique ways to be weird... essentially a wash.
Except for the one thing.
The thing that, it turns out, has become the one must-have feature for me. The thing that I had before and now have lost. And the one thing that I tried in each of the environments to find a good solution for.
And failed.
And that's the Gnome2 Clock Applet.
I have, on more than one occasion, lorded it over my friends who are silly enough to run something that isn't Linux about how bad-ass my clock applet is. They have nothing like it. It's a feat of UI brilliance. It works like a normal user expects a clock to work, and then it has additional features that are perfectly discoverable without having to read documentation. So it's got all of the power that a power user might want, and yet has sensible defaults and behavior if you just want it to be a clock.
Let me tell you some of what it does for me:
- It is a clock.
- In a very succinct way, it also shows me temperature and weather.
- When I click it, it shows me a calendar, and an expandable list of locations.
- It lets me add a set of locations
- It shows me those locations as dots on a world map.
- That world map has a daylight/nighttime line drawn across it.
- It shows me the times of all of the locations, as well as the weather indicator.
- It lets me change my location by clicking a button.
NOW - the pure UI designers out there will scream - why does your clock show you weather information? That's unrelated to the time!!!
See - that's what's brilliant about the applet. It seems to understand that it's not actually a clock - even though that's the first element of it that you see. It's a location information and management applet. For a clock to truly and properly work these days, it kind of has to know where you are in the world (a feature of all clock systems on all computers at this point) Once it knows that - well then - why not be a gui interface to both managing that location and providing information that is dependent on that location. For someone who travels as much as I do (none of my family ever know what city I'm in) it's a godsend. With one click, I tell my laptop where I am, and it keeps a summary of essential information about that location in a useful location quickly within my eyesight. It recognizes a use case - a real use case. It recognizes that my location may not be a fixed quantity, and that I might want to deal with that in a seamless and sensible manner. It also recognizes that, in addition to just being able to change locations - I might work regularly with people all over the globe, and sometimes it's really handy to be able to simply and easily see whether it's appropriate to assume that they are awake or not. On top of all of that - if YOU happen to not need any of that, you don't have to know that any of that is there.
Unity has a clock applet that lets me switch locations - but no weather. I have to add the weather indicator for that, and then I have to maintain two location lists and update it in two places.
Gnome3/MGSE is even worse - the weather indicator that it has doesn't seem to support location lists - only your current location - and you are required to enter that location using cryptic weather station id codes.
XFCE's clock doesn't even support showing me the current date.
So I've decided something. For now, I will run Gnome Classic (aka Gnome 2) and I will continue to enjoy my user interface experience, complete with consistent operation of all of the buttons on my computer and an amazing location application that is unmatched across any operating system. Gnome 2 was the last thing that both worked well and was designed with me as a target user. When such a time comes that I am, for whatever reason, prevented from running it, I suppose I can sit down and port the features I need to whatever new environment I have to run - but it would be really outstanding if instead the people running the project that I'm ostensibly a member of started caring about me again.