AJAX 2.0

Unless you have been locked up in a cave somewhere for the past few years, you no doubt have heard of the term “Web 2.0” used to describe a new level of maturation and sophistication seen in the latest crop of web applications. A “Web 2.0” application is responsive and streamlined. Special attention is paid to improving usability and creating an active and an intuitive interface, brining the overall user experience closer to a quick-responding standalone application than to the clunky, latency-ridden web application of yesterday.

At the heart of “Web 2.0” lies AJAX, the technology used to have a browser asynchronously communicate with the web server. “The idea is to make web pages feel more responsive by exchanging small amounts of data with the server behind the scenes, so that the entire web page does not have to be reloaded each time the user makes a change. This increases the web page’s interactivity, speed, and usability”. (Wikipedia)

As with any emerging web technology AJAX is going through a very rapid transformation. It started a couple of years back with developers hacking together code using iframes and the XMLHttpRequest object to make their web pages more interactive. These were the alpha days of AJAX. No one really paid attention to the alpha and the potential of this technology until Google took it to the functional beta level by creating Google Maps followed by Google Suggest and Google Groups. While this made AJAX a household name among web developers, even at this point developers were using homegrown code in their applications to make AJAX calls.

AJAX 1.0 started to emerge with the wide availability of open source AJAX libraries helping developers to concentrate more on the functionality of their applications and less on random browser incompatibilities and idiosyncrasies that went along with AJAX development. Prototype and script.aculo.us are probably the best-known libraries among the hundreds that are now available (Links at the end of the post). Any developer could quickly deploy a functional AJAX application using these libraries.

Reminiscent of how languages like Basic and C++ transformed into Visual Basic and Visual C++ respectively and how handwritten HTML gave way to WYSIWYG editors like Dreamweaver and FrontPage, AJAX once again made a move to become more of a server side component than a client side one. This latest development, which I refer to as AJAX 2.0, is the current state of affairs. Almost every major player in the market is working on making AJAX an inherent part of their respective development platform. This means that the developers no longer have to first work on the server-side code (ASP, PHP, Java, etc) and then separately integrate the JavaScript AJAX libraries in the front-end to get the desired functionality. Instead the server-side code written by the developers will automatically generate the appropriate front-end code to create the desired AJAX calls and user interface effects. This makes the development environment a lot more cohesive and allows the developer to create almost the entire application using a platform he/she is familiar with. As long as the developer knows the correct API for a given platform he/she can create a great looking, functional, responsive, and cross-browser user interface without ever touching a line of JavaScript. The recently released “Google Web Toolkit” allows Java developers to code AJAX calls in JAVA. The well-known Ruby on Rails platform comes with the Prototype and script.aculo.us libraries integrated to allow developers to do AJAX programming using Ruby code. There are several AJAX wrappers and frameworks available for .NET and PHP developers. I feel the next step will be the full integration of AJAX-backed user interface components with various IDEs like Visual Studio, Zend Studio, Eclipse, etc. giving us a true one-stop shop to create a complete “Web 2.0” application.

Related Links

List of AJAX/JS libraries:
http://www.maxkiesler.com/index.php/weblog/comments/round_up_of_50_ajax_toolkits_and_frameworks/

Google web toolkit: http://code.google.com/webtoolkit/
Yahoo User interface Lib: http://developer.yahoo.com/yui/
Ruby on Rails: http://www.rubyonrails.org/
Prototype: http://prototype.conio.net/
Script.aculo.us: http://script.aculo.us/

Good general sites on AJAX:
http://particletree.com/
http://ajaxian.com
http://www.ajaxmatters.com/r/welcome

2 Responses to “AJAX 2.0”

  1. Paul Ferguson Says:

    What a long way Ajax has come:

  2. francislo Says:

    Hi
    insurance http://insurance-online-5.blogspot.com/ insurance

    Bye

Leave a Reply