exact phrase  any/all
Managing the enterprise information network
denotes premium content | May 26 2012 

Feature

posted 28 Nov 2006 in Volume 3 Issue 5

Website development

Building Web 2.0

Web 2.0 is the term widely used to describe the new wave of interactive web applications – and Ajax is the key technology behind it.

By Graeme Burton

Put the simple term ‘Ajax’ into Google and the first item displayed is not Ajax Amsterdam, one of the biggest names in European football, nor a brand of bathroom cleaner, nor any of a multitude of products worldwide that sport the name: it is the Wikipedia definition of a group of web technologies that provide the foundations of Web 2.0.

Its number one position in the Google rankings reflects the importance that has been placed on Ajax by developers, analysts and venture capitalists alike. Web 2.0 – and Ajax – will enable a whole new world of interactive information, tools and services to be delivered direct over the internet.

And the revolution has barely even begun. “If you look at our website, it’s not very interactive. It’s like opening a book. The new ‘Ajax-fied’ websites are much more engaging,” says Kirit Saelensminde, chief technology officer of software developer Felspar.

Ajax stands for ‘asynchronous JavaScript and XML’ and is the key suite of tools providing the interactivity behind websites that more and more organisations

– and users – are demanding. What has excited so many people is its potential to make the web browser the centrepiece of the computer, rendering such applications as Microsoft Office irrelevant.

Of course, such claims have been heard before. In the mid-1990s, when the internet was booming in popularity, there was much hype about how the internet and the ‘network computer’ would usurp traditional client applications, especially Microsoft Office.

That never came to pass because the browser and web technologies at the time – not to mention the internet itself – were far too immature. They simply couldn’t provide the complex interactivity, reliability and instant response of traditional PC applications.

Ajax changes all that. The term was reputedly first coined by Jesse James Garrett, an information systems architect and the founder of consultancy Adaptive Path, in February 2005. Garrett claims to have thought it up while in the shower, trying to work out a way to explain to clients some of the exciting technologies with which a slew of start-ups were developing new web applications.

As the definition implies, it is not a single technology, technique or approach to designing interactive websites. Rather, it is an umbrella term covering a combination of core technologies that have been around for some time, but which Garrett recognised were being applied together to produce powerful web-based applications. Ajax, says Garrett, includes:

  • Standards-based presentation using XHTML and cascading style-sheets;
  • Dynamic display and interaction using the document object model;
  • Data interchange and manipulation using XML and extensible style sheets (XSLT);
  • Asynchronous data retrieval using XMLHttpRequest;
  • JavaScript to bind everything together.

The classic model of web-based applications involves the submission of data to a backend server, which processes the requests and then returns whole HTML pages to the user. While this is adequate for reading news and magazine articles online, it is too slow for the kind of interactive applications that made PCs popular.

The key to Ajax is that it slashes the need to reload web pages after each individual operation is performed. Instead, Ajax enables a browser to simply update smaller changes as and when they are made by the user, reducing both the volume of data and the complex processing traditionally required.

Ajax therefore enables more sophisticated applications to be run on a web browser, such as office suites, that were simply not usable before in that format. Garrett explains how it works: “Instead of loading a web page, at the start of the session, the browser loads an Ajax engine – written in JavaScript and usually tucked away in a hidden frame. This engine is responsible for both rendering [drawing and re-drawing] the interface the user sees and communicating with the server on the user’s behalf.”

He adds: “The Ajax engine enables the user’s interaction with the application to happen asynchronously – independent of communication with the server. So the user is never staring at a blank browser window and an hour-glass icon, waiting for the server to do something.”

When the user takes action, the Ajax engine is referenced first and any response that does not require communication with the server, such as simple data validation, is handled instantly by the Ajax engine.

“If the engine needs something from the server in order to respond, the engine makes those requests asynchronously, usually using XML, without stalling a user’s interaction with the application,” says Garrett.

The key to the importance of Ajax and its popularity is that it is not a software product or package, but an approach to the design of web applications that encompasses a common set of standard applications that everyone has built into their web browser – regardless of the web browser they are running or their preferred operating system.

No one needs to pay a licence fee to a software company either to develop or to run an Ajax-based application, which means the playing field is level and the potential user base huge.

Software as a service

At the moment, Ajax technologies have largely been used for consumer-facing applications and services, such as Flickr and Google Maps, although Outlook Web Access (OWA), the online version of Microsoft’s Outlook e-mail client, remains arguably the most widely used Ajax-based application.

However, many analysts are starting to look forward to the possible contribution that Ajax could make to the delivery of ‘software as a service’ in conjunction with service-oriented architectures (SOA).

The SOA concept involves using ‘web services’ technologies – such as SOAP, the simple object access protocol, as well as XML – to provide software components as individual services, breaking down traditional monolithic applications into their constituent parts.

In theory, Ajax can provide the front end to heavyweight corporate applications built upon the SOA concept. With Ajax, different SOA components can be strung together and presented to the end-user as a single, coherent, corporate application with a consistent user interface – one that can just as easily be reconfigured should corporate needs or business processes change.

For many organisations, that will help to create applications that can be adapted much more quickly and cheaply than ever before – a factor that will help support change-management programmes which can themselves often be slowed by the lack of adaptability of the traditional applications underpinning many major organisations.

However, Ajax requires JavaScript to be switched on in the browser, yet many organisations disable it as a security precaution. “On our website, between five per cent and ten per cent of users don’t have JavaScript enabled,” says Saelensminde.

That is partly why popular Ajax-powered web applications such as Yahoo Mail also offer plain HTML versions – yet running parallel versions of the same software or service obviously doubles the support costs, too.

And there is still a long way to go before Ajax-based technologies can form the foundation of a new corporate application paradigm. Ajax-powered online applications such as word processors may be impressive, but they still lack most of the features and functions found on Microsoft Word and OpenOffice Writer.

Indeed, while Microsoft’s Outlook Web Access offering provides and impressive demonstration of Ajax’s potential, the difference between the features and functions offered by the traditional version of Outlook and OWA highlights the gulf that remains between the two application-delivery approaches.

Graeme Burton can be contacted by e-mailing, gburton@ark-group.com

 

Ajax, the power behind the website

Many web users may be unaware of it, but Ajax technologies provide the interactivity behind a number of increasingly popular websites. These include:

  • Flickr picture sharing;
  • Google Mail;
  • Google Maps;
  • Joyent team-based calendar sharing;
  • Kiko.com online calendaring (owned by Tucows);
  • Meebo web instant messaging;
  • Upstartle, the web word processor acquired by Google;
  • Yahoo Mail online e-mail;
  • Zimbra open-source collaborative e-mail.

Glossary

Cascading style sheets (CSS)

A standard for controlling the presentation of web pages;

Document object model (DOM)

Specifies how objects within a web page are handled;

Extensible style sheet transformations (XSLT)

The language for transforming XML documents;

JavaScript

A scripting language that works within the browser to provide interactivity to websites;

XMLHttpRequest (XHR)

Protocol used by JavaScript to transfer and manipulate XML data to and from a web server.

Sponsored links

Subscribe to the EI e-newsletter. Keep up-to-date with the latest news from EI magazine

Intranets and Portals report
Copyright ©1994-2005 Ark Group Ltd All rights reserved. No part of this site or the publications described herein
may be reproduced in any form without the permission of Ark Conferences Ltd, Registered in England, No. 2931372.