Sales
0161 215 3700
0800 458 4545
Support
0800 230 0032
0161 215 3711

Old dog learns new tricks

Old dog learns new tricks

Ajax is the hottest Web technology around, but it's not as new as you think, discovers Simon Bisson for The Guardian’s Online Supplement this week.

The Web has been wonderful for reading information but not so good for more complex tasks such as filling in forms or handling Email. That's because everything has to be sent from the remote Web server: booking holidays, online banking and similar applications often involve filling in the boxes, clicking a button, waiting for a result ... then filling in all the boxes again.

But this is starting to change with the arrival of responsive new systems such as Google Maps and Flickr. These are, effectively, applications which run inside your Web browser, meaning you don't have to refresh the whole page to get the information you want. They use an approach called Ajaxing, set to become one of the big buzzwords on the Web.

Adaptive Path, a US-based user experience consultancy, coined the name Ajax (Asynchronous JavaScript And XML) for browser applications based on a combination of languages - HTML, CSS, JavaScript and XML. However, these technologies have been around for many years.

In 1998, Microsoft released Internet Explorer 5, which introduced XMLHTTP, a set of tools used to transfer XML data from a web server to a browser, all controlled by JavaScript. The browser document object model arrived around the same time, and was used for Dynamic HTML.

One of the first applications to take advantage of a combination of these technologies was Microsoft Outlook Web Access. OWA uses a browser to connect to an Exchange mail server, and delivers a user interface that looks and behaves like the familiar Outlook desktop application even over the Web.

However, writing code to handle the server connections wasn't easy, and it wasn't supported in every browser. Unsurprisingly, the early attempts at Ajax fell by the wayside... until the arrival of Google's type-ahead Suggest service popularised Ajax's cross-browser features. While the core of any Ajax application may be as small as 12 lines of JavaScript, developers need to add complex business logic to handle asynchronous connections, and it's a lot harder than putting together an HTML form.

Toolkits that make building Ajax applications easier are rapidly becoming an important part of any Web developer's arsenal. The open source Ruby on Rails includes Ajax as part of a complete Web application framework. Ajax toolkits are available for most Lamp (Linux/Apache/MySQL/ PHP) open source Web platforms, and the SAjax Simple Ajax Toolkit also supports Microsoft's ASP and Macromedia's ColdFusion.

Ajax meets Flash and Java, meanwhile, in the OpenLaszlo user interface toolkit. All the big players are taking an interest in Ajax, and IBM will include its features as thin client components in a future version of its WebSphere Studio.

Microsoft, on the other hand, recently announced Atlas, its Ajax framework for .Net developers. This will initially consist of a Client Script Framework, a set of ASP.Net 2.0 server controls, tools for linking Atlas browser applications to Web services, and a set of basic services to help control application personalisation.

John Montgomery, director of product management for Microsoft's Developer Division, describes Atlas' strengths as "delivering applications with an appropriate user interface, using familiar tools".

There's a bigger story behind Atlas than just Ajax, though. It will be an important tool for Longhorn developers, as future versions will also be able to work with Avalon, Microsoft's future XML-based user interface technology. There is also the possibility that Atlas will allow what Montgomery calls "scalable user experiences. This is where the same code provides a user interface that is as rich as possible in the user's browser - whether that's something basic in Lynx, better in Firefox, and best of all in Avalon.

Technologies like Ajax make it easier to deliver more intuitive user interfaces. An IBM research project uses it for applications that wait three seconds after a user stops typing and then automatically submit the form to a server. The approach could help deliver more effective call centre applications, allowing staff enough time to input and edit information without having to move off the keyboard to click a mouse.

Imagine an Ajax-based insurance quotation application. You can fill in your details and see the resulting quote on the same page. If you need to make changes, you can do it straight away and get the new results back quickly - all without leaving or refreshing the page. Sam Roddick, director in consulting at Deloitte, says Ajax can give companies a competitive advantage over traditional web applications.

Corizon is one company that's taking a serious look at Ajax. Its products bring many different functions from many different applications into one Web application. One problem Corizon's developers have is managing and displaying responses to many queries on one screen.

Ajax's asynchronous nature solves the problem: a single page can link to several different applications, displaying the responses as they are delivered. It's a technique that will help call centre staff answer questions and solve problems more effectively.

Google Maps is currently the most well-known Ajax application in operation, and Telcontar's mapping platform lies at its heart. For vice president of marketing, Marc Prioleau, Ajax changes the way people think by changing the user interface. Mapping applications that use Ajax start with the map and help people think spatially. With tools like Google Maps, it is easy to search for restaurants near a hotel and see all the options together, rather than trying to juggle maps, search results and printouts from different sites.

Despite the youthful state of development toolkits, Ajax has significant business benefits beyond a more intuitive user experience. The XML data sent between client and server can be made up of snippets of data, rather than a whole page of HTML. This keeps server load to the minimum - and that, in turn, keeps applications responsive. If you have tried to use the Web to buy presents on Christmas Eve or flowers just before Mothering Sunday, then you will know the symptoms of an overloaded e-commerce site: pages that load slowly (if at all) and order forms that say the server is busy and delete the contents of your shopping basket.

In contrast, an Ajax ecommerce solution would make users feel they are getting a much better online experience, without much additional hardware from the business. A site could put its basic ecommerce Ajax application on a small Web server farm, and then direct XML requests to and from its core business systems - leaving the Ajax application to do all the formatting and display.

By passing XML messages between your browser and business servers, Ajax can link your Web applications into an existing business process. Businesses can use Ajax to build Web user interfaces into servers and service-oriented architectures. And IBM has already demonstrated Ajax applications that connect directly to Web services.

Ajax is set to dramatically change the way we work with Web applications. Even without a fancy interface everyone can see the advantages: no more back button and no more "server busy messages".


print this article

Return to internet news headlines
View Internet News Archive

Share with: