Welcome!

AJAX & REA Authors: Maureen O'Gara, Brad Abrams, Kevin Benedict, Pat Romanski, Liz McMillan

Related Topics: AJAX & REA, Web 2.0

AJAX & REA: Article

The "Webification" of the Desktop: What Are the Implications for Web 2.0 and AJAX?

"There is no reason why our desktop applications cannot be web-aware"

During the nineties boom days, one of my friends told me: Soon your refrigerator will be connected to the Internet. It will talk to the computer at the supermarket and send it the list of things that need to be replenished. It will also check the latest rating information on the products that you buy and will let you know if there is something better out there. And of course, it will scream when the milk expires.
 
Today, like back in the nineties, I applaud the vision of a smart refrigerator. Being a big fan of automation I think that everything that can be automated, will be automated. But just as back in those days, I believe that things get automated in a certain order. And now it is not yet time for web-smart refrigerators in every household. It is time, though, for our desktops to get web-smart.
 
Desktop goes to the web
Web 2.0 is bringing the notion of smart and thick UI to the web. We are rediscovering good user interfaces that have been noticeably missing from our web experience. Thanks to AJAX technology, we see more and more desktop widgets and concepts making it into web sites. Thankfully, we are beginning to forget what it is like to have to reload on every click.
 
Not only are desktop metaphors are coming to the web, some web sites have actually implemented the desktop using AJAX. These neo-portals use a desktop-like layout to help the user manage all web information in one place. There are many sites like this; the ones we note here are Netvibes, Goowy, Start.com and the Google home page. Of all of them, Goowy has the closest resemblance to the desktop, particularly MacOS X. They call their desktop a webtop.
 

Figure 1: Goowy webtop
 
There is an article on TechCrunch talking about Goowy that has lots of follow up comments from readers. Some readers are saying that they are not ready to exchange their desktops for webtops and spend the entire working day in the browser. There are usability and productivity issues that need to be addressed before we abandon the desktop software and permanently move into the browser.
 
The web comes to the desktop
In the meantime, we should be seeing more of the opposite trend – the "webification" of the desktop. There is no reason why our desktop applications can not be web-aware. An improvement in this area would drive up our productivity, because switching back and forth between the application and the browser is very inefficient.
 
Let’s look at some examples of applications that already succeed in integrating web sites and web services into our desktops. The first example shows the Trillian chat client using the Wikipedia to lookup definitions.
 

Figure 2: Trillian chat client using Wikipedia
 
If this feature would not be built into Trillian, the user would need to select the word, copy it, open the browser, go to the wikipedia site, paste the word and hit enter to search. Instead, the user just rolls the mouse over the word. This is 1 second instead of at least 10 seconds. This is productivity!
 
Another example of the webification of the desktop are the Dashboard Widgets on the Mac. Apple folks have come up with the idea of exposing bits of the web as widgets. All these widgets are written in HTML, JavaScript and CSS. By cleverly leveraging popular web technologies, Apple instantly gained an army of developers.
 
Each widget takes up a small piece of the desktop and is specialized in presenting one type of information or one web service. There are thousands of widgets, so we can not list them all. Here are some examples to give you a flavor: iTunes current song lyrics, del.icio.us feed widget, and a calendar widget. 
 
All of these widgets demonstrate the "webification" of the desktop, because they seamlessly integrate with the web services behind the scenes. Whatever song iTunes is playing, the iTunes widget goes out and fetches the lyrics. The del.icio.us widget displays the latest links and helps the user quickly find any link without launching the browser. The calendar widget shows the date, local time and is smart about daylight savings. The great thing about all these widgets is that they save us clicks, and therefore save us time.
 

Figure 3: iTunes lyrics widget
Figure 4: del.icio.us widget

 
The final example is the Flickr plugin for iPhoto. iPhoto is the most popular photo management application on the Mac, Flickr is the most popular site to share pictures so there is a natural fit.
 

The integration is correctly done via the Share option in the iPhoto. The plugin allows immediate aggregation of a user’s pictures into Flickr sets, and supports tagging and description. Like any good integration, the plugin does everything we would expect it to do and nothing extra.
 
Integrate to boost productivity
Making desktop applications web-aware pays off because it drives productivity and saves user's time. The user can not afford to spend time cutting and pasting between applications. The user can not afford to do 3 clicks instead of 1. With the increasing amount of information around us, we need smart, automated and context sensitive software that is designed for productivity.
 
The desktop applications should step up and integrate the best web services to make it easier for the user to get things done. The web services, on the hand, need to also step up and offer solid API’s. Thankfully, API's are part of Web 2.0 culture. Many popular web services provide SOAP or REST interfaces that are basically equivalent to what the users can do directly on the site.
 
Even if the service offers an API, integrating it into the desktop may not be a good idea. Anytime when we are mixing metaphors, paradigms and platforms, we need to be careful. It is important to ask why, what and how.
 
When thinking about webifying a desktop application ask questions like these:
  • Is there a direct productivity benefit in this integration?  
  • Can the integration be done in a way that does not break the current usage model?
  • Does the integration lead to additional overhead for the end user?
  • Will the integration result in a lot of maintenance?
 
If these questions make you feel like there might be issues, the integration is probably not worth doing.
 
Lets go back to our the first example, and understand why it was a good idea for Trillian chat to integrate with Wikipedia. Notice that Trillian exposes a small piece of information via a popup. It does not launch the browser. Instead it succeeds in showing information instantly and using only a small amount of screen real estate. In the next example, Apple Dashboard Widgets, again, the key is that each widget shows only a small piece of information. Both of these demonstrate integration that gets the data from the web and avoids launching the browser.
 
The iPhoto integration is different. It is useful because it provides a quick way to upload phots from iPhoto to Flickr. It is an example of an automation that helps the user with typically tedious data duplication. Another example of this pattern are the web backup software tools that present themselves as drives or folders on your desktop.
 
If your integration falls into one of these two categories and you can integrate it into your solution in a straightforward manner, you are likely to get a lot of 'Thank you' notes from your customers.

More Stories By Alex Iskold

Alex Iskold is the Founder and CEO of adaptiveblue (http://www.adaptiveblue.com), where he is developing browser personalization technology. His previous startup, Information Laboratory, created innovative software analysis and visualization tool called Small Worlds. After Information Laboratory was acquired by IBM, Alex worked as the architect of IBM Rational Software Analysis tools. Before starting adaptiveblue, Alex was the Chief Architect at DataSynapse, where he developed GridServer and FabricServer virtualization platforms. He holds M.S. in Computer Science from New York University, where he taught an award-winning software engineering class for undergraduate students. He can be reached at alex.iskold@gmail.com.

Comments (2) View Comments

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


Most Recent Comments
AJAX News Desk 05/22/06 07:14:38 AM EDT

There's no reason why our desktop applications cannot be web-aware. An improvement in this area would drive up our productivity, because switching back and forth between the application and the browser is very inefficient. This article looks at some examples of apps that already succeed in integrating web sites and web services into our desktops.

Macwidgets 05/22/06 01:30:18 AM EDT

|| Another example of the webification of the
|| desktop are the Dashboard Widgets on the
|| Mac. Apple folks have come up with the
|| idea of exposing bits of the web as
|| widgets.

Good example!