Codemotion Madrid 2012

Escribo este post un día después de asistir a Greach, la primera conferencia organizada en España dedicada exclusivamente al lenguaje Groovy y a todo su ecosistema (frameworks, herramientas…).

Inicialmente pensaba asistir para aprender más sobre Groovy y Grails, tecnologías que vengo utilizando en el último año, y sobre las que sabía que aprendería mucho en Greach viendo los ponentes que iban a asistir. Pero, precisamente uno de ellos, Martín Pérez, con el cual he tenido el placer de trabajar durante las últimas semanas, me invitó a participar con él en su ponencia Construyendo aplicaciones de telefonía con XMPP, Java, Groovy y Grails. Así que finalmente tuve además la oportunidad de aportar mi granito de arena hablando sobre un ejemplo de aplicación de telefonía en Grails.

La jornada empezó temprano y la presentación corrió a cargo de su organizador Alberto Vilches, el cual recibió una doble felicitación por haber organizado Greach habiendo sido padre muy recientemente.

Antes de comenzar con la primera ponencia se presentaron los patrocinadores. De esas presentaciones me quedé con una frase de Ruth Zamorano en la que nos decía que precisamente en tiempos de crisis teníamos la responsabilidad de ser más productivos y que Groovy y Grails nos permitían serlo.

Una vez estaba todo listo y las presentaciones realizadas, Guillaume Laforge, el líder de Groovy, empezó fuerte hablándonos de las novedades introducidas en Groovy 1.8 (“mira mamá, sin puntos ni paréntesis”) y de las mejoras realizadas (entre otras, mejora de rendimiento), e incluso nos hizo un adelanto sobre Groovy 1.9 (también conocida como Groovy 2.0).

Después Alvaro Sánchez-Mariscal utilizaba el vídeo Day of the Tentacle, de Lucas Arts para comenzar con su charla sobre las novedades de Grails 2.0. Entre otras muchas, las que enumero a continuación:

  •  jQuery sustituye a Prototype,
  •  mejoras en la salida por consola y en las stacktraces,
  •  soporte para plugins binarios: empaquetado de plugins de Grails como archivos JAR,
  •  mejoras en la recarga de clases en caliente,
  •  estadísticas de uso de plugins,
  •  scaffolding en HTML5,
  •  H2 en lugar de HSQLDB y consola web para hacer queries de la base de datos en memoria,
  •  la herencia abstracta en GORM,
  •  las nuevas queries OrCreate / OrSave

Para continuar, la ponencia sobre New Ideas for Old Code de Hamlet D’Arcy. Durante esa hora, Hamlet nos dio pautas para sobrevivir ante código heredado, buenas ideas para probar ese código con Groovy y consejos para refactorizar. Me quedo con tres frases:

  • “Spend time refactoring code that changes a lot, not proven code.”
  • “Refactor is cover with tests and then modify.Reengineer is modify and pray.”
  • “God, grant me the serenity to accept the code I cannot change, courage to change the code I can, and wisdom to know the difference.”

Tras un café rápido, mi primera toma de contacto con Griffon de la mano de Andrés Almiray, su creador. Me asombró el paralelismo entre Griffon y Grails y la posibilidad de generar la aplicación en Java, por si no nos permiten Groovy. Mi lista de tareas pendientes empezó a crecer:

//TODO Hello World in Griffon.

Volví al mundo Grails, con Dani Latorre y su ponencia sobre optimización de webs implementadas en Grails. Dani nos dió múltiples consejos para llevar a cabo tareas de optimización para que la web sea más rápida. Algunas técnicas ya las conocía, otras las descubrí gracias a él y a su tremenda lista de plugins de Grails recomendados para estas tareas.

Después de comer, Martín y yo preparamos nuestra charla (vídeos, demos… para evitar que el directo nos jugase malas pasadas), así que, muy a nuestro pesar, nos perdimos la de Graeme Rocher y todo lo que contó sobre Cloud Foundry. 

Una vez teníamos todo preparado, llegó nuestro turno, teníamos que demostrar a los asistentes qué también es posible mezclar Grails con la telefonía. Martín comenzó hablando de Tropo, una plataforma Open Source que permite, fundamentalmente, el desarrollo de aplicaciones de control de llamadas y envío de mensajes de texto. Mostró varios ejemplos e incluso nos hizo una demo en directo de su buscador de restaurantes. Presentó además Rayo, un protocolo basado en XMPP que permite gestionar llamadas en tiempo real.

Después llegó mi turno y el momento de presentar Ringio (el proyecto en el que trabajo en Paradigma Tecnológico), una aplicación real de telefonía en Grails. Mostré algunos vídeos sobre su funcionamiento y conté las ventajas que Grails nos había aportado en el proyecto. Además hablé de la evolución que estaba sufriendo su arquitectura y de que Rayo nos permitía dejar de utilizar CCXML y VoiceXML para pasar a utilizar Grails, haciendo mucho más amigable la implementación del control de llamadas.

Tras un breve descanso, y ya que me gustó la ponencia mañanera sobre Griffon, opté por asistir a la ponencia de Mario García sobre Creación de Plugins en Griffon. ¡Me asombró lo fácil que era crear un plug-in!

Y al final de la tarde, y a pesar del cansancio, la ponencia de Enrique Medina sobre MongoDB no tuvo ningún desperdicio y consiguió despertar el interés de todos y mantenernos atentos. Varias cosas destacables de esta ponencia: su enfoque didáctico, su análisis del plugin MongoDB GORM y lo mucho que aportó Enrique sobre sus lecciones aprendidas en su experiencia de desarrollo. Me anoté otra tarea:

//TODO read in-depth the slides at home

Greach tocó a su fin y se hizo la entrega de premios: varios libros, licencias para IntelliJ IDEA y WebStorm, un curso de HTML5 y CSS3… ¡Enhorabuena a los premiados!

Por lo demás, solamente agradecer a toda la gente que hizo posible Greach y que contribuyó a su buena organización. Fue un placer asistir y aprender tanto de gente con tanto nivel. Desde luego, no hay duda, también en España ¡Groovy rocks!

Ojalá la próxima edición de Greach pueda celebrarse durante dos días seguidos.

¡Hasta Greach 2012!

Etiquetas: , , ,

3 Respuestas


  1. [...] Mi crónica sobre Greach por @gmamenl [...]

  2. [...] Mamen González [...]

  3. [...] Si queréis ver los vídeos y las presentaciones del resto de ponencias, están todas en Greach. También podéis leer mi crónica sobre el evento. [...]


Deja tu comentario


4 + 2 =