I only attended
Foo Camp's Friday night activities, but I still managed to meet quite a few interesting people, and
Pat Niemeyer has been nice enough to fill in the gaps. After dinner and happy hour at the "Foo Bar,"
Tim delivered the opening speech and went around the room and asked each attendee to introduce themselves by saying their name, company, and three words (any more than three words and you got a gong). I got a few gasps and a bunch of laughs when I said, "Bob Lee, Google,
baby due tomorrow."
I met
Martin Fowler in person for the first time. I've always admired his writing style. We talked about remote interfaces, domain models, AOP, lazy loading, some consulting work he did at SBC (my previous employer), and mutual friends.
I talked with
Mike Clark and
James Duncan Davidson about their recent Rails project. I got the impression James also dislikes how Rails splits the domain code between the model class and the database table. I think we'd both prefer for all the business logic to be in the model class and for Rails to update the database (adding and dropping columns and tables as necessary).
I'd bet money that most of the Java developers who fall head over heals for Rails have never tried WebWork. WebWork and Rails are more alike than different. I like how both frameworks make it easy to map HTTP requests to domain objects sans boilerplate code but allow you to fall back to explicit code when the two don't exactly line up. If I was beating myself over the head with JSF and multi-layer J2EE architectures with remote interfaces and DTOs instead of using WebWork, I'd probably cream my pants for Rails, too.
I was surprised to meet Michael Lynn, the now infamous Cisco flaw finder. I actually didn't realize he was
the Michael Lynn until one of the Rackspace founders pointed it out. Michael
risked his career to do what he knew was right. The media has portrayed him in a favorable light, but things could have easily gone the other way. Michael deserves all of our respect.
Toward the end of the night I met
Jeff Veen near the vodka still (some geeks were re-distilling cheap bad vodka and Mike's Cranberry Coolers to create overpriced good cranberry-flavored vodka). Jeff works for Adaptive Path, the company which coined the term Ajax. Jeff used to work on Web Monkey, a Javascript resource I read religiously in my early days (as opposed to
Greasemonkey, a more recent Firefox Javascript hacking tool created by my coworker and fellow Foo attendee
Aaron Boodman).
I'm not sure why it's taken me so long to realize this, but the recent success of Ajax has almost nothing to do with XmlHttpRequest and everything to do with being able to reliably and easily update HTML on the fly. I could reliably hit the server from Javascript in any browser 5 years ago, but I was limited to updating form element values. Modifying form elements alone turns out not to be all that useful in practice. Many of the new Ajax examples such as form field auto-completion/suggestion pull off their magic by extending and creating new form elements using DHTML.
I drove home at about 12:30 AM because I had to take Krista to the hospital at 8 AM so we could induce labor. We made it in okay, but it's been extremely slow going, literally half cm by half vm, ever since. I've been here at the hospital for a little more than 40 hours watching doctors and nurses poke and prod Krista's vagina. Still no baby. All I can say is I highly recommend the epidural for both the mother and father's sake.
The hospital doesn't have wifi yet, so I've had to resort to connecting to the Internet via my cell phone (something I've never done successfully before today). For the life of me, I couldn't get my RAZR to connect to T-Mobile from OS X 10.3. I tried every combination of
Ross Barkman's modem scripts. Maybe it's time to upgrade to Tiger. In the mean time, I swapped SIM chips with Krista's Nokia 6600 and connected without a hitch. Is there anyway to speed this up? It seems like you could set up proxies at both ends that would compress data and reduce connection overhead. An HTTP/HTML aware compression algorithm would really kick ass. I can't seem to find what I'm looking for. It could be because I'm browsing the Internet at about 2 kb/s. Sure beats no Internet at all though. ;)