Web Applications

Have you seen some of the fascinating new tools coming out of Google recently? Applications such as Google Maps and Google Suggest are the highest profile examples of a growing trend towards application design on the web.

When the majority of people think of an application they are thinking of something like Microsoft Word or Adobe Photoshop which you purchase on CD and install on your desktop PC. Although a very exciting medium the web has never been able to compete with the level of complex functionality and power you can get from the average desktop applications. However things are beginning to change.

The problem with the web

At the most fundamental level the way the web works is very simple. Using your web browser (the client) you request information from a web server (the server) over the internet and this server then passes that information back to you. However this client/server process has one fundamental flaw. While your PC is talking to the web server, what are you doing… that’s right, waiting. Admittedly with the explosion of broadband you aren’t waiting as long but it is still slow enough to compare unfavourable to a software application.

Let the application work as an intermediate

But as I have already said things are changing. This is largely due to the maturing of a number of existing web technologies that are beginning to work together in a more sensible manner. So now instead of this constant client/server back and forth every time you want a new piece of information, the client downloads an application from the server at the outset and that application delivers the information to your browser. The advantage of this is that the application can download additional data irrespective of what you are doing in the browser window. This means it can predict what you might want to do next and make sure the information is available to display immediately.

What are the benefits?

To some extent the benefits are obvious by looking at sites such as Google. Take for example Google Suggest. It would not be hard to imagine instances where that kind of auto complete functionality would be invaluable. Have you ever used a form that completes your address using just your postcode and house number? The problem is that it needs to refresh the page to find your address which is not only slow but has other associated problems. Imagine being able to complete that address using just the postcode without needing to reload the page? Or imagine being able to drag things into your shopping basket without waiting for the web server to add the item. What about having a content management system for your site that didn’t involve constantly connecting to the server each time you save a page.

Conclusions

The best thing about all of this is that it can be built now using existing technology. There is nothing new here and it doesn’t require any special plug ins such as flash or realplayer. It is just a different way of building web sites.

If you want more on the technology behind this new approach then you might be interested in reading the following article:

Ajax: A New Approach to Web Applications

Headscape

Boagworld