I should have sensed the danger ahead of time, but how was I to know that Steve Jobs was going to pull a laptop out of a manila envelope? I mean, honestly? Who called that?
But he did, and the Apple loyalists appear have caught the scent of blood. Hell, Alex actually bet hard currency over lunch that I’d buy the new, absurdly thin MacBook Air. Not enough that I’d hold off to win, sadly.
My concerns about adapting to the significantly different – and grating, as far as I’m concerned – interface, Apple users assure me, are groundless. Reservations over the reliability of the hardware are pointless – am I the only one who remembers the melting power cords? – says the refrain.
Most difficult of all, however, is the task of convincing people that I’m actually happy on Ubuntu. There are no evangelists like Apple evangelists, I think we can all agree. I don’t use it because I have to, because I’m compelled to, or because I’m religious about it: I use it because it’s the best solution for me personally. I make no contention that it is for everyone, but it works. Amongst its many virtues is the fact that I can bend the operating system to my needs, rather than training myself to work as the operating system sees fit.
For exhibit A of this belief, I submit the case of GNOME Do, an application inspired by OS X’s Quicksilver and GNOME’s now defunct LaunchBox. Like Avant Window Navigator, Do allows me to borrow the UI elements I like from other operating systems and fuse them into that of my choice. The end result is predictably Franken-os-ish, but as tailored to me as a custom suit.
It should be noted that I’m hardly the first to discover this little gem of an application; Miguel is calling it a favorite, which is nothing compared to the praise Russell heaps upon it. I have little to add to their summaries, and I won’t even try to explain the application’s sheer utility, in spite of the fact that it’s become a staple of my environment more or less overnight. Like most application launchers, you really need to try it to appreciate it. Pictures aren’t worth a thousand words in this case.
Nonetheless, there are a few things that interest me about the project, things that are worth discussing in my view.
Architecting for Extensibility
“It seems that one of the key ‘best practices’ that has emerged is the idea of plug-in architectures, that allow new developers to contribute an extension, plug-in or add-on to the codebase without having to learn too much about the guts of the project.” Mark Shuttleworth
Unsurprisingly, I agree. GNOME Do follows this commandment to a T, and though it’s extremely new has several usable plugins that extend the functionality already. I’m using, in fact, the Pidgin addin. While there are undoubtedly costs to the plugin approach, I’m with Mark: it is indeed a key best practice, and bodes well for the future of the project.
Besides the MacBook Air, Alex and I also discussed the underappreciated importance of developer reactions to bug reports. Though there was nothing egregiously wrong with them, the initial reactions to this serious bug I filed on Chandler strongly disincented me from trying again. Contrast that with this interchange I had with GNOME Do developer David Siegel (who has one of the more interesting developer blogs you’ll come across): after solving my problem with an altered key binding, he said “If you find anywhere where someone is having a similar problem, please pass this along.” And then thanked me when I reported that I’d done just that. That’s a project I feel good about working with and on.
It’s a small thing, to be sure, and these two issues are obviously apples to oranges, but the importance of developer/user interactions cannot be overstated. Particularly when the project is but newly minted.
Still Room to Innovate
Of significant interest to me is David’s trajectory within the GNOME community. Not too long ago, David was a newcomer, one unfamiliar enough that he initially named the project after an already existing GNOME application (GNOME Commander). Today, he’s the guy behind an application that some very smart people are literally gushing about, one that has singlehandely made me more productive. What a difference a couple of months can make.
Many will argue that the application itself is based on prior implementations, and thus not innovative in a pure sense, and there’s some truth to that. But GNOME Do is, to me, a reminder that even within large, mature projects there are still ample opportunities to make an observable impact, and a difference.
The Mono Controvery
Like another application that I rely on extensively, GNOME Do is written for the Mono stack, a stack that while controversial due to its ties to Microsoft technologies I remain impressed with. Responding to criticism of this choice – and queries as to why he didn’t write it in Python or another alternative instead – Siegel responded with a nuanced defense that balanced the traditional open source distaste for Microsoft business practices with an appreciation for the technology itself. Worth a read.
Oh, and in case any of you might be concerned that its Mono basis requires the application to be slow and to leak memory, I’ve experienced neither thus far. GNOME Do is, as a matter of fact, the quickest application I’ve used in some time, with exceptionally low latency even on my overtaxed hardware.
What I’d Like To See
Like most projects, GNOME Do’s looking for code rather than suggestions, but no one should have to run anything I’ve written. Thus, I’ll throw out a potential idea for any would be GNOME Do contributors: create a Yubnub query for Do. Yubnub, you may recall, gets my vote for the most useful web application that no one knows about, having been a staple of my browser usage since 2005.
Combining Yubnub and Do would permit the querying of literally dozens of sources direct from the launcher. Right now, I can directly query everything from Amazon to eMusic to the Hype Machine to Weather Underground via a simple command on the browser’s location bar. Do would be faster. And rather than build a Google Search plugin, a Yubnub extension would allow you to query Google, MSN, Wikipedia, or Yahoo. Or Amazon. Or eBay. And so on.
Don’t hold your breath waiting for me to switch to OS X. I’ll never say never, but I’m happy. And I’m going to wait a month or two before making a new machine decision, as I’d like to see what the manufacturers do with Penryn and promise for Montevina.