The Good
A conference of this size is bound to give you a good feeling of what is going
on in the Java world. It might be my pick of the presentations but I got the
feeling that nothing shockingly new was happening (except for arguably JavaFX,
but more on that later). Instead the focus seemed to be on consolidating that
what is working for the Java developers and addressing real issues Java
developers are dealing with.
For instance in Thursday’s keynote Joshua Bloch talked about enums and generics
and how to use them effectively. A good thing as I have seen many situations
where developers should have used enums, but opted for a more conventional
solution instead. As for generics, if things get more complicated then
ArrayList<String> I have to slow down and be really careful about what I do.
Any tips on using generics effectively is always welcome.
A good presentation was John Ferguson Smart’s presentation on “Behavior Driven
Development in Java with easyb”. Again nothing shockingly new, but it did
clearly point out problems many developers have with Test Driven Development;
what to test? By focussing on the required behavior that needs to be
implemented and using a testing framework that allows this to be expressed
easily, writing meaningful tests should be a lot easier for many developers.
There was a strong focus on running other languages then Java on the JVM. Bill
Venners presented on the “Feel of Scala” though I didn’t attend that one as it
had been scheduled at the same time as the presentation on easyb. Nor did I
attend Charles Nutter’s and Thomas Enebo’s presentation on JRuby. However I did
attend Jim Baker’s and Tobias Ivarsson’s presentation on Jython and Brian
Goetz’ “Towards a Dynamic VM”. Both were great.
I was thrilled to hear Jython is alive and kicking. With all the focus on
JRuby, Scala, and more recently Clojure in blogosphere, one might have gotten
the impression that Jython was all but dead. Instead a release that’s
compatible with Python 2.5 is imminent and they demonstrated Django running on
Jython.
Dynamic languages on the JVM are already quite fast compared to their relatives
written in C. However with the enhancements planned for the JVM this should
improve significantly in the future. Brian Goetz’ presentation was fairly
technical and as such one of the better ones. It made me well aware of all the
work the JVM has to do in running dynamic languages. Knowing this made me
appreciate the current speed of the dynamic language on the JVM even more.
Another thing worth mentioning was the organization of the conference. They did
a great job. From registration, sending my badge to my home address, lunch,
coffee, snacks, drinks, announcements. Everything was organized very well
allowing me to focus on what I had came for, attending presentations and
talking to people.
The Bad
Even though there were a fair number of good presentations some were really
awful. Most notably IBM’s keynote presentation on Java and RFID. IBM is a large
multinational. Devoxx is a huge conference with 3300 attendees. You would have
figured they would have made an effort in delivering an interesting keynote.
Looking at the result they did not. It was embarrassingly amateurish and
clumsy.
They same holds for many other presentations. Some had potentially interesting
content, but due to the way it was presented it was difficult to follow, or
outright incomprehensible. I do realize it is easy for me to criticize people
sitting behind my keyboard and writing a blog entry. After all I did not have
to stand in front of a huge room filled with anything between 60 to 1000
people. But even so, more presenters should have done significantly better for
a conference of this size.
And last JavaFX. Not necessarily bad as the presentations on it that I did
attend were well executed and interesting. However I failed to see JavaFX’
relevance for enterprise Java developers. I might be wrong, but I would expect
most of the attendees to fall into this class of developers. Sun however seemed
to target a different class of developers. Nice graphics, animations, sound and
video is all great. However I as an enterprise Java developer am more
interested in how I can construct forms, the kind of controls that are
available, communication with back end systems, etc. None of that was
addressed. A pity and a missed opportunity for Sun.