Eric Gamma, when I hear that name I think of Gang of Four and the great book Elements of Reusable Object Oriented Design. So when I read that Gamma was going to be the keynote speaker at TSSJS, I resolved to wake up earlier than I wanted to just to go check out what the SLDC guru had to say. For what I hoped to be an inspirational and insightful affair turned out to be a product pitch of the most boring wavelength. The subject was Eclipse and something called “The Eclipse Way” which really is another way of saying use continuous integration for your projects and make sure you test stuff. For a keynote speech the material focused way too much on specific tools (Eclipse and Jazz) and not enough on the theme of the conference or any technology or trend which might carry some gravitational pull.
Gamma kept dropping quotes saying “Jazz knows how developers work” which is like saying, “I can predict the weather”. No, Jazz does not know how developers work, it thinks it knows it by forcing you to create things like “process rules” through tedious XML configuration and promoting concepts like pervasive transparency like they were the first to use it. Throw in some more pie-in-the-sky terms like “Process Awareness” and “Village Effect” and you got yourself a keynote speaker. Bloody waste of time.
Gamma then offered to fix my “pain points” and try as I could to figure out what he was saying, I was too busy trying to figure how which word he used more than 500 times, process or collaboration. Hey, all I’m saying for a keynote speaker, this was a completely unexpected speech, he said nothing of any consequence and insisted that we use Eclipse + Jazz to do all our work because “The Eclipse Way” was the best way and you’d be a damn fool not to use it. I was expecting more talk about high-level SD and something I didn’t know, not rampant prostitution.
Next up, it was Rod Johnson and his Spring pitch. To sum it up he concluded, “Spring kicks J2EE’s ass and you shouldn’t be using J2EE just because somebody told you to do it”. The great part about this theme is that he does have a great point which is backed by concrete arguments and industry-proven usage. Spring loves AOP and regardless of the people bitching about, it does kick ass. Custom XML namespaces and support for Java6 scripting languages dominated his talk but the guy never fails to diss J2EE whenever he gets a chance calling the entity bean an “abomination”. I’m starting to like this guy or maybe it’s just the accent.
OSGi (which I knew very little about) is a big hit with Spring and they’ll be packaging all their modules to be OSGi compliant. That’s great news and probably a good step but it won’t really matter until all those 3rd party Jars end up being OSGi modules too. Spring has the completely opposite view of XML than some people. He’s calling Java messy and complicated and the example he gave was having a Spring config in Java instead of XML (using annotations in the config classes, not the source code) and sure enough he was right, but who the hell uses annotations that way anyways? Compare that with the Spring config and of course it’s going to be more attractive. No shit.
I talked to Rod in the refreshments room (very average, they didn’t label the decaf as decaf, what garbage is that?) and talked to him about Google Guice and any threat they posed. Johnson let out an evil laugh and roared, “Guice will be so sorry when we release DI annotations in 2.1”
Random Notes: Elevator music is way too loud, lots of prostitutes around, I went over to the Wynn which is a better hotel/casino than this. I lost 3 dollars in the slot machines.