Another very successful JHUG Day took place last Saturday in Athens. Paris wrote about it here.
I managed to get there late, so unfortunately I've missed the Trasys talk. I went into a full room with Heinz presenting his 10 laws of concurrent programming, offering very practical advise on the subject. Or if you happen to know this stuff already you have to admit that the 10 laws have the most creative names, indeed. I think Crete has a very positive influence on Heinz, overall! Maybe we should all move to Chania, or at least, organise the next Java Event there :)
Roman Strobl on Netbeans, as energetic as ever. He has quite an influence on the audience as more people got attracted by Netbeans, after his first talk on the subject in a previous JHUG event. If I see Roman a third time, I will probably switch from Eclipse, too :)
Αlef Arendsen on Spring 2.1 or better on OSGi, another interesting talk. I believe the real value of OSGi is to offer a "standard" based component framework, something that will benefit all. Spring likes OSGi, because it offers a dynamic kernel, something that spring never had. JBoss has a plugable microkernel architecture since version 2.0 around year 2001, but spring people never talk about this. Or if you read Rod's books, you'll think that lightweight frameworks is a spring invention. This together with the claim of spring being vendor neutral looks very silly to me. As soon as you start coding using org.springframework imports in your code, you become tied-up to a framework as proprietary as any other one. Don't get me wrong, I like spring for what it offers, I just don't like the hype around it.
Jonas Boner, a very respected person in the world of Java, gave his talk on Terracotta. The technology is impressive but I cannot avoid comparing Terracotta with our competing JBossCache offering. I believe the claim that Terracotta is API less is misleading. If you have to code your application in a different way so that clustering can work properly then this already constitues a form of "API" change. The way you code becomes the API. In JBoss Cache in the POJO cache variant, from the moment you put a POJO to the cache, it becomes managed with granular field changes replicated at transaction boundaries. This looks a lot more API-less to me.
I also looked around to see performance comparisons of Terracotta and JBoss Cache. I found a comparison of the two using an older version of JBoss Cache, when Buddy Replication was not supported, so naturally JBoss Cache would look bad. Buddy Replication makes all the difference when looking at scaling out at large number of nodes (e.g. 10+), because you don't have to replicate to all the nodes in the cluster, only to those ones where you want to keep your back up, typically just one or two nodes. If you find such a comparison, let me know.
The last presentation was from Alexis Pouchkine on Glassfish. Always interested to hear from the competition and see an "empty" glassfish 3 boot within half a second. Well, jboss 4.x in the minimal config will boot in *one* second, so we clearly loose there ;) I also liked very much the idea of the Google map, showing glassfish users around the world. I think I spotted myself on the Athens map, as I need to run glassfish to perform the JavaEE 5 interoperability tests with JBoss . We should definitely copy this idea :)
Again, the JHUG days have evolved to an extraordinary mechanism for related professionals to come together and exchange valuable knowledge and information. Big thanks to the exceptional speakers, the audience, the sponsors and the JHUG team.
Looking forward for the next event!