Etech06 Notes: Introduction to AJAX

by chris on March 7, 2006

This session was put on by Alex Russell. I didn’t take many notes after the first few minutes because I was busy playing with the sample code. But the session slides and sample files are available online anyway.

A few thoughts I took away:

AJAX is good if: you can target two majority browsers (or have resources to write multiple versions of the site) and when it will make user’s lives better… not worse. Or if your competition is using it.

AJAX has problems: accessibility, breaking the back button, Javascript’s lack of robustness, it can fail silently, and it ignores indempotency (new word for me, guess it means something like maintaining the integrity of the user’s actions while other interactions might be happening with the same data or process).

Javascript is different, but not impossible. It’s a complete, good language (now). Learn it. Use a good toolkit (Dojo, Prototype)– there’s a lot of bad code out there. Javascript is also never what you expect it to be…

You need good debugging skills. The Firebug Firefox extension is hot. Then it’s up to your tenacity, Google, and good standards references. There are a plethora of tools out there depending on platform and browser.

Philosophically, AJAX is helping keep the web open… and the open web is under attack. For all its quirks, AJAX is still standars-based, using open protocols, and available to multiple clients. But the open web still needs advocacy.

And remember: 85% of users use IE. You might not use it, your friends might not, but everyone else is! (this is a lot like hearing that everyone except your friends stomps on puppies and makes baby Jesus cry).

[ ]

  • Share/Bookmark

{ 2 comments }

beau March 7, 2006 at 7:33 am

this is a lot like hearing that everyone except your friends stomps on puppies and makes baby Jesus cry

But it’s true! They do!! They’re all stomping puppies and making that carpenter’s kid wail.

Has that %85 IE been slowly falling?

Ultra picky question: If AJAX is standards based, shouldn’t it be “ECMA” rather than “Javascript”? Is that the slightest bit relevant these days?

Suddenly I’m flashing ahead a bit. Despite being a vim-weenie (as opposed to an emacs stud like yourself) I’m imagining a not-to-distant personal computing environment in which embedding the programming language compiler of your choice is a practical option. So instead of mosaic + javascript we’ll have something like FIREFOX+++ with (perl/C#/take-your-pick). What would become possible if our main user apps themselves were not simply slightly scriptable by an external instance of a language but had the full capabilities built right into them. The taunt in the vim/emacs wars was, “Why run an OS when all I want is a text editor?” But as cpu cycles and bandwidth and storage continue to be increasinly availabe, why the hell *not* bundle an OS into the “browser/mua/gui”? (One answer: keeping the apps dumbed down sufficient not to lose that %85 percent of the user base. But as we see more data-age natives [contrasted with telephone age immigrants such as myself] even that %85 will be at home with the notion of firing up a shell and scripting a one liner to automate ordering their pizza and porn, don’tcha think?)

Just fantasizing, but I figure this is the place and the time is now. Keep up the good work for us wannabes who can’t be there.

chris March 7, 2006 at 10:05 am

Well, that’s why I was being tongue-in-cheek about it– though I think the high was over 95% at one time… the lack of development at Microsoft (for a while) was a real boon for AJAX development.

re: the rest– well, I think that is essentially the idea of the Web OS and browser as participation platform. But there are a lot of monetary battles to be fought. I think the real deal is all about making the data relevant and the apps not-so. That way it matters less and less how we want to do things because they can all be remixed.

One thing that I’m definitely a lot more enthusiastic now is the ability for micro-formats to help move us along that road.

Comments on this entry are closed.

Previous post:

Next post: