❯ Guillaume Laforge

Groovy Weekly #1

Welcome to the Groovy Weekly news brief!

As the name implies, I’m going to try to make regular (in theory on a weekly basis) column of all the interesting news, presentations, code snippets, events, conferences related to the Groovy ecosystem.

And as a Christmas present, here’s the first issue!

Your feedback is important, and we’d be happy to hear about your thoughts on a regular column about Groovy related news: what are your expectations, what you’d like to hear about, what news bits are of higher interest to you, how you would like this information to be delivered, etc.

As a first step, we’ll cover links to articles, blog posts, tweets, presentations, releases, events, books, code snippets. But you can contribute too! I’ve setup a Google Form where you can fill in a few fields with a link, a description, the kind of information you’re sharing, etc. So feel free to submit interesting information through this form here:


The first Groovy Weekly edition will be posted on my personal blog, and the link will be spread on various channels (mailing-list, twitter, Google+, etc) but I’m wondering how to best deliver this information. I’m thinking particularly of setting up a newsletter format, for instance with a service like Mailchimp, so that people could opt in and subscribe to receive this weekly column directly in their inbox.

In the meantime, and on behalf of the Groovy development team, we wish you the best for the holidays! A Groovy Christmas and a Groovy New Year!


  • a bug fix release with Grails 2.3.4
  • Gradle 1.10 was released with improved progress reporting, executing specific tests from the command-line, shouldRunAfter task ordering, further C and C++ support
  • a new version of the CodeNarc 0.20 static analysis tool for Groovy with new rules, as well as updated and enhanced rules


A particular highlight for Jacob Aae Mikkelsen who continues Burt Beckwith original “this week in Grails” column, in the form of the Grails diary. This “Groovy Weekly” column obviously overlaps a bit with the Grails diary, but the Grails diary has a particular focus on Grails which you might be interested in, especially with regards to the latest news regarding the Grails plugins ecosystem. Be sure to check it out if you’re developing with Grails.

Last but not least, Trisha Gee published three interesting articles on the Spock testing framework:

Groovy / Grails eXchange 2013 special

On the 12th and 13th of December, took place the Groovy / Grails eXchance conference, in London, UK, organized by the fine folks of SkillsMatter, gathering the Groovy ecosystem crowd, to speak about Groovy, Grails, Gradle, Ratpack, and more.

What’s special about this conference is that it’s been SkillsMatter which organized the first ever conference on the Groovy ecosystem back in 2007! Also, what’s double nice is that they record everything and that the presentations are available in matter of hours at no cost. So let me guide you through all the presentations that took place at the conference:

First day

Second day

Other presentations

Other presentations are also available from other conferences, in particular, InfoQ has been publishing SpringOne2GX 2013 and GR8Conf US talks on a regular basis. Here’s a recent selection of talks they released:


GR8Conf US


Andrés Almiray shows the functional aspects of the Groovy programming language in this presentation from Øredev.

On that functional theme, you can also have a look at:

JAX London

Guillaume Laforge talks about what makes Groovy groovy. He also gave an updated presentation at Devoxx which is published on Parleys, but it’s viewable for a fee (unless you attended the Devoxx conference) until it’s released publicly, but the slides are available on speakerdec.

Code snippets


Mailing-list discussions

Cédric Champeau shows the current work in progress around providing further type inference for methods taking closure arguments, as closures don’t really offer a signature (a return type thanks to generics, yes, but no way to specify the type of the arguments).

Example of methods that we’ll be able to type checked:

void foo(List list) {
    println list.collect { it.toUpperCase() }

Before, the type checker would complain that it didn’t know the type of the implicit ‘it’, but by decorating the collect() method implementation with new dedicated annotations, it’s possible to instruct the type checker about the type of the closure parameters.


The Groovy Goodness notebook from MrHaki has been udpated with the Groovy 2.2 features.


  • The Call for Papers for the GR8Conf Europe (Copenhagen, Denmark, on June 2nd-4th 2014) and GR8Conf US (Minneapolis, USA, on July 28th-29th 2014) conferences is now open
  • The Call for Papers for the Greach conference (Madrid, Spain, on March 28th and 29th 2014) is also open, till January 31st

Closing thoughts

Again, best wishes from the Groovy team for the holidays, and we’re looking forward to your feedback on this “Groovy Weekly” column, and to your contribution through the form: http://bit.ly/groovyweekly