Hot Skills: Ajax - fast route to Web 2.0-style applications

Ajax builds on common web skills to enable developers to create Web 2.0-style applications quickly and without back-end infrastructure changes.

Ajax builds on common web skills to enable developers to create Web 2.0-style applications quickly and without back-end infrastructure changes

What is it?

Ajax (Asynchronous Javascript and XML) improves the user experience by providing desktop-like features for web applications, and minimising delay. Instead of reloading whole pages, only changing data is exchanged with the server, and the application remains available to the user.

Ajax builds on common web skills that are natively supported by most browsers, without relying on proprietary plug-ins. Many Ajax toolkits, libraries and frameworks are available, including Dojo, Zimbra AjaxTK, jQuery, JSon and the Yahoo UI Library for Javascript developers Google Web Toolkit and others (including some based on the Eclipse Ajax Toolkit Framework) for Java developers PHP Ajax a Perl module called CGI::Ajax Ajax support in Ruby on Rails and Wt for C++ developers.

Several of these enable developers to write the application entirely in the language they are most at home with, leaving the framework to generate the necessary HTML and Javascript.

With so many separate initiatives, plus cross-browser compatibility problems caused by the way different browsers implement Javascript, there are potential interoperability problems, particularly when multiple Ajax libraries are used in the same web page. This is being addressed by the OpenAjax Alliance.

Where did it originate?

In 2005, Jesse James Garrett of Adaptive Path published Ajax: A New Approach to Web Applications, which explained how standard web technologies could enable the user's interaction with the application to happen asynchronously, independent of communication with the server.

The OpenAjax Alliance began early in 2006. Founder members included BEA Systems, Borland, the Dojo Foundation, the Eclipse Foundation, Google, Mozilla, Novell, Openwave Systems, Oracle, Red Hat, Yahoo!, Zend and Zimbra. Microsoft, Adobe, Sun and Cisco joined later.

What's it for?

Several of these toolkits can be used to add Ajax controls to existing applications without ever having to get to grips with the nuts and bolts of Ajax development. But the OpenAjax Alliance says, "Most Ajax applications leverage an Ajax framework but still require some level of customisation by the development team."

Many Ajax frameworks provide support for collaborative and composite applications (mashups).

OpenAjax conformance will mean frameworks remain interoperable, and users can change vendors easily.

What makes it special?

Ajax frameworks enable developers to create Web 2.0-style applications quickly and without back-end infrastructure changes, keeping both end-users and IT management happy. Critics say Ajax breaks some fundamental web and application architecture principles, and increases the vulnerability of web applications.

How difficult is it to master?

Ajax development requires skills on both client and server side. The OpenAjax Alliance says, "On the client side, developers may need to familiarise themselves with one or more Ajax client-side toolkits, along with programming techniques for incremental DOM updates, XHLHttpRequest-based client-server communications, and asynchronous communications event handling. Most of these techniques require incremental knowledge on top of existing expertise with HTML and Javascript."

What's coming up?

No dominant Ajax toolkit has yet emerged. A survey of practising Ajax developers showed they overwhelmingly preferred open source to commercial offerings.

Rates of pay

Ajax is rapidly becoming a standard requirement for web developers. Experienced Ajax developers can expect premium rates.

Computer Weekly salary survey >>


Most frameworks come with their own tutorials. A number of training companies offer Ajax for the usual commercial rates - £1,050-plus for a three-day course.

Read more on Web software