I'm sitting in the EJB3 BOF right now. The room is packed, but it seems most folks are uninterested and the moderators are just talking amongst themselves. Seems like a good time to blog since this BOF doesn't interest me whatsoever. Yesterday, I arrived at 8:00, took a cab to the Imperial Palace (where we're staying) and then headed over to Caesar's for the conference. I registered, assured we could drink beer during the sessions, and attended the (rather dry) keynote. Hani has a good synopsis of this talk.
After the keynote, I went to Patrick and Jason's WebWork talk for about 10 minutes. I soon realized it was an intro to WebWork and left to try and learn something. I went to Craig McClanahan's talk on "The Development of Web Application APIs and Standards for Java." His talk was pretty good, and covered "de facto" versus "de jure" standards. De facto standards are ones that evolve from the community through widespread usage, whereas de jure standards are imposed on the community (like JSF). Again, Hani has the full scoop on this talk.
Next, I went to Dion and Ben's talk on Ajax applications. They talked about XHTML/CSS and how XMLHttpRequest makes rich client-side applications possible. I think the whole Ajax thing is pretty funny. It's something that's been available for several years and my guess is most folks just didn't know about it. I've been using XMLHttpRequest for a couple of years now, and it's interesting to see it become popular all of a sudden. It's quite nice actually. I've been writing HTML/JavaScript for over 10 years, so I find Ajax development pretty easy. I hope to add support for Ajax-type features in AppFuse before this summer.
I wonder when/if the community will realize the power XSL processing in the browser? Since we're all developing XHTML applications now, our pages are XML and we could easily start leveraging client-side XSLT to do some pretty cool stuff. With a client-side XSL sheet, you could do page decoration (like SiteMesh) just by adding one line to your pages. For example:
<?xml-stylesheet type="text/xsl" href="styles/global.xsl"?>
The only problem with client-side XSLT is your pages have to be well-formed XML or everything bombs. With HTML, if you screw something up, chances are the browser will still render it correctly.
After the Ajax review, I had lunch and headed down to the Casino for some beers and gambling. I came back in time for Rod's "Why J2EE Projects Fail." It was a good talk, but there wasn't any revolutionary or new information provided. After his talk, I was motivated to learn more about Web Services Security, but instead opted for beers with Crazy Bob, JIRA Mike and Neon Dion. A couple of beers turned into several, and I found myself having dinner with the SourceBeat guys (Bill, Matt and Jim) a couple hours later. Steak and Lobster was my plate of choice and it tasted quite good. The rest of the night was spent gambling, drinking and harassing Pai Gow Poker dealers. We had breakfast around 2 and made it to bed by 3. Total cost of the trip so far: $300.
I slept in until noon today, after which Jim and I headed back to the conference for some lunch and afternoon sessions. Lunch was good and followed by Oracle demoing JDeveloper and coding EJB3 and JSF with it. I've often wondered about the cost of Oracle's ADF JSF implementation and actually got an answer from one of the attendees. I think he was an Oracle employee but he basically said you have to buy at least 1 copy of JDeveloper ($999) and you get a runtime license for ADF Faces as part of that. That sucks because Oracle's implementation looks like one of the most full-featured ones available. Why should I have to buy a tool I'll never use just to use ADF Faces?
After lunch, we attended Rod's "Advanced Spring Framework" and Craig's "JSF: Dead on Arrival or Raging Success". Rod's Spring presentation covered some advanced Spring features: autowiring, inner-beans, lists, instantiation choices, factory beans and template bean definitions. The presentation was good, and I was pleasantly surprised to find I knew most of the things he covered. Colin spoke about using JDK 5 annotations for transaction demarcation and Keith talked about Spring Web Flow. The Spring Web Flow stuff looks cool, especially since the other framework developers are listening and liking what they see. Craig even mentioned that he'll probably ditch what he's put together in Shale and use Spring Web Flow instead.
Craig's talk about JSF was rather boring, but most of these sessions are (mainly because there isn't a whole lot of new information). Craig did manage to pimp Java Studio Creator a bit. I find JSC demos to be quite funny since it hides so much code with code-folding. In the demo, Craig showed us a 10-line Java class that made JSF (and JSC) look like good stuff. Jim and I noticed code-folding was turned on and the class was actually 120 lines long! This is more of a problem with JSC then JSF IMO. The one nice thing about this talk was learning that a JSF 2.0 BOF is tonight. The main goal of the BOF is to see what the community wants in 2.0. I hope to attend and express a desire for HTML templates like Tapestry has.
Tonight kinda sucks because all the good BOFs (Spring, Tapestry and JSF 2.0) are at the same time (7:30). I'm hoping to hop around between them and get some good networking in. After the BOFs, OpenSymphony is hosting an open bar - so that should be a good time. Hopefully we can scare up a few free carbombs. For more blogs and coverage of the conference, see the TSSS 2005 blogger list.