An ode to desktop app experiences
We spend so much time looking at web-applications these days that we tend to ignore desktop apps. Still, every once in a while there’s room for pleasant surprises, and today was one of those days with the release of CSS Edit 2.5 (by Macrabbit) and Coda (by the guys at Panic).
I guess it is a little weird to be singing praises to desktop applications when it is a known fact that access-anywhere is the killer feature, but even with Ajax or RIA environments like Flex, there’s (at this point) no way to get the same kind of “gratification” from web-apps. The web still doesn’t manage to compete with the responsiveness and the constant look and feel of a great desktop application. This is unfortunate, and although changing at a rapid pace, its just not there yet.

Developing for the web and developing for the desktop are two very different concepts (although Adobe’s Apollo and Joyent’s Slingshot are blurring the lines), but there’s a lot to learn from the world of the desktop.
Learning from desktop apps
Flow and state: There’s one particular thing desktop applications have that we still haven’t been able to mimic on the web – a clear notion of flow and state. It’s clearer to use an example, so lets look at Coda (a webpage development app – some called it Dreamweaver on steroids today, which is a good fit) – It lets you go from an overview, to edit (collaboratively through the Subetha engine – genius), to preview, to a terminal through tabs. We can do that on the web, but it feels clunky (poor navigation metaphors, latency constraints). The lack of “instant gratification” on-click is one of the clear differentiating factors.

Using a modern desktop-application is a great because it is a connected experience. You go from one action to the other without a sense of disconnect – the sense you get from the almost constant “reloading” feeling on the web. Even apps that take the communication complexity from the foreground into the background (Gmail’s a good example) still feel like an “online” application.
Conclusions
I’d love to say I come bearing solutions, but I’m not. While there’s lots of ideas going around about online user experiences, there’s a long way to go – and definitely a lot to learn. We’re trying to tackle these problems on our own products and projects, but we are by no means going to be successful alone. We need people who feel this pain of not being able to do certain things. We need there to be enough people feeling this pain, in order for something to actually change.
Although there are no solutions, at least we all (the community of developers, user experience people, designers) have a clear understanding of the problem. And that alone is a great start. Now go enjoy some desktop apps and bring that experience to the web.

I couldn’t agree more. And in 2007, it’s not a lack of tools that’s holding us back.
One problem is that many web designers come from a background of designing pages rather than applications–and web developers have been focused on the technology, not the experience. So many web sites don’t have an object model or a clear sense of how the user flows from one task to another. Definitely fixable, but not a trivial problem.
Comment by Diana — April 23, 2007 @ 11:00 pm