Ajax is really starting to make it big, complete with a new XMLHTTPRequest W3C Standard Specification and everything. Just goes to show what a harmless article will do. Well, I guess there was actually a lot more to it than that.
History and Background of Ajax
Essentially the technology allows a Web developer, in the Web browser, to
programmatically create an HTTP request and talk to the Web server
without having to reload the page, as traditional Web applications always
For years, there were many ways to implement dynamic updates and talk to the server.
- Hidden IFRAME Sources
- XMLHTTPRequest... but not called "Ajax"
As time went by, clever Web developers came up with more ways of talking to the server. Some examples include Eric Costello writing "Remote Scripting with IFRAME" for O'Reilly. Going back further into the history of "DHTML", I'm pretty sure the DynAPI featured loading remote content, and that probably even worked in LAYER for Netscape 4. Scott Andrew used to go on about XML-RPC and Erik Arvidsson published his Xml Extras long before anyone recognized what the possibilities were, although it intrigued a few observant folks. Finally, folks that were paying attention noted it when the Mozilla project implemented it ... so the stirrings were out there and I remember thinking, "well now, this has real potential, if we could just use it!".
Now, I'm not saying I did this sort of thing all the time, I can probably count the number of times on one hand, but the techniques were there nonetheless and I remember reading about them and experimenting -- the big deal was it was difficult to rely on them. I distinctly remember a custom CMS tool I wrote which populated a drop-down menu as well as brought up a "file picker" layer in 2003 -- and that's pretty late in the game but certainly "pre" Ajax.
But, it got a name and some people started to use it in the mainstream, so good for us all. Just the fact that it got a name and some high profile companies started using it a lot really changed people's thinking, taking the Web closer to desktop software more so than ever. And that's a good thing.
Microsoft Introduces Atlas
Last year, Microsoft even got into the game a bit with their own implementation library, which of course they had to call something else to distinctively give it their own name, even though it's the same technologies. Of course, this offering, called Microsoft Atlas is tightly integrated with their tools like ASP.NET and Visual Studio.NET.
Finally, for the first time Internet Explorer 7 will support the XMLHTTPRequest object natively instead of via an ActiveX object. So, if you're doing some crazy browser detection, you should be warned.
So it has become one of the most exciting developments on the Web front
in years, and with browser shares what they are today -- you can start to
rely on it to an extent, whereas back in the day it was sort of
questionable. That's really the biggest change besides the fact that it
should be used to enhance unless under strict controls, and it should
degrade gracefully. But that's another article.
Examples of Ajax Online Today
There's tons of great examples of Ajax in practice today.
- Flickr has tons if you're logged in and using your account
Suggest, Reader and Calendar all feature Ajax
Yahoo News uses it
extensively once you click into a story for related article
- Just about every 37Signals tool uses it
- Online apps like Zohowriter, Meebo, and Writely
books and conferences. It's come a long way, and pushed the Web
closer to desktop software than ever.
Ajax and XMLHTTPRequest Object W3C Standards
So, at the beginning of April, the W3C standards body released its draft specification of the XMLHTTPRequest object. I was a little nervous, but looking over the specification, it looks fairly basic to adhere to the XMLHTTPRequest object we know. I haven't spent a long time on it, but I was pleased to see the participation on the mailing list of some big names and that the authors list included several folks from the browser manufacturers circles. Notably absent however was a Microsoft representative -- although Google, Opera, and Mozilla were all there.
I guess what pleases me most is that the W3C decided to do this, as in recent years there's been some controversy of their next moves in the Web space. Even to the point of representatives from the major browser manufacturers creating their own working group to come up with the next specification on Web Forms and what's sometimes called "HTML5". Fed up, they created the Web Hypertext Application Technology Working Group, called "WHAT" for short. Although, they did submit their spec to the W3C. This is the next interesting one to watch, but that's another article.
At any rate, there's a pretty good article over at DevSource which talks about Ajax and it's move over to standards. On to the next thing, but the more standards there are, the better off we all are.
Possibly Related Articles
commenting closed for this article