tecznotes
Michal Migurski's notebook, listening post, and soapbox. Subscribe to this blog. Check out the rest of my site as well.
Feb 21, 2005 6:28pm
ajax: a new name for an approach to web applications
Jesse Jame Garrett of Adaptive Path just published an article about web applications development called Ajax: A New Approach To Web Applications:
Google Suggest and Google Maps are two examples of a new approach to web applications that we at Adaptive Path call Ajax. The name is shorthand for Asynchronous JavaScript + XML, and it represents a fundamental shift in whats possible on the Web.
It's a nice recap explaining the interesting new possibilities allowed by XMLHTTPRequest in browsers such as Mozilla, Safari, and IE 6. We've been using it to add full keyboard navigation to an upcoming release of ReBlog. The X in the name may be a little presumptuous: often, generating and parsing XML is a pain. JSON is a nice alternative, using Javascript's native object representation syntax to send data that can be parsed by eval() in one step.
I'm not sure how I feel about the coining of a proper name such as "Ajax", and its use in contexts such as "Ajax engine." It's always helpful to identify and describe patterns in development, but this usage implies a brand identity and productization that just doesn't exist. In its defense, Ajax is way easier to type.
Still, it's amazing how much expressiveness has been introduced into web transactions with the introduction of a simple mechanism for in-flight HTTP requests. Writing applications in this style raises a few interesting questions, especially: where does it stop? With two methods for performing HTTP transactions, it's good to know where to use regular page reloads. Ajax introduces some confusion into traditional application designs: if you're using a pattern like MVC to design your server-side code, Ajax now gives you two views and two models, where the server's view is the client's model. This is weird. Flickr gets this right, using in-page requests for small, local tasks like updating image titles or descriptions.
Comments
Sorry, no new comments on old posts.