XML.com: XML From the Inside Out
oreilly.comSafari Bookshelf.Conferences.


Is AJAX Here to Stay?

October 05, 2005

Web development in general recently emerged from a long period of stagnation. While the web browser has become a de facto operating system for the enterprise application, there used to be only two realistic options for developing them:

  1. Build simple web apps that work in any web browser on any operating system.
  2. Take advantage of browser-specific "bells and whistles" to make more advanced web applications. These applications would generally be limited to a single browser on a single operating system or require a special plugin like Flash or Java.

There was no way to create intelligent, interactive web applications without programming for a very specific environment, which led to very poor quality internet applications, or to vendor lock-in. Consequently, many organizations have been reluctant to commit resources towards applications that would only work in very specific, controlled environments, and for good reason.

All of this is changing. Web browsers have reached a critical common threshold that allows powerful web applications to be written in much the same way across platforms, using mature techniques, and without any proprietary plugins. The building blocks of these applications are (X) HTML, CSS, JavaScript, and XML. These work in conjunction with a component that allows the browser to communicate with the server programmatically (XMLHttpRequest), and we have what is now being referred to as AJAX, or Asynchronous JavaScript and XML.

What Is Asynchronous JavaScript?

One of the most frequently discussed aspects of AJAX is the XMLHttpRequest object, which is the component that the browser uses to create this asynchronous interactivity. It's asynchronous because the user can communicate with the server without the page refresh that is usually required. With AJAX, we only get the data from the server that we absolutely need, not the whole page. More importantly, data can be posted to and retrieved from the server after the entire page is loaded. This can be leveraged in creative and powerful ways to create a more fluid browsing experience.

Traditional Web Architectures

AJAX-Based Web Architectures

(Thanks to Jesse James Garrett of Adaptive Path for these illustrations.)

More than Just Hype

There is an enormous amount of hype surrounding AJAX, as well as criticism. It's only natural that there is a great amount of skepticism about whether AJAX will be just another passing fad, but some very big names in software are jumping on the bandwagon, and it seems likely that AJAX is here to stay. Google is generally thought of as an AJAX pioneer, with applications such as Google Suggest, GMail, and Google Maps all making extensive use of the underlying techniques. Microsoft has also announced that it will be releasing an AJAX toolkit called Atlas that will ease the development of rich web applications in ASP.Net. In the last six months, the number of AJAX-based libraries and tools has flourished in both the commercial and open source sectors, creating many options for developers who want to use AJAX with minimal effort. Web-based resources like AjaxInfo (www.ajaxinfo.com) and Ajaxian (www.ajaxian.com) popularize new AJAX tools and techniques with incredible speed.

Pages: 1, 2

Next Pagearrow