So, JavaPolis lived up to what I was hoping for (expect for the Geronimo talk that I now realized was canceled by reading this).
Most packed sessions I attended: Hibernate, JMX (see Éamonn’s blog).
The following is basically a few notes I took during some of the
sessions I attended (I don’t believe I’ll have to courage to write
about all of them). Note that all JavaPolis slides are now online.
Tiger (JDK 5.0)
Joshua Bloch/Neal Gafter (now at Google)
Fun to see Josh and Neal
presenting Tiger from a Mac… no demo obviously (so much for the “in
action” part of the presentation).
had attended very similar presentations (or seen slides) but found the
frequency table to be a very nice example combining many different new
language features. I also learned that the compiler generates different
code for arrays and for collections in the new
for loop (not the case with C# where it is recommended to not use
foreach with arrays).
While the new
for loop syntax seems to please everyone, it cannot be used for
– removing elements as you traverse a collection
– modifying the current slot in an array or list
New keywords break many things in IDEs (
assert in 1.4) and may require changing variable names.
Annotations do not really impact J2SE developers today, but DBC (Design
By Contract), AOP, Testing and others are right around the corner.
…and obviously there’s the upcoming J2EE 5.0 which will heavily leverage annotations (EJB 3.0, JDBC 4.0, etc…).
Juergen Hoeller / Rod Johnson (Interface 21)
Rod did the introduction and talked a lot about Struts being very nice
but not covering all application needs (same with data frameworks).
“Spring does not compete with J2EE, only with EJB (and even more with in-house frameworks)”. Cannot reuse code written for
EJBs. EJB is described as an example to an “invasive” framework). “The
Entity Bean part of the specification is very invasive, each
new feature break to code” (that’s Rod talking). “As usual, EJB does
things in a clumsy, inflexible, way” (still Rod talking…). Rod never
mentioned EJB 3.0 which reuse lost of good ideas (POJOs, IoC, etc…)
that day. In his other (shorter) talk, his message was “EJB 3.0” will
not be around before another two years.
The rest of the talk by Juergen was very factual with no marketing and no EJB bashing…
Linda DeMichiel (Spec Lead, Sun)
Before Linda started talking to a crowded room (although not as much as
for Gavin’s Hibernate talk), the facilitator asked how many people were
using J2EE (everyone raised his hand) and how many were using EJB today
(3/4 kept their hand raised). Interesting to see how common wisdom can
be wrong… (note I’m not saying they all love EJBs)
So, if you haven’t already read about EJB 3.0, it’s all about
simplification for the developer, big use of annotations, and a new
persistence model for POJO (Plain Old Java Objects). Linda seems very
happy with the way EJB 3.0 is moving forward and the expert group seems
to get along very well.
To all the people I talked to after Linda’s talk, it really felt like a
slam dunk (finally!). The only withstanding question was availability of the spec
and the technology. It’s amazing to see how this third iteration
changes the way people look at J2EE and EJB in particular. While Rod
Johnson’s first book was a master piece, I feel his attempt at ignoring
EJB 3.0 is not the right strategy.
Gavin King (JBoss)
(probably more people than for the keynote): in a year the project has
gone from part-time Gavin and the community to 4 full-time engineers and the community.
Obviously Hibernate 3.0 will serve as the EJB 3.0 Entity Manager (Gavin
is on the expert group) in the JBoss product. Eclipse tooling (done by Max Andersen), Gavin
claims that this is a preferable solution to having a separate
standalone workbench. Hibernate v3 may be the last version (sort of
joke to explain J2EE integration I guess). Very interesting call for
unification of Web and EJB containers/technologies. Gavin had several
slides up on JSF & EJB needing to merge with the will to have EJB
methods be event handlers for JSF components or provide the EJB
container with access to the web context. Another interesting evolution
would be making the domain model available to front-end technologies.
Cédric Beust (Google)
As always (other
presentations, blogs or mailing lists), Cédric
spends a fair amount of time explaining the problem he’s trying to
solve: building a better JUnit which has flaws which have an impact on
the code you write (yes, not a good thing). TestNG uses annotations of
javadoc comments to achieve a technically better unit framework. As Tim Bray points out,
most people have worked around the JUnit limitations and tools support
is already ubiquitous. So let me whish Cédric to be
successful with this challenge as I’d like Sun to be successful with NetBeans!
Marc Fleury (JBoss)
Marc seemed upset to be scheduled in the Business track (I’m not saying this because he didn’t dress as Zorro or Joker). He rushed through the business slides (which I though were an interesting example of Professional Open Source)
to get down to why he loves JDK 5.0 annotations in EJB development. By
the time he was done, I’m sure he had lost every manager in the room…
On the networking side…
Fun seeing Peter Zadrozdny, now a VP at Oracle pitching a nice “JSF
community” story (in front of Craig MacClanahan). I met Peter when he was starting WebLogic France
(just before BEA acquired them). Good luck on your new job Peter !
For a while, I though IBM’s was not around. They had a little booth and
almost no presence.Makes me think they really operate in their world
with their customers.
was brilliant as always in his 3-hour (which became 4-hour) session on
Java Server Faces (in action!) with a great tour of the technology,
demonstrations and a nice Q&A session. Since it was a technical
session and not a sales pitch, Craig was almost afraid to show Java Studio Creator.
He shouldn’t. It’s a great tool and something that I would recommend
anyone willing to start with JSF as it is really THE technology Creator
is built upon.
I had not seen Vincent Massol for years and did pretty good (JUnit, Maven, Offshoring) since that time!
I also finally met with Vincent Brabant, an active NetBeans community member.
And of course, I had all my Techno Celeb diners…