Ajax: A New Approach to Web Applications

Defining Ajax

Ajax isn’t a technology. It’s really several technologies, each flourishing in its own right, coming together in powerful new ways. Ajax incorporates:
> standards-based presentation using XHTML and CSS;
> dynamic display and interaction using the Document Object Model;
> data interchange and manipulation using XML and XSLT;
> asynchronous data retrieval using XMLHttpRequest;
> and JavaScript binding everything together.

The classic web application model works like this: Most user actions in the interface trigger an HTTP request back to a web server. The server does some processing — retrieving data, crunching numbers, talking to various legacy systems — and then returns an HTML page to the client. It’s a model adapted from the Web’s original use as a hypertext medium, but as fans of The Elements of User Experience know, what makes the Web good for hypertext doesn’t necessarily make it good for software applications

How Ajax is Different

An Ajax application eliminates the start-stop-start-stop nature of interaction on the Web by introducing an intermediary — an Ajax engine — between the user and the server. It seems like adding a layer to the application would make it less responsive, but the opposite is true.
Instead of loading a webpage, 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 the interface the user sees and communicating with the server on the user’s behalf. The Ajax engine allows 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 hourglass icon, waiting around for the server to do something.

Who’s Using Ajax

Google is making a huge investment in developing the Ajax approach. All of the major products Google has introduced over the last year — Orkut, Gmail, the latest beta version of Google Groups, Google Suggest, and Google Maps — are Ajax applications. (For more on the technical nuts and bolts of these Ajax implementations, check out these excellent analyses of Gmail, Google Suggest, and Google Maps.) Others are following suit: many of the features that people love in Flickr depend on Ajax, and Amazon’s A9.com search engine applies similar techniques.
These projects demonstrate that Ajax is not only technically sound, but also practical for real-world applications. This isn’t another technology that only works in a laboratory. And Ajax applications can be any size, from the very simple, single-function Google Suggest to the very complex and sophisticated Google Maps.
At Adaptive Path, we’ve been doing our own work with Ajax over the last several months, and we’re realizing we’ve only scratched the surface of the rich interaction and responsiveness that Ajax applications can provide. Ajax is an important development for Web applications, and its importance is only going to grow. And because there are so many developers out there who already know how to use these technologies, we expect to see many more organizations following Google’s lead in reaping the competitive advantage Ajax provides.

Moving Forward

The biggest challenges in creating Ajax applications are not technical. The core Ajax technologies are mature, stable, and well understood. Instead, the challenges are for the designers of these applications: to forget what we think we know about the limitations of the Web, and begin to imagine a wider, richer range of possibilities.
It’s going to be fun.

More from my site

  • Need Suggestions on Parts of a Desktop PC I'm planning to buy myself a Desktop PC this Christmas from HP and I'm contemplating between an HP Pavilion Elite m9299d Desktop PC or HP Pavilion s3690d Slimline PC. But I realized that I […]
  • How did I maintain the top spot for a specific keyword? For those who are asking and are interested to know how did I reach and maintain the top spot (second to macuha.com) for two weeks on the keyword "Marhgil Macuha" in his last mini-SEO […]
  • 2012 Movie: Prophetic Predictions and the Mayan Calendar Analysis The 2012 movie is a very interesting film about the end of the world. As far as I can remember, the end of the world was predicted long ago, during the Bible Times. My mom said that the […]
  • Things are so complicated Hehe.. ano ka ba jehzeel, ano nanaman yang title mo? hmp! drama again????.. hehe.. sandali. pag isipan ko pa anong isusulat ko, for the sake of blogging lang kasi, at para may ma ipost […]
  • Last day of June It seems that a really don't know what to say, I mean, ahmm... Let me guess, who am I? I am Me! because it is me, and I am the one whose writing this pestering article on the web. As I […]
  • Somebody uses my identity! I have received a letter from Citibank a while ago, I opened the letter and read it. I was surprised that I was rejected to have a Citibank credit card, and I can apply again after 6 […]

One thought on “Ajax: A New Approach to Web Applications

Leave a Reply

Your email address will not be published. Required fields are marked *

twelve − 5 =

This site uses Akismet to reduce spam. Learn how your comment data is processed.