I believe this application uses the "new" XMLhttpRequest methodology for decoupling user interaction with the web browser from the browser interaction from the web server. This allows the user to interact with the web application even while the web application is waiting on new information from the server. The technique also allows the web application to redraw only select portions of the screen, rather than reload the entire page whenever any update occurs.
This technique is not new. Developers have scripted web sites to do this since as early as the late 90s. The only downside to doing this in 1999 was that you ended up needing to use a very specific browser version. However, what has changed is that it's now 2005 and the average web surfers are using much more sophisticated browsers (whether IE, Mozilla/Firefox, Safari, Opera, etc.). Now, careful use of XMLhttpRequest techniques can work across all these listed browsers.
This technique wasn't invented by google, but it certainly seems to be used by them to greater and greater effect.
Other web applications that use this technique are:
- Google Suggest (As you type into the search box, Google Suggest guesses what
you're typing and offers suggestions in real time.)
- Gmail - google's free e-mail (holler if you want an invite)
- Google's Mapping software - wow, it's neat!
Articles that discuss the XMLhttpRequest technique:
- Under Gmail's hood
- Discussion of how maps.google.com works
- Google Suggest Dissected...
- Guide to Using XMLHttpRequest (with Baby Steps)
Also of potentially related interest:
- XBLinJS HomepageXBLinJS is an implementation of XBL-style widgets in pure,
- EchoEcho is a framework for developing object-oriented, event-driven Web applications.
- netWindowsnetWindows is a flexible client-side toolkit designed to aid in the development of web