JavaPolis Disconnected

Lesson learned: a hotel which advertises with ‘WiFi’ as one of its rooms’ facilities may actually charge a substantial amount of money for that service; do not assume that it’s included in the room price. Not that I can’t afford 22 euros for a day of WiFi access, or that my employer wouldn’t pay it for me; I just refuse to pay that much money for it. At home (sorry, product placement) I get high-speed Internet access for a month for that amount. And it’s not that I’m in some faraway country; I’m just around the corner, in Antwerpen, at the JavaPolis conference — where there’s no reasonably priced WiFi available either. So this blog entry is written on old fashioned paper (the fancy JavaPolis notebook that we got in the goody bag), and you won’t be able to read it until Saturday, when I return.

On my first day at JavaPolis, I’ve already seen several interesting new things. After seeing a presentation on EJB3 and the new persistence API, I was left wondering why anyone would want to use Hibernate anymore. In a year or so, you’ll have this elegant-looking, standard ORM solution built into the application server you’re already using anyway. Furthermore, writing EJBs suddenly seems to become a fun thing to do. Just write the business interface, chuck in an annotation or two, and you’re ready to deploy.

I saw two excellent presentations, one about concurrency in Java 5: Brian Goetz explained very clearly, and with numerous examples, how to use the new concurrency functions, and why you would want to use them. Concurrency performance turns out to be much better than using synchronization. In Java 5 that is; in Java 6 the core language team optimized synchronization so the performance is up to par again with the concurrency library. I wonder why they waited so long with doing that optimization…

The other presentation was about Shale, by David Geary (who has some interesting blog entries about his experiences with Ruby and Rails by the way). Shale is named ‘the new Struts’, but technically it doesn’t have much to do with Struts — and maybe that’s just as well. It’s based heavily on JSF for its web interface, but it also borrows from Tapestry, Seam, and Spring WebFlow; although Shale’s webflow mechanism seems to be somewhat easier to use. However, now that I’ve seen Ruby on Rails, it occurred to me how insanely many XML config files are still used by something like Shale. I hadn’t expected this from someone so enthousiastic about Rails. Is it really impossible to have anything in Java without a heap of XML files accompanying it? I don’t think so; the EJB3 presentation showed that it is possible, using annotations and convention over configuration. People are starting to understand that developers want to code, not configurate!

2005-12-14. 5 responses.


  1. Next year JavaPolis will provide its own FREE WIFI access instead of counting on the venue provider !!

  2. > I wonder why they waited so long with doing that optimization…

    It was not a trivial optimization; it involved rewriting a substantial amount of core code in the JVM, and, more time-consuming, TESTING it. Synchronization interacts with everything — garbage collection, scheduling, JIT compilation. Its not just a matter of flipping a switch.

    Developer and testing manpower is a limited resource. Its not that the core JDK team didn’t know that performance could be improved; its simply a matter of when it comes to the top of the priority list.

  3. Brian,
    I don’t doubt that the optimization was not trivial. However, from your presentation I got the impression that the core JDK team did not start looking at optimization until after (and because) the concurrency library prooved to perform better.
    I’m intrigued, by the way, by the notion of testing synchronization. I always learned that almost nothing to do with synchronization is 100% predictable; so how do you test this reliably? How do you reproduce test cases?

  4. […] Not being able to blog live during JavaPolis 2005 leaves me with several pages filled with scribbled notes on the various presentations. I’m glad that JavaPolis 2006 is said to feature free on-site WiFi access (you read it here first!). But even so, I’m not sure how easy it is to blog live on the spot. My laptop is rather big and heavy to carry around, it always finds a way to play the Windows welcome jingle when it boots up, no matter what settings I tweak, and it’s actually difficult to focus on the presentation and write a cohesive, intelligible blog entry. So, about these notes. Thursday I saw… […]

  5. FYI – The interview with Brian Goetz is now available as a podcast on the JavaPolis wiki site (