The AJAX Experience, Day 1

I should really start with what belongs with last night. Brian Dillard and I accidentally connected by circumstance alone. We ended up chatting for a bit about our respective approaches right outside the elevator about the design decisions that we made in our respective history managers and what we were trying to accomplish. Eventually that migrated so that we could continue talking and digressed away from development things. I’ve since had numerous conversations with him and they’ve been a blast—covering everything from politics and food to preference (and deference to) languages and libraries. His roommate for the week, Zack Frazier, is also hilarious and has been fun to talk to. I sometimes feel bad because Brian and I can jump in depth into one of our shared topics of expertise and leave him out, so, Zack, if you ever read this, I’m sorry!

So, on to today. Interestingly, the beginning of the conference didn’t start out with a unified keynote. Immediately following breakfast (muffins) everything jumped straight into the Framework Summits with no unified greeting and welcome to the conference. A little awkward, but I guess it works out.

Everything kicked off today with the same presentation by John Resig as yesterday. I took the opportunity to finish editing and post my blog entry I wrote last night.

The second presentation was by Karl Swedberg of learningjquery.com that both introduced jQuery and went a little bit into the jQuery dogma of progressive enhancement. He demonstrated a to-do list that worked both with and without JavaScript enabled, in contrast to 37signalsTaDa Lists (built with Prototype). This again demonstrates jQuery’s commitment to unobtrusive JavaScript.

The third session was also a repeat with Paul Baukus presenting jQuery UI. His demo of the snap function uses Winamp images to create the visual. Hilarious.

The last session of the day for the jQuery Framework Summit was the “jQuery Team Code Review” which featured lots of people who really know their stuff when it comes to jQuery. A brief panel session discussed general questions and then there was an opportunity to have some of the jQuery team members review specific code that you were working on. I spent this time seeing more of what Scott and Maggie over at Filament Group are working on with ThemeRoller and a menu plugin. I’m looking forward to ThemeRoller being a default part of a jQuery-based Ext.js type framework…

Next was lunch, which was delicious. I didn’t expect it to be as good as it was, but the cous-cous was definitely a winner, the mushroom wrap was no slouch, and the lemon tart was sweet and tangy. Pretty much a home run by my book, I got a second plate. I also sat with Brian Dillard and Zack Frazier and reviewed a few of my design decisions on JSSM with Brian so that he could speak to why I did some of what I did.

After lunch started the unified sessions. Ben Galbraith and Dion Almaer of Ajaxian.com gave one of the most amusingly disjointed and still completely understandable presentations ever: they set a randomized timer that would ding between every 10 to 120 seconds at which point whoever was speaking had to stop and the other one of them would continue where they left off. It worked, somehow. That takes an incredible amount of poise and prep, I was impressed more by that than by what they were saying, I think.

This was followed by Ojan Vafai introducing Google’s Chrome browser. He basically reviewed all of the features that everybody is talking about on the blogosphere with some insights into design decisions that they made. I wonder if they have any regrets in the creation of V8 when now already both Mozilla and WebKit have JavaScript engines (SquirrelFish Extreme, TraceMonkey) that outperform it and are already cross-platform able. It will be interesting to see how this plays out.

During the afternoon break I reconnected with Aaron Ogle and Reed Lauber who were sitting beside me in the morning jQuery Framework Summit. We just talked briefly and then ducked back in to hear PPK host a panel discussion featuring representatives of four major JavaScript libraries: Prototype, Dojo, YUI, and jQuery.

It turned into a bit of a ideological battle about approaches to problem resolution with JavaScript where you almost felt that you had to pick sides. From my biased position in the audience, I really liked what John Resig had to say. A major point of contention during the panel was with regards to the upcoming goal of removing browser sniffing from jQuery to instead focus on feature detection. There were two major points in this discussion: to be responsible to the web development community as a whole and hopefully lift us out of the dark ages of user agent sniffing and to provide browsers the opportunity to automatically defer down the optimal code path if they are able to support the functionality of that code. I think that this is going to be an increasingly important task as we begin to face the need of functioning more on mobile devices and it becomes more and more costly to identify browsers based upon their user agent string.

Finally, the day ended with a trip to dinner with Aaron and Reed. We ended up in the center of Boston eating at a Tex-Mex place called Zuma in Faneuil Hall. I had jambalaya for dinner and enjoyed every bite of it. After I returned I ended up at LTK right next door to the hotel with most of the people that are greatly involved in jQuery. I ended up talking to Scott and Karl about politics for most of the time in the bar and then about the panel discussion on the way back to the hotel. I think that Michael Alsup and I took almost the same things away from the chat, and it was fun.

I also met a guy named Chris who has the hardest job at the conference: being a Microsoft rep. We met originally on the elevator since I recognized him as the MS rep while others were complaining about IE and I pointed out that a Microsoft rep was actually *on* the elevator. Later he walked by when I was making a joke about how Microsoft must be sponsoring the cocktail reception so that we all get drunk and then try and get us to like IE8. Not yet, MS. I am hating the browser fragmentation that slow upgrades are causing… now I’ll have to support three versions of IE browsers. *sigh*

So I’ve returned to the third floor since I don’t have wireless in my room and ran into Brian again, and wrote this blog entry. That is about it, and this will continue again tomorrow.