Coding with Jesse

What is Ajax really?

April 10th, 2005

There has been quite a bit of buzz surrounding Ajax lately, even some coverage in the Wall Street Journal. So what is Ajax? A software package? A programming language? A dutch soccer team?

Ajax stands for Asynchronous JavaScript And XML. It's a buzzword to refer to using DOM Scripting and JavaScript Remote Scripting to build interactive web applications. Until now, the concept behind writing web applications was to let the server code produce HTML and send it to the browser. Now, for some reason, everyone is starting to realise that a lot can be done with JavaScript, HTML and CSS.

A web page sitting in a browser can act much like any program on your computer, and often even better. Look at Google Maps. Accessing a large database over the internet is a great idea. Keyhole does this on the desktop too, but Google Maps might be even easier to use than Keyhole itself.

I think there's a lot more that can happen here beyond the benefits of retrieving data. Forms can be submitted to a hidden IFrame, allowing the web page to add records to the database. Or with Google Suggest, even the interaction with form elements can be enriched.

If we start thinking about web applications as full-blown applications, we can see other areas that aren't being utilized. For example, a web browser is capable of handling all the events a desktop application uses such as the dragging Google Maps uses, or the keyboard interaction CSS Zen Garden uses. Also, Flash can be used for some complex interactive pieces (such as a Calendar) and talk back and forth with the web page and the server using JavaScript.

It's time to take a look at the web applications we have around now and figure out how Ajax can be used to improve them. This'll be a major turn in what the Internet has to offer. It turns out standard web technologies achieve what Flash and Java have done, but with much smaller file sizes. I really think this is the color-television revolution of the internet.