Devoxx 2013 is most definitely and undoubtedly the best Java related conference in Europe. It stands second only to JavaOne, San Francisco, in importance in my humble opinion. I only attended the actual conference days for this year Devoxx. Elsewhere, I read that the quality of the university days were useful, in particular, Java EE, Angular JS and Scala tutorials were pretty spot on.
Not quite the last supper. Actually, this photo was taken in the Eastern turkish diner upstairs in the Metropolis late after the Java Users Group BOF on Thursday night.
Java EE 7
During my three days in Antwerp, I spent a lot of time talking with fellow conference goers on Java EE 7 and where they felt the umbrella specificatgion was heading to. The enterprise edition was critical important to many engineers. I asked them if they liked the new feature set in Java EE 7, and everyone said yes with a caveat. Some people wanted more features like No-SQL support or integration to other architectures and certain messaging systems. For my limited conversations, I found the impression that JAX-RS is the probably the most important API to learn, it seems many developers have to interact with RESTful services of some type, and they tend to rely on Jersey to communicate with the client and server endpoints. I was surprised that lots of developers do not know a lot about CDI, especially how it works and that is type safe by design, but many are already very familiar with the Spring Framework and its mode of bean configuration. Yet, they acknowledge that there were issues with configuring any dependency injection framework with just using XML configuration. I was not surprised by developers who told me personally they are still using Java EE 6, however they still wanted to know the big differences between that specification and the new Java EE 7. Engineers are genuinely encouraged by the productivity features in Java EE 7 and they think the changes were a good step in the right direction. [My clients tend to use Java EE 6 and some of them use Spring Framework to wire objects, still others rely on OSGi services and activation.] They were enthused by the Java WebSocket specification and thought that Java EE Concurrency Utilities was rather helpful. I got the feeling that the Java EE 7 adoption still has some way to go and we will see greatest benefits in 2014. One thing is for sure, I did not heard that precious word, cloud, in any of our discussions.
Richard Bair and Stephen Chin hold court at the Wednesday keynote.
After the Wednesday Keynote, with Mark Reinhold and Brian Goetz, I had a chance to see once again the presentation of Lambda: A Peak Under The Hood. The implementation of Lambdas was pretty huge as it lends itself to efficient future improvements without tying the Java runtime to a set recipe. I think developers will see the benefits of functional programming in the 2014 as Java SE 8 is released. I believe Goetz’s talk re-emphasized Lambdas are the single most important new language feature since the introduction of generics in Java SE 5. Thankfully, Lambdas are easier to understand than the multi-variances between parameterised types on collection and the oft derided wildcard syntax.
You always get a chance to meet and greet at great conferences like Devoxx. (R) Mattias Karlsson, the organiser of JFokus conference in Sweden, and (L) Tori Wieldt, who interviewed me for the Oracle Technology News, about my recently published Java EE 7 book.
Eva Veenstra-Kazakov (R) holds a loft the quadcopter in the taming the drone presentation on the last session on the last day of Devoxx 2013.
Venkat Subramaniam had a great talk on Lambda programming, Java 8 Language Capabilities – What’s in it for you?, which you do not want missed when it appears on Parleys. The speakers talks very fast and the jokes are quick fire. He is a very entertaining speaker and a real hoot. If you want a nice positive introduction in to why we have Lambdas in JDK 8 then this talk is unmissable.
I’m now officially a supporter of the Gingerbreadmen. No it is not a famous rock band, rather we talking about the next release of Android here.
Venkat Subramaniam is just getting set up for his Java 8 Language talk
I briefly stopped by Dierk Koenig’s session where he talking about UI Engineering.
This year’s conference at Devoxx punctuated by the Internet of Things in big way. Stephen Chin, Oracle’s JavaOne Ambassador, together with Richard Bair, showed off the latest embedded Java ME (Mobile Edition) demonstration at the Wednesday keynote. They shipped the entire chess robotics arm table over to Belgium from sunny California, including the moulded plastic pieces, which were printed on 3D printers and then etched chemically. They demonstrated the latest possibilities of the soon-to-be-released JavaFX 8 and 3D animations. For European developers, who did not have the affordance of JavaOne, this was impressive stuff. Attendance also had a chance to see up close the chess table at the Oracle booth in the exposition area.
The Java Posse Live (FL) Dick Wall and (FR) Chet Haase with Les Cast de Codeurs (L) Guillaime Laforge and (R) Emmanuel Bernard.
Gerrit Grunwald at his quickie presentation on Nashorn, Raspberry Pi and Java FX 8
Mark Reinhold talks about the perennial rise and growth of the effort to modularise the JVM. We will have compact profiles in Java SE 8 as a stop-gap to the proper solution.
The ARM processor in the Raspberry Pi is 25,000 slower in performance than this Mac Book Pro Retina machine and yet the GPU (Graphical Processor Unit) is capable of deliver full HD video. There was keynote demonstration showing a movie trailer written in Java and JavaFX running on the Pi board. So it is quite capable. Simon Ritter declared that the Arduino is more of microcontroller than a general purpose computer.
At this Devoxx, there was even a IOT (Internet of Things) shop available. Oracle showed their intent on embedded Java SE on the Raspberry Pi. In fact, on the Thursday afternoon, I did peak my head into the Java ME and Raspberry Pi lab 3 hour lab that Stephen Chin, Angela Caicedo and Simon Ritter were jointly running. It was well received.
One of the most impression talks that i did see in its entirety was Remi Forax‘s What Java EE can learn from dynamic languages? Here was a thought provoke session on the issues of containers, injections and annotations. The sense of Forax’s talk postulated on an improvement of the invokedynamic construct being brought into Java EE and ultimately would require a language keyword change. Whilst getting rid of interceptors, injection points and the current way we have dependency injection in Java EE 7 might appear a great, I do not think it will be happen in the timeframe JDK 9. I believe this future stuff and whilst a nice idea, a dynamic construct would have far reaching consequences for library writers and median skilled developers unless also the tools also improve.
If you have never seen the JavaPosse Live then you do not know what you are missing. This year the show had a surprise French contingent, Guillaime LaForge and Emmanuel Bernard, who produce the audio podcast, Les Cast de Codeurs. Sadly this talk conflicted with the CDI Extensions session with Jason Porter, which I am assured was also very good for Java EE 7 developers.
Probably the most dramatic talk, appeared on the last session of the last day. Taming the Taming Drones: How Java Controls the Uprising of the Drone Force by the Eva Veenstra-Kazakov and Timon Veenstra. They wrote an embedded Java interface to Parrot A R Drone 2.0, which costs about 650 Euros to automatously flying around farms and gather essential agricultural data on the health, growth and sustenance of crops and fields. The drone was controlled by basic WIFI, and two speakers demonstrated the quad-coptor inside the session. A couple of lucky attendees even had a chance to fly the drone. The software was based on JFXtras and heavily made fabulous use of Gerrit’s gauge components.
Here, Josh Sureth, of TypeSafe Inc, is talking about reactive programming in Java with examples in Scala and Play Framework
The Next Step
Everyone knows by now that Modularity for Java Runtime will be arrive in 2015-2016 with Java 9. We all have to wait until then for proper break up the JRE. The next step for Java 8 is a set of structured profiles: compact one, two, three and four, reaching just 11MB in size to the full JRE of about 56MB in Java 8. Mark Reinhold gave these figures in his talk about modularity and the JVM.
Modularity has taken so long, because the team attempted to solve the transient dependency problem, which is a very hard problem as well as divide up the JDK into parts. However, work has progressed such in that we will soon be able compose our own custom JRE and then also deliver application that only elements that we need. By Java 9 we can get rid of CORBA and we can chuck the IBM java.util.Date and hopefully, fingers crossed, java.util.Calendar implementation. Now that is a good thing.
Devoxx 2013 was great and the content was up to the high levels again. This is despite that is only room for 200 speaker slot sessions and they are fiercely fought over. At this point in time, JavaOne is a bit easier to submit a presentation to. I certainly found Devoxx useful to see the progression of Java EE 7, and I actually did sign my book properly for some folk. It’s also great to come out on the other side of the needle. See you next year, 2014.
James Ward speaking about webjars
I’m fulfilling a regular duty at Devoxx of recording the European Java User Group Leaders BOF. I used to run the JAVAWUG from 2004 to 2010, so it has been something of a tradition.
The Shout Outs
In no particular order, here are the shout-outs of Devoxx 2013:
- Heather Vancura
- Amelia Eiras
- David Blevins
- Jacek Laskowski
- Simon Bordet
- Ivan Stefanov
- Roberto António Cortez
- Yara Sanger
- Victor Gamov
- Hildeberto Mendonca
- Rabea Gransberger
- David Delabassee
- Vinicius Senger
- Stephan Janssen
- Martijn Verburg
- Dan Allen
- António Gonçalves
- Arun Gupta
- Daniel Bryant
- Agnes Crepet
- Constantin Partac
- Samuel Santos
- Dominik Dorn
- Justin Lee
- Josh Sureth
- Stuart Marks
- Andres Almiray
- Josh Suereth
- Richard Warburton
- Chet Haase
- Stephen Chin
- Dick Wall
- Johan Vos
- Jo Voreendecker
- Bartosz Majsak
- Aslak Knutsen
- Regina Ten Bruggencate
- Venkat Subramaniam
- Jim Weaver
- Gerrit Grunwald
- Mark Reinhold
- Brian Goetz
- Simon Ritter
- Tasha Carl
- Guillaume Laforge
Club Noxx and Clojure mixing jam playing all of the dance music!
I am wearing the Devoxx 2013 conference wrist band.