Wolf’s Little Store

March 16, 2008

Web applications are an evolutionary step to better desktop software

Most web applications I use are connected to a desktop application. Flickr, Del.icio.us and Twitter all have desktop/plugin software for easy access to the most common actions. Even Gmail has an indirect desktop interface in the form of Apple’s Mail (using IMAP for instance) or any desktop e-mail client for that matter.

The reason I prefer to use desktop software as opposed to web interfaces is the ease of use of most desktop alternatives. Compare the tedious process of posting a link to del.icio.us with the post page to the ease of use of the plugin. Batch uploading photos with the Flickr Uploadr: ten times easier than with the web interface. New message in Mail: just a shortcut away.

Austin Heller makes the same point in his post Syndication Applications:

“The reason most people prefer using desktop applications is because they provide a richer user experience. One would be hard-pressed to find a web app that is faster, easier to use, or more feature-laden than a desktop equivalent, and very few can succeed at one of those. What they do offer is extraordinary convenience, and that's an important trait to have.

Desktop apps are the other three traits mentioned; almost all of them run faster, you can work with them offline, and the developers don't have to assume any other technical limitations of the web. But by the same token, you can't use your data very easily.”

A needed evolutionary step

The best argument for using web applications is that your data is available anywhere. It can be re-used, remixed, you can easily give other people access to the same data - you can upload a photo to Flickr and view it on your phone, on any computer, wherever you are. You can make a new Google document and start collaborating directly with your peers, even if you are in Denmark and they live in New York, NY.

I don’t intend to deliver the message that web applications are bad applications. I believe web applications are (were) a needed evolutionary step to building applications that integrate the web tightly in the way they work. We must take the good points of web applications to enhance existing desktop applications:

  • Give me my desktop application, but use the power of the internet to enhance it. Have collaborative writing in Word and Pages; syndication with an online account in iPhoto. Direct uploading of files in an image editing program. Think Skitch’s sharing functionality inside Photoshop.
  • Give me subversion when writing, so that every time I hit the save button a new revision is created. One that I can see online, from any place, anywhere. And if I decide that it needs to be shared in private, or that it can just be public, I can do that straight from my text editor.
  • I’ll synchronize my data with the cloud, while working in the OS environment I’m used to. The environment where I have a dozen of little time-saving tricks up my sleeve. Not the mouse-only, functionality-limited browser window.
  • Don’t give me an interface where I cannot press escape to silence a confirmation popup, where I cannot reliably press enter to confirm an action because the javascript guy decided to code things differently. I need a degree of consistency in the way I work.
  • I’ll have a few folders on my computer that sync directly with the web. Drop boxes.
  • I want my applications to use my available resources. I didn’t buy two tons of processing horsepower to wait for my data to come up because I’m downloading an interface [from the web]. The interface needs to be there. I want my applications to use the frameworks that are readily available in my operating system. I’ll wait for my data to load. No problem with that.

I sincerely hope this is the direction we are heading. I’m seeing hopeful signs across the web. Dropbox and Skitch are examples of the direction I’d like new and established applications to go. Don’t lock me up in my browser.

* While a toolkit delivers a degree of consistency and empowers developers to rapidly deploy their ideas, this is also dangerous, as sticking to the toolkit handed to you can hinder interface innovation. However, it’s up to the developers to decide whether they stick with what is being given to them in the form of a framework (e.g. Cocoa) or whether they want to build custom parts around that framework.

3 responses

Leave a Reply

Write in English, stay on-topic and polite.