Thursday, March 10, 2005

ajax - a new approach to web applications

This looks interesting:

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. essays/archives/000385.php

It's interesting particularly as Yahoo has just implemented a (seemingly half-assed) revision of their mail application using XML/JavaScript for asynch loading:

function asynchLoadCompose(mill)
    window.setTimeout("loadCompose();", mill);

function asynchRefreshCompose(mill)
    window.setTimeout("refreshCompose();", mill);

var gComposeIter = null;
var gRequiresSpaceID = false;

var gWelcomePage = "";

// etc.

For 3 days since Sunday there were big teething problems, though these seem to have disappeared now. Whereas Gmail was designed to be asynch from the start, Yahoo has had it bolted on, so only the auto-complete and compose features benefit.

Given that (with broadnabd, at least) one often spends only minimal time actually retrieving data, and loads of time reading it, it seems reasonable that the slack time could be spent caching data for later. Gmail uses 250kb of JavaScript - that is quite a bit.


  • That yahoo are playing catchup really doesn't surprise me at all I think
    they stopped innovating new back and front end technology about 4 years
    ago whilst Google pushed the envelope where they could.

    Re Ajax, very nice idea, and remarkably simple in concept, it reminds me
    conceptually of Web Proxying, in that [in the webproxy] concept your
    browser connects to the local cached pages and gfx's ( gifs,jpgs whatever )
    instead of downloading and redownloading and loads them from there, and
    just grabs dynamic content from off local net, in this case the local net
    is almost always massively faster than getting from the remote site, page
    expiry in the cache is handled by HTML and the cache config.

    Just that same priciple with an Ajax Engine acting as the buffer and
    hiding the laggy nature of the web, whilst providing better interactivity.

    Perhaps the Yahoo purchase of Flickr is something to do with them having a
    decent working Ajax powered product platform which can evolve into the new
    Yahoo services....

    By Blogger Pondskater, at 1:37 pm  

  • The slight complication arises when you have to support older browsers, or those with JavaScript disabled. I think Gmail just uses a completely different (and much more basic) interface in that case, rather than trying to develop a model which supports JS and non-JS versions.

    The XMLHttpRequest object ought to change the whole model for web apps - instead of needing to wait for the user to hit a new page, stuff can happen in the background, just like in "real" applications ;o)

    By Blogger Skellywag, at 11:47 pm  

  • By Blogger Skellywag, at 3:39 pm  

Post a Comment

<< Home