dreadedmonkeygod . net

NYC & AJAXWorld

I spent last week in New York City attending AJAXWorld East. AJAX is in its infancy, but already it's clear that this is not just another set of tools.

More after the jump...

Sunday: Flying Out

After a bike ride and a St. Patty's Day party on Saturday, two coworkers and I hopped a flight to New York City for AJAXWorld East.

Weather worries proved unfounded, but residual backup from a blizzard on the east coast kept our plane grounded for an extra 45 minutes before taking off. I wasn't too bothered by that until I realized that they didn't have the air vents on, and the kid next to me had kicked off his shoes.

Kudos to Luke at Decisive Moments for the book tip: The Rider proved to be a gripping and inspiring read, and perfectly sized for a plane trip. It fit weightlessly in my carry-on, and I finished it about 40 minutes before landing.

We walked around Manhattan for a bit, and followed a recommendation of a passer-by to the Heartland Brewery near Times Square. Very good beer, tasty dinner, and a great table right by the front window, where we could sate our touristy fascination with NYC's street scenes.

Monday: Boot Camp

Dion Hinchcliffe led Monday's "AJAX Bootcamp," and proved he's got the goods, setting the tone for the rest of the week. We got our hands dirty with a carefully-selected set of features combining a bit of DHTML and AJAX (using Dojo and Scriptaculous) that walked us thorugh all the key elements of AJAX. File uploads, Dojo widgets, Scriptaculous eye candy, and all in a DIY packaging that gave me very solid footing to stand on. I've played with AJAX before, but never with any framework, and this was a fantastic introduction to the current state of AJAX methods and tools. Bootcamp alone was worth the trip.

Monday: RENT

After a quick dinner, we headed to Broadway to see RENT, which was wonderful. I'd never seen it before, and had only vague recollections of a soundtrack CD I'd heard in college, so this was something special. If you get the chance, see this. It's amazing.

Tuesday: All Google, all the Time

I'm still processing my notes from the AJAXWorld keynotes and breakout sessions, so this (and all notes from the lectures) will be very abstract.

Google opened big, talking about maps, gmail, Google Talk, and their work with mashups and widgets. Lots of wonderful theoretical stuff about enabling users to surprise you, creating open tools and technologies. First question from the audience: "How do you make money on any of this?" Answer: "This drives search traffic."

Google distinguished themselves at this conference as the smartest guys in the room. I think the industry is going to spend a lot of time chasing them, in terms of tools, techniques, capabiliy, and notions of what's possible.

I had time to look around the floor for a while, and while there were a lot of vendors for such a small conference, I wasn't happy with a lot of what I saw. The big boys want to add new tools to their IDEs to further lock you in, and some of the smaller players think they'll find success producing stand-alone tools. This makes their offerings unsuited for mixing in with existing projects or IDEs from other vendors.

I love the idea of Laszlo: a single project you can export as FLEX or AJAX, but I hate the notion of permanently binding any project to a particular tool or vendor. Web apps are just too long-lived, and require too much maintenance. Surrendering the option of switching tools is just too painful for my taste.

For my money, the standout toolkit at the show was BackBase. They provide tools you can drop into any project, and work within existing standards. I can't wait to play with the sample code they were handing out, and start monkeying with something similar here on my blog.

Dojo is a close second, and will likely be what I start using at home, but I don't like that it breaks XML validation of documents, and that it'll necessarily be a bit behind latest browser changes. Evidently IE7 broke lots of Dojo apps. Ouch.

Wednesday: Struts, JSF, and Hard Choices

The highlight of Wednesday's lectures was a breakout session with Craig McClanahan (of Struts fame). By that time I'd gotten my head around the client-side issues, and was concerned about the need for server-side services to back AJAX apps. His presentation showed that JSF really is the way to go. Making any bean a service endpoint obviates a lot of developer work building all those backing services.

Unfortunately, JSF isn't an option where I work, and I'm not ready to make the jump at home. (Maybe I'll rewrite my training log?)

Maybe my favorite moment of the conference came when an audience member asked Craig, "We have a lot of code written with Struts. What now?" His answer basically amounted to: Well, then you have some hard choices to make." It was a much-needed moment of reality amid all the pie-in-the-sky hype.

Thursday: Empire State Building, Central Park

Our return flight didn't take off 'till 4pm, so we had some time to kill on Thursday morning. We headed over to the Empire State Building, and spend a little time on it's foggy and windblasted observation deck. The pigeons were fearless, and the tourists less abundant than the last time I was there (owing, I think, to the fog and the dire warnings of "zero visibility" by the staff).

The subway took us to the northwest corner of Central Park, and we spend some time wandering southward, just taking in the scenery. Most of the roads were closed to motor traffic, and there were lots of cyclists and runners out and about, and the day was perfect for a spin: 60° and just a little hazy. I'm definitly making time for an hour or so of running in the park next time I'm in the city.

The Roundup

So what do I take away from all this? A desire to spend some real time in NYC (and especially see the other burroughs), a renewed enthusiasm for web development, and for some reason another surge in my nesting instinct. I've been cleaning and organizing since I got back, and I'm planning for more shelving and wall decoration.

On a technical level, I'll be adding AJAX-y features here and to my training log, probably using Dojo. We shall see. For now, I'm putting a little of what I learned to use right away at work, and starting to think about what I can add here that'll let me play with things like JSON and drag-and-drop in conjunction with AJAX. Should be fun!

The author has disabled comments for this post.