Los pasados 2 al 4 de junio un pequeño grupo de Kaleiders: Juanfran, Mario y yo, hemos asistido a GR8Conf en Copenhague. Se trata de la conferencia de Groovy y de todo el ecosistema a su alrededor más importante de Europa.
En total más de 160 asistentes, 20 ponentes y 10 miembros de la organización nos hemos juntado en la IT University de Copenhague en dónde se ha celebrado el evento.
La conferencia se divide entre el University Day del primer día y los Conference Days del segundo y tercero.
El primer día, el University Day, hay talleres de tres horas de duración en los que se trata en profundidad algún tema. De todos los talleres merece la pena destacar el de programación de robots Lego Mindstorm con Groovy (en lugar de Java) y el de transformaciones AST.
El día terminó con pizzas para todos y un Hackergarten organizado por Andrés Almiray. Andrés empezó explicando la principal diferencia entre un Hackergarten y un Hackaton. En un hackaton, cuando terminas tiras todo el código a la basura. En un hackergarten la idea principal es contribuir a algún proyecto Opensource ya sea con documentación, corrección de bugs, implementación de nuevas funcionalidades,… y al terminar la jornada publicar esos cambios para toda la comunidad.
Mario estuvo trabajando en un proyecto personal sobre transformaciones AST en Groovy. Yo aproveché para actualizar el plugin Grails-Postgresql-Extensions para que fuera compatible con Grails 2.4 y Hibernate 4. Fue muy curioso porque de vuelta del hackergarten hacia el apartamento íbamos comentando que nadie había intentando usar el plugin con la nueva versión de Grails porque no era compatible. Justo al llegar ví que 10 minutos antes nos habían abierto una issue diciendo que no era compatible. ¡Menuda coincidencia!
El segundo día, como es habitual en este tipo de eventos empezó con la Keynote de Guillaume Laforge para hablar sobre las novedades y el futuro de Groovy. Lo más destacado es el soporte de Java 8, la inclusión de traits en el lenguaje, un nuevo parser Json muy rápido y un nuevo motor de templates.
A partir de ahí teníamos 12 charlas divididas entre dos tracks en las que se habló de Groovy, Grails, Gradle, Grooscript, Meta-programación, DevOps, Ratpack, Spock, Spring-Boot,…
Con el gran nivel que había en la conferencia, nos llevamos una pequeña decepción con alguna de las charlas de este primer día ya que el contenido no se correspondía con el título de la charla.
La mejor charla del día fue la de Noam Tenne sobre Groovy Puzzlers, en la que nos iba enseñando pequeños fragmentos de código Groovy y daba cuatro opciones para que adivinásemos el resultado. Luego indicaba cual era la solución correcta y explicaba por qué ocurría eso. Fue muy divertida y logró arrancar en varias ocasiones risas y aplausos entre los asistentes.
El día terminó con una barbacoa y degustación de cervezas artesanas que habían preparado los miembros de la organización. Como era de esperar, la mesa de los españoles era la más ruidosa de todas. Tenemos unas cuantas anécdotas curiosas cuando los efectos de las cervezas de unos 8 grados empezaron a hacerse notar, pero se quedarán en la intimidad…
El tercer y último día empezó con Graeme Rocher hablando sobre las novedades de Grails 2.4 y mostrando unas pinceladas de lo que será la nueva versión Grails 3.0 basada en Spring-Boot. Una de las cosas que más sorprendió fue la demo que hizo Graeme en la que creaba un servicio CRUD-Restful con un script Groovy de sólo 8 líneas!
Después del desayuno fuimos a una de las charlas que más expectación había causado. Cédric Champeau había logrado crear una aplicación Android pero utilizando exclusivamente Groovy. Durante la magnífica charla fue comentando cómo funciona la máquina virtual java de Android y los problemas que tuvo que superar para adaptar Groovy y que funcionara en un terminal Android. La aplicación que había desarrollado es la aplicación móvil de la conferencia en la que se podía ver la agenda del evento y marcar las charlas favoritas. Se trata de la primera aplicación Android desarrollada con Groovy y, gracias a sus cambios, ahora es tarea nuestra crear APIs Groovy para poder “Groovyficar” el desarrollo Android. Para finalizar la charla, además de la demo de rigor, mergeó en directo su propio Pull Request con todas las modificaciones necesarias de Groovy para poderse ejecutar en Android. Sin duda fue una de las mejores charlas de todo el evento.
También quiero destacar la última charla del día a cargo de Robert Fletcher. El título de la charla era Idiomatic Spock y Robert fue mostrando buenas prácticas y pequeños consejos para que nuestros tests con Spock fueran más idiomáticos, legibles, mantenibles y ordenados. También destacó algunas malas prácticas a la hora de testear y cómo evitarlas. Sin duda fue una gran charla de la que sacamos buenas ideas para el día a día.
La organización del evento fue muy buena y excepto un problema con un portátil a la hora de conectarlo al proyector, no hay nada más que destacar. Durante todo el evento la organización fue haciendo fotos a ponentes y asistentes y están todas disponibles en estos albumes de Google+.
Para finalizar, como no todo es programar, aprovechamos para hacer turismo. Volamos desde Madrid el sábado por la mañana y tuvimos el sábado por la tarde y el domingo libres para ver la ciudad. Lo que más sorprende de Copenhague sin duda es la gran cantidad de bicis que hay. Todo el mundo se desplaza en bici a todos los sitios y es muy normal ver padres llevando a niños pequeños, triciclos en los que van los niños, gente muy arreglada con traje y mujeres con tacones,… y todos ellos en bicicleta.
Sin duda ha sido una experiencia muy positiva, hemos disfrutado mucho de la ciudad, el ambiente, el intercambio de conocimientos y la cercanía de la comunidad. Repetiremos.