AJAX Explained (A Little)
In our May 2006 interview with Zoovy.com's CEO, David Steel mentions AJAX a little bit when he is talking about new web technologies related to the "Web 2.0". I wanted to post a small explanation for those who are a bit confused with the Web 2.0 thing, as well as AJAX.
First off, the "Web 2.0" is a buzzword for a shifting paradigm in the way that developers and engineers are looking at the web. In a nutshell, "Web 2.0" encompasses an idea that the web can be used as a platform for applications. For example, you may have read news as of late about Microsoft competing with Google and Sun to get web services available that will keep it's Office suite competitive. The root of this is that Google, Sun, and a bunch of other companies are recognizing that they can offer web-based services like word processing and spreadsheets. Rather than having to buy the application and run it on a Windows platform, users can access the application online, using the Web as a platform. Make sense?
What makes a lot of this possible is improvements in JavaScript, CSS, XML, and XHTML, and the way that browsers are able to handle this stuff. By making the browser do more work (client side), developers are learning how to provide robust web services and unique user experiences. Look at Google Maps or Google Suggest as the beginnings of these services. Google Suggest queries a database every time you type a letter into the search box, and returns suggestions for your search.
This is impressive because the interaction with the server happens without a new page loading, or in the background (asynchronous). Enter AJAX, which stands for Asynchronous JavaScript + XML. Due to the XMLHttpResponse Object (and the Microsoft ActiveX equivalent for Internet Explorer) in JavaScript developers can now write scripts that communicate with a server in the background. This allows developers to create much more robust interfaces and retrieve only the information that the user requests from the server, eliminating the need to constantly reload pages. The maturation of the browser DOM allows XML data to be parsed and displayed, which opens up a world of possibilities.
While the advantages are numerous, especially from the standpoint of getting information to the user, there are set-backs. Search Engine Optimization becomes increasingly harder, since much information in AJAX applications is called by JavaScript, which search spiders do not read. Also, don't put too much stock into the "technology" behind AJAX. If you were to ask me, AJAX should stand for "JavaScript finally works!" I look forward to seeing what people come up with when it comes to AJAX.
As a Flash geek, and someone that loves the possibilities that Actionsript provides, I have a feeling that we are going to see some VERY impressive websites built with AJAX techniques.