Ajax Libraries

ML May 26, 2006

In 2001, I was exploring a barren wasteland trying to figure out how to load data through http calls without reloading a web page. The pickings were slim, and about the only things you could clearly determine was that Microsoft was the only one regularly doing it in a broadly deployed app (their Web interface to Outlook), and Brent Ashley was the only one talking about it (remote scripting) in any intelligible fashion, with his iframes JSRS implementation. Titillating little gems, like the Oingo semantic web dropdown menu that changed as you typed appeared and disappeared like gossamer threads–gone before you had a chance to learn anything.

Here we are in 2006, and now everyone wants to do it. Google showed us the way with the Google Suggest tool, then Google Maps. Libraries started popping up like OpenRico (from a Puerto Rico airline of all places!), helping to bring Ajax to the snowballing Ruby on Rails. Google Map envy made the browser come into line, adding HTTP objects accessible through DHTML after the page load is complete. Now, even Safari on the Mac is supporting it, and Google Maps works their as well.

When I started HitTail, I had to choose a library. The implementation I chose was OpenRico, because it was the one Ruby on Rails had chosen, and I wanted to hitch my wagon to a rising star. I needed an implementation that would stay around for a long time and have broad browser support. But OpenRico co-founder Bill Scott joined Yahoo! Richard Cowin is still doing OpenRico. And OpenRico now supports Safari, but not in manipulation of HTML fragments in the DOM object, but rather in setting values within objects. It provides a much more JavaScript-dependent programming environment that I would like, but rearranging HTML fragments has broader browser dependency problems that makes it worth staying away from. For example, in FireFox, if you manipulate add new form widgets to a form, their values will not be included on the submit!

So in general, when looking for a good Ajax library, you have to expect that one of the most important things to do–altering form widgets based on actions taken in other widgets–still just isn’t compatible at the browser level and there’s nothing a superior Ajax library can do about it.

But that being said, my choice to go with OpenRico might not have been as smart as I originally thought. A closer inspection reveals they’re checking for MSIE vs. FireFox compatibility, but are not worrying about being broadly compatible. Google just released their Ajax development platform. I’m going to re-examine this decision.

  1. Avatar
    Brent Ashley

    Hi – thanks for the mention.

    My understanding is that OpenRico’s 1.0 release was largely code from http://www.sabreairlinesolutions.com/ where Bill and Darren were at the time. I don’t know of any Puerto Rican connection.

  2. Avatar
    Mike Levin

    Ah, whoops. You’re right, Brent. I don’t know where I got that idea. It was a company that developed software FOR airlines… not an arline itself. I guess it was just a notion I got when I was researching “where did this come from”. Thanks for the note. You’re right on top of mentions of you, as usual. Nice having a unique name! Monitoring Mike Levin is like monitoring John Smith!

Leave a Reply

Your email address will not be published. Required fields are marked *