JFall 2011

Last Wednesday, I visited JFall 2011. As expected, it was a very good conference again. I tried to tweet about some sessions I attended, but I had some weird problem with both of the Twitter-apps I have on my iPhone… So, instead I’ll give my take on those sessions here, in retrospect.

Neo4J! What else?

This was one of the “early bird” sessions, taking place before the offical opening and keynote. Despite the early start, there were quite a lot of attendees. I think it was worth getting up early! Ron van Weverwijk did a good job introducing graph databases and Neo4J. Most of the time, I find sessions about NoSQL databases and the like very interesting, but often it is difficult to see any practical use in the near future. After all, most of us aren’t working on the next big thing in social networking. At least, I am not. Most of the time I am working for clients that already have a relational database and they just want a new front end for it.

The nice thing in this session was, that Ron told us about a project he did in exactly such a corporate environment where there was already a relational database. They didn’t change or remove that database. Only for the specific case where the graph database was offering an advantage, they exported the data they needed to the graph database. A clever and pragmatic approach. I hope I’ll find an apportunity to do something similar once…

Keynote by Tomas Nilsson

The Oracle-keynote was a little disappointing. Although Tomas is a fascinating storyteller, it was difficult to get a big picture from the collection of anecdotes he told us. If there was a big picture, I’d say it was that Oracle isn’t such a pleasant company to work for. And despite the fact that the company is run by lawyers and marketeers, we should trust them to be good for Java, since half of their revenue depends on Java. Well, I guess I will never trust any large corporation, but I think we as Java community have to admit that Oracle did a good job in getting the development of the Java platform back to speed again. So, let’s just hope Tomas was right on this…

JBoss Forge

Paul Bakker did a very interesting session about JBoss Forge, formerly known as Seam Forge. I had never heard of it before, but after this talk I’m certainly going to try it. JBoss Forge offers a CLI for creating and maintaining Maven POM files. With the JBoss Forge shell, one can rapidly setup a new project. This type of project setup is of course known from frameworks like Spring Roo, Ruby on Rails and the like. But the good thing about Forge is, that it can be used for any Java project, as long as you are able to build it with Maven. Paul put an emphasis on the fact that Forge not just creates pom-files, but also maintains them. (And it can also create and maintain other configuration files and even Java classes…) He also showed that it is relatively simple to create your own Forge plugin. All in all, this was a very good session, packed with demos. I really enjoyed it. I hope I will be still as impressed when I try Forge myself…

Introduction to JavaFX 2.0

A nice session by Michael Heinrichs. The downsides of this session were the lack of code demos and the fact that I didn’t learn anything new. But there was also one really cool aspect of this talk: Michael coded all his slides in JavaFX. And the slides were, of course, very fancy. Unfortunately his code was not clean enough to share, he told me afterwards. Nevertheless, it’s still a very cool idea!

Microsoft keynote on a Java conference…

The afternoon keynote was provided by Microsoft. I think it’s brave of them to show up at a Java conference. Of course, they were there to tell about their Azure platform and how it can be used to deploy Java apps in the cloud. I was not impressed. It turns out Azure is not much more than a bunch of managed virtual machines running Windows Server. In order to run a Java EE application on Azure, one has to tinker with Windows .cmd scripts to bootstrap an application server. And of course, the application server itself also has to be deployed. Although Microsoft calls it a PAAS, I think it’s actually not much more than a IAAS…

Migrating Spring to Java EE 6

Again a very good session by Paul Bakker. He showed a pragmatic way to migrate an existing Spring application to a standards-compliant Java EE 6 application. He was honest: his approach isn’t a silver bullet and it still takes a lot of time to migrate. But, as Paul put it: “Given an outdated application that needs to be migrated anyway, why not migrate it to the standard?” I think he’s totally right! And he showed us a doable migration path. Afterwards, I heard other attendees complaining that “he told us upfront that the talk wouldn’t be a shoot out, but is was.” I assume those people were mainly Spring-fans, having trouble saying goodbye to Spring. But let’s face it: we really don’t need Spring anymore, the good ideas from Spring are all incorporated in the Java EE 6 standard, most of them even in an improved form. Of course, we should be grateful to the guys from the Spring framework, and I think Paul gave them enough credits. But we have to move on!

Looking at Groovy 1.8

The last talk I attended was by Hubert Klein Ikkink. He had almost no slides, but instead showed us lots of cool new features of Groovy 1.8 with simple and illustrative demos. The talk also served as a nice (re-)intruduction to Groovy for people (like me) lacking any experience with the powerful alternative JVM-language. I don’t know if I’m going to use Groovy in the near future. But I hope for sure that Groovy can be for the Java language what Spring was for the Java EE platform.