Last week was the 2012 incarnation of the Groovy and Grails eXchange annual conference held, as ever, at Skills Matter. Two days of Groovyness and Grailery. I think most people were Grails users, and primarily there for the Grails track, but there was a solid presence of non-Grails Groovy folk which made the Groovy track (which is what I was attending) really interesting.
I was not presenting on GPars this year, but there was still a GPars talk. It was Aurélian Maury presenting on his experience of using GPars for real, "in the wild". See here for the page on Skills Matter's website, which includes their video of the presentation.
My contribution to Day 1, other than being at sessions, was to be on the end of day panel. There were known to be questions coming on concurrency and parallelism along with issues relating to Groovy and Grails process. As a person known to have some knowledge and strong views on these topics, I was inducted into the panel. I thought the issues relating to concurrency and parallelism led to an interesting and constructive exchange, but then I am biased! I also managed to have the last word, mostly since the audience, after I had my little rant on avoiding excessive backward compatibility and going forward managing change and user expectations, burst into spontaneous applause. Peter Ledbrook, who was leading the session, took this as a suitable closing. The Skills Matter page and link to the video can be found here. I seems to be the only person not wearing dark clothes!
As is traditional Day 1 starts with a Groovy keynote by Guillaume Laforge, and Day 2 starts with a Grails keynote by Graeme Rocher. Sadly I missed the first few minutes of Graeme's presentation due to traffic jams that delayed busses by many, many minutes. But I got to see most of it, and Grails just seems to get better and better. As was hinted at in the previous day's panel session, Grails will be ditching Gant and using Gradle as from Grails 3. As I understand it, Gant is not being replaced by Gradle per se, it is that Grails wants some facilities that Gradle offers and as a side effect Gradle can do all that Gant is used for. It thus makes great sense for Grails to go this route. To be honest Gant needs either a rewrite or to pass into history. I suspect a rewrite will never happen.
My session was intended to be an analysis of the position of Groovy in the JVM-sphere, based on the tensions between dynamically typed languages and statically typed languages. Groovy started as a dynamically typed language but with optional run-time type checking but is increasingly supporting compile time type checking and indeed compile time code generation as per statically typed languages. The questions are whether the traditional barriers between dynamic and static languages should be attacked and if they should is Groovy doing the right thing. Cédric Champeau the person driving the static type checking and compilation was in the audience and I survived. Perhaps I wasn't contentious enough. The intention was really to make people think about the direction Groovy was going and whether it can and/or should attempt to replace Java. The slides for the session are here and the page with the Skills Matter video is here.
All in all a good conference, I am already looking forward to the 2013 version.