Today is a good day to code

What is the difference between Web 2.0, AJAX, and XHR

Posted: December 31st, 1969 | Author: | Filed under: Uncategorized | No Comments »

What is the difference between Web 2.0, AJAX, and XHR

Picture of IrvinFrequently I hear even web developers getting this wrong, so I'm going to put my spin on it and hopefully everyone will understand what the differences are between Web 2.0, AJAX, and XmlHttpRequest.

I'll start with Web 2.0. First of all, if you are speaking in fact, probably the first Web 2.0 site was eBay. The way I define Web 2.0 is that a site has user driven content, and basically provides the medium to allow some behavior over the internet. Therefore sites like myspace, and facebook are Web 2.0, even thought they may or may not use AJAX or XmlHttpRequest. However, even before those sites, eBay embodied Web 2.0 in spirit as well as in fact. So really Web 2.0 is about companies partnering with users to provide good content. What that means is that perhaps the company provides some information, but users provide feedback, or they are enabled through some other method of communication / cooperation. So Web 2.0 really isn't about technology at all, it is more about a concept. Web 2.0 usually is delivered in conjunction with AJAX because AJAX provides a new way for users to interact with a site and get immediate feedback.

On to AJAX. AJAX is different than Web 2.0 and XmlHttpRequest. Many developers and marketing departments get this confused. AJAX sites were being built with Flash long before there was this whole JavaScript craze. AJAX defines a level of dynamism and interactivity with the data that is being displayed. It has nothing to do with the technological example of XmlHttpRequest. Really what people are looking for when they are trying to hire an AJAX engineer is someone who is more of an interaction designer who has an excellent grasp of the technologies that can be used to facilitate that interaction. There are lots of people who know XmlHttpRequest, and even using iframes to ferry data back and forth, but there aren't so many who understand how to build an interactive web experience. Probably because it requires not only engineering understanding, but also marketing, usability, and a little art sense as well.

Lastly, we arrive at XmlHttpRequest, or XHR for short. Just because a site uses XHR does not make it AJAX, or Web 2.0. XHR was originally used to load Xml documents without having to make the page refresh, to give web sites easy access to information. To a degree, the current use of XHR is not very different from its original intended use. The real difference comes when it is used in conjunction with either or both the AJAX, and (or) Web 2.0 mindset.

What organizations need if they wish to start creating “Web 2.0” or “AJAX” sites is not really different engineers, what they really need is a change in the general perception or idea of what a web experience should be. They should understand that the idea of a “Web Site” is outdated. The really need to craft an experience. That means that it has to have a flow, be contextual, as well as being easy and simple. Building sites that conform to all of the buzzwords “AJAX”,”Web 2.0″, and “XHR” isn't easy. Probably the easiest part is the “XHR.” It really requires studying usability and excellent interface design. Fortunately I have been seeing an incredible willingness to learn and try to achieve these goals with the people whom I have recently been talking from different companies. Knowing that, I'd say that the Internet is just starting on its act 2, and that there is much more to come.