Primer: Ajax

What is it? Ajax is a buzzword that describes a collection of Web-oriented programming technologies—all of them several years old—for creating Web applications that behave more like traditional computer programs.

What does it do? A Web application built with Ajax efficiently delivers additional information to a browser when someone clicks on a button or moves the mouse cursor over a part of the page, without refreshing the entire page. That, ideally, results in Web pages that respond almost as if they were a locally installed program. For example, video rental company Netflix uses Ajax to automatically pop up a movie’s synopsis, complete with a thumbnail image of the movie poster, when a customer moves a cursor over titles in a list of search results. Previously, the site required loading to a brand-new page if a user wanted to find out more about a movie.

What’s in Ajax? It stands for “Asynchronous JavaScript and XML.” (Adaptive Path, a San Francisco Web design consulting firm, is credited with coining the term.) JavaScript is a programming language that provides the interactive features of Ajax; for instance, it manages what happens when someone clicks the mouse. The “asynchronous” part of Ajax uses a piece of software created by Microsoft in 1997, written in eXtensible Markup Language (XML), that retrieves data from a Web server only when it’s requested by the person viewing a page instead of all at once when a page is first loaded, as with conventional Web pages.

Why is this stuff getting attention now? Because some big Web sites have recently provided examples of useful—and fun—Ajax-based applications. Google Maps (maps.google.com), introduced in February, shows street addresses on a map and then lets you scroll in different directions without having to wait for the page to reload. “Sites built using the Ajax approach are easy to use and very cool,” says Brian Goldfarb, a product manager in Microsoft’s Web Platform and Tools group. “It gets you emotionally connected.”

Why else is it interesting? Ajax works with most standard Web browsers and any Web server, unlike proprietary technologies for creating interactive Web applications that require additional software (such as Macromedia’s Flash). Although technically the Microsoft-developed XML code that is part of Ajax isn’t an industry standard, major browsers—including Microsoft’s Internet Explorer and the open-source Firefox—work with Ajax-based pages.

What’s the downside? It’s very hard to do. Creating an Ajax application from scratch is like having to build a brick wall but first having to figure out how to create the bricks. “Sexy Web pages are great,” says Forrester Research analyst Mike Gilpin, “but the dark side to Ajax is that it’s really, really labor intensive.” That’s why Ajax-like applications haven’t achieved widespread popularity.

Will it get easier? Yes. Web development tools vendors are delivering better building blocks for Ajax. In September, Microsoft demonstrated Atlas, a set of prebuilt programming “libraries” that wrap Ajax technologies into discrete, functional pieces of code. Tibco, an application-integration software company, last year bought General Interface, a six-person startup that developed a tool for creating Web interfaces with Ajax. For Tibco, Ajax is no mere decorative trifle: “It’s for people who want to create rich applications,” says Kevin Hakman, a marketing director at the company, “and eliminate the installation of software on the desktop.”