Friday, November 21, 2008

OmniFocus for iPhone (and iPod touch) Review

I've been using The Omni Group's OmniFocus on the desktop since it was in beta testing. I like it. For a to-do list manager, it's a complex application, but that's what I like about it. Some people can get by with a handful of linear lists, and that's great for them, but I can't—I need a more hierarchical structure. I like the metadata that OmniFocus can attach to a task, and in particular I like the idea of ‘contexts’—a concept borrowed from David Allen's Getting Things Done: The Art of Stress-Free Productivity. (I'm not a die-hard GTD fanboy, though I've read the book and many of his suggestions work for me.)

Omni released OmniFocus for iPhone (which also runs on the iPod touch) soon after the App Store opened. At the time, though, it required using a pre-release version of the desktop application to enable syncing of tasks between the two. I wasn't keen on letting beta software loose on my fairly substantial OmniFocus database, and given that syncing was pretty much the killer feature for the mobile version, I held out until just a few weeks ago when Omni released OmniFocus 1.5 for the desktop. By then, the iPhone/iPod version was up to 1.1, and I bought it.

I was initially quite impressed. It was a good looking application, with none of the immediately obvious complexity of the desktop version. Although I had the benefit of many months of getting used to OmniFocus's approach, the mobile version seemed intuitive. After a bit more use, I would say it has a really good subset of the features of the desktop application. Obviously there are limitations—as far as I can tell, for example, you can't make a recurring task on the mobile version—but Omni seems to have pared down to pretty much the right features. Walking around with basically my entire database in my pocket sure beats having to remember to print out lists of errands before I leave the house.

OmniFocus for iPhone has bugs.
  1. Within 24 hours, I had trouble with syncing—where by ‘trouble’ I mean that the iPod apparently couldn't sync with the data stored on MobileMe. It was terminal: I had to wipe the database stored on my iDisk, and start again from scratch on the iPod side. I sent in a bug report, and the Omni respondent was helpful enough, but could suggest little more than trying what I had already done. I moved to local WiFi syncing (which, in my opinion, is significantly less cool than being able to sync tasks over the wider Internet when you're out and about), and this worked for a further 24 hours before it failed in the same way. Having said all of that, I re-started syncing over MobileMe, and it has been working without issue since those first two hiccups. Further, I have literally just today updated to OmniFocus for iPhone 1.1.3, which claims that “OmniFocus is now able to repair disconnected root transactions (rather than simply reporting ‘no root can reach all tail transactions’)”, so maybe it's completely fixed.
  2. Just this morning, I entered a task into the Inbox. On saving, the screen blanked, though the bottom row of buttons were still displayed. So I hit the Home button, and the application crashed and terminated. On restarting, the entered task was present in the Inbox. Again, this has only happened once. Something like this was mentioned in the 1.1.1 update release notes. I thought I had installed that update, though I'm not completely sure. I'll give Omni the benefit of the doubt, and assume I didn't. After updating to 1.1.3 just now, I hope I won't see this again.

The problem with bugs like these is that they're really difficult to reproduce. Without updating the mobile version, for example, the syncing bug happened twice, then just stopped happening. While that makes it hard for developers to track down and fix the bug, it also makes it utterly demoralizing for customers reporting them. I bothered, but many wouldn't. I doubt I provided any useful information, other than an instance of it occurring. The response from Omni was next to useless (it couldn't be anything else), and everyone involved presumably feels pretty unhappy about it. I did. I think Omni has to answer for this kind of thing. By most accounts, syncing is a hard problem. But that doesn't justify having a go at it, and then releasing what you've done. Surely the syncing issue came up in their internal testing—it happened to me twice in 48 hours.

I think Omni make great applications. As well as OmniFocus, I own OmniGraffle. I think OmniFocus for iPhone has a lot of potential, but it feels like it was released in a rush. Omni has just released the fourth bug-fix update, and who knows whether that's killed all the major ones. At just under $A 24, I don't think this is acceptable. Surely Omni has the customer loyalty to delay a release like this until things are reasonably stable. In fact, the rushed feel of the release of the mobile version is in complete contrast to the desktop version, which stayed in beta for months on end before its 1.0 release. The very customer loyalty that allows them to prolong a development cycle like that is precisely what gets eroded by rushing a buggy product out the door.

Saturday, November 1, 2008

Why is Apple Mail thrashing my CPU?

Earlier today, Apple Mail started doing this:
Mail thrashing CPU
And yet it's essentially idle—the Activity window shows Mail doing absolutely nothing. Mail still responds, and if I quit it and restart, it works fine for about half an hour. And then it starts again with the thrashing. I have no idea what it's doing. It looks like I'm not the only one.