I think I have a serious case of OS Rot on my PowerBook. Despite the fact that it's been extremely slow lately, I went ahead and used it to deliver my Comparing Web Frameworks talk at Java in Action. I was a little hesitant when I agreed to do this talk - mainly because it required me to stretch a one-hour presentation into a 3-hour presentation. I figured the best way to take up all that time would be to do some live coding. So I recorded a whole bunch of "Live Templates" in IDEA and went in to the talk thinking I could pull it off. To say the least, my Mac didn't cooperate and the "live coding" I did failed miserably. JR Boyens hits the nail on the head in his review. Cameron only attended the first part (before the live coding started) and it looks like I did pretty good in the first hour.
Lessons Learned: 1) Have a backup plan and 2) don't do Comparing Web Frameworks as a 3-hour tutorial. I've never had a backup plan in the 2 years I've been speaking at conferences. I've been pretty lucky though, my demos have always worked. I was due for a failure. For my afternoon session about Ajax and Spring, I moved all the live coding stuff to the Dell laptop I had with me. This worked much better, but I was again spat on by the Demo Gods and over half of my demos failed to work. Oh well, I guess it just wasn't my day.
The good news is that all the demos are available online. The master/detail applications I developed are already part of Equinox, and the Ajax demo is available at http://demo.raibledesigns.com/equinox-ajax. Features include an ajax-ified Display Tag with AjaxAnywhere, an editable text with script.aculo.us (click on a user's first name in the table), in page updates with DWR (on the detail screen) and a zip-code autocomplete/city-state auto-populate with script.aculo.us and DWR. If there's any interest, I can write up a tutorial on how each feature was constructed. In the meantime, you can download the equinox-ajax project from java.net.
After my Ajax talk, I was approached by a couple of the AjaxTags developers, and they showed me some very cool widgets they're working on. I definitely plan on digging into this project in the very near future.