Google Analytics

domingo, 19 de febrero de 2012

Spring I/O 2012


Ya estoy de vuelta en la isla tras la Spring I/O 2012, a la que asistimos algunos de los habituales de Agile Canarias. Y para retomar la actividad del blog, voy a hacer un resumen de lo que se pudo ver en esta edición.

La Spring I/O, gracias a la organización de JavaHispano, se ha transformado, con permiso de Greach, en la conferencia más importante del mundo Java en España. 300 asistentes, más de 30 ponentes, 2 tracks por día y 5 workshops lo demuestran. ¡Y la entrada solo cuesta 30 €!, si esto lo celebras en Londres no bajaría de 800 €.



*Disclaimer*

Esta es una conferencia muy amplia así que solo podré hablar de aquellas charlas o talleres en los que estuve presente. Pero seguro que otros asistentes también escribirán en sus blogs, y además en breve estarán disponibles los vídeos de todas las charlas.

Primer día

Application Development in the Cloud Era by Adrian Colyer

Para empezar con ganas, ni más ni menos que el CTO de SpringSource hablando sobre la evolución de las aplicaciones y las arquitecturas. Con la aparición de "la nube" las aplicaciones han cambiado radicalmente y en Spring se han dado cuenta, y han trabajado en varios productos que ayudan al desarrollador en estos aspectos.

La introducción en escena de nuevos dispositivos de visualización, como los móviles y las tablets, han cambiado radicalmente el diseño de muchas aplicaciones. JavaScript ha logrado que los clientes tengan mucha más responsabilidad, dejando que los servidores ahora oferten una serie de servicios web que cada cliente utiliza a la carta. Un mismo backend puede proveer a gran cantidad de clientes, como ocurre por ejemplo en el caso de Twitter, en donde existen infinidad de clientes ofreciendo diferentes opciones, pero todos se conectan a los servicios ofertados por Twitter.

Spring 3.1 to 3.2 in a Nutshell by Sam Brannen

En esta charla, Sam Brannen confirmó lo que ya había indicado el año pasado. La verdad es que no se habló demasiado de Spring 3.2 y se entró en más detalle en las nuevas cualidades de Spring 3.1. Habían muchas pero personalmente me quedo con algunas que me parecen más relevantes.

  • En la definición de beans, podremos usar perfiles, de forma que en función del perfil indicado se utilicen unos beans u otros. Por ejemplo podría ser de utilidad para diferenciar entre los accesos a BD de producción y desarrollo,
  • En los controladores MVC se mapean los argumentos anotados con @PathVariable directamente al modelo retornado por el método.

No fue una charla muy intensa, pero si no tenias mucha idea de la novedades de Spring 3.1 podías sacar algo.

Polyglot Messaging with RabbitMQ by Rob Harrop

No hay mucho que contar sobre esta charla, Rob Harrop explicó como utilizar RabbitMQ como sistema de comunicación entre diferentes aplicaciones hechas en distintos lenguajes. Utilizó desde Java hasta Haskell para mostrar las posibilidades de RabbitMQ como sistema de interconexión.

Al día siguiente Domingo Suarez nos terminaría de convencer acerca de las ventajas de usar RabbitMQ como sistema de colas, ya que no solo es muy estable sino que require muy poca administración.

Spring Data y MongoDB por David Gomez

David Gomez de Extrema Sistemas, explico de manera breve el proyecto en el que habían tenido que trabajar y porque utilizaron MongoDB como sistema de persistencia. Estuvo muy bien porque explicó las diferencias entre los diferentes sistemas NoSQL y cual fue la razón por el que seleccionaron Mongo.

Comentó también las herramientas de las que dispone la suite de Spring para hacer uso de Mongo, Spring Data y los detalles con los que se debe tener cuidado en su utilización.

Spring Roo

Para ir finalizando el primer día, un poco de Spring Roo. Debo decir que tenía ganas de verlo, porque en otras charlas lo habían utilizado y daba la impresión que en algunos casos es una herramienta muy potente.

Spring Roo permite crear proyectos Spring en pocos segundos, hacer scafolding de clases de modelo, controladores y demás artilugios. Además se integra perfectamente con Spring Tools Suite, por lo que cualquiera que esté acostumbrado a utilizar Eclipse le puede venir muy bien. Digamos que se trata de una herramienta que se sitúa entre hacer todo el proyecto a mano o utilizar un sistema tipo Grails.

Enterprise Integration - The Seriously Nasty Stuf by John Davies

Sinceramente debo decir que tras un buen rato en esta ponencia, seguía sin saber muy bien de que trataba. Tras dar una lista de formatos de intercambios de datos y ejemplos de los mismos durante 25 minutos, no tuve otro remedio que usar la regla de los dos pies, salir de la sala sin hacer ruido y a otra cosa mariposa.

La fiesta de Atlassian

Tras un día muy largo, y una agradable cena con el resto del #comandomuyayo, nos presentamos en el Moma56 para la fiesta que Atlassian había preparado. Muchas personas no lo consideran importante, ni tan siquiera interesante, pero el networking que se genera en estos eventos es importantísimo. No solo tienes la oportunidad de aprender otras cosas y puntos de vista sobre temas tratados en la conferencia con los asistentes a la misma, sino que se crean contactos muy interesantes. Además es en estos instantes de networking donde más recargas las pilas, te relacionas con la gente y tu cabeza se llena de ideas y ganas de hacer las cosas bien.

Atlassian como ya empieza a ser costumbre no defraudó y no solo por el picoteo, los copazos y las camisetas que regaló. Su embajador, David Bonilla, anunció una noticia bomba. Atlassian está contratando gente y también buscarán en España, así que si estas interesado ya sabes con quien contactar. Eso sí, es para ir a trabajar a Australia.

Segundo día

Keynote by Graeme Rocher

Como era de esperar, en el segundo día tuvimos al máximo representante de Grails explicando cuales son las novedades de este sistema en su versión 2.0. Siempre es interesante ver a Graeme haciendo un esfuerzo por hablar integramente en español, pero hay que decir que sus charlas son un poco duras porque es complicado seguir sus pasos en la consola, como ya ocurría en el día anterior con Rob Harrop.

Whoops! Where did my architecture go? by Oliver Gierke

Esta fue para mi una de las charlas más interesantes, en donde Oliver Gierke nos explicó cual es la metodología que ellos utilizan para crear sus proyectos. Desde la división por capas y dominio, hasta la modificación de la visibilidad de clases para que no se pueda estropear la arquitectura por error. Una vuelta de tuerca más a la utilización de las interfaces como contratos.

También nos mostró alguna herramientas interesantes como JDepend y SonarGraph que pueden ayudar enormemente a tener todo bajo control y que no se nos vaya de las manos. Y finalizó con algunas ideas en la creación de sistemas basados en plugins que permitan la extensibilidad sin dañar el core de nuestro proyecto.

Spring in Scala by Jan Machacek


Esta charla me pareció interesante aunque a mi en particular no me enseñó mucho porque ya había utilizado Scala con Spring. Jan Machacek introdujo Scala, aunque los ejemplo quizás eran un poco rebuscados para la gente que no había tocado el lenguaje anteriormente.

Securing your REST API with OAuth por Sergi Almar

La seguridad es uno de los temas que más flojos llevo yo personalmente, así que me decante por ir a ver que nos proponía Sergi Almar y debo decir que me gustó mucho. Durante una hora nos introdujo a las diferencias entre OAuth 1 y OAuth 2 y acabo enseñándonos como con el módulo de OAuth de Spring Security se puede gestionar la seguridad de nuestra aplicación facilmente.

Todavía es un proyecto en desarrollo y está un poco verde, pero apunta muy buenas maneras, quizás en unos meses sea una opción real para sistemas que requieren mucha integración como me pasa a mi en mi último proyecto.

Grails, opción real y escalable para sitios web de alta carga por Domingo Suarez

Al final del segundo día no habían muchas ponencias de mi interés, así que me decante por volver con mis compañeros de Agile Canarias. Que sorpresa más grata me lleve durante esta hora con Domingo Suarez, no solo por lo bien que expuso el tema, sino porque salí con algunos detalles e ideas muy interesantes que me puedo llevar a mi proyectos en Java.

Desde la confirmación de RabbitMQ como un gran sistema de colas, hasta la mención de Terracota como servidor de aplicación y JavaMelody para monitorizar el estado de la aplicación.

Aplicando elasticidad en la búsqueda con Grails por Enrique Medina Montenegro

Para finalizar la conferencia asistí a la charla de Enrique Medina. Las búsquedas no es un tema con el que trabaje muy a menudo, pero la presentación fue bastante buena. Desde las cosas a tener en cuenta hasta lo que no debemos hacer cuando utilizamos un sistema como Compass, para realizar búsquedas avanzadas en nuestra aplicación.

Networking, despedida y cierre

Como no podía ser menos, al final del día la organización nos tenía preparado un rato de ocio y networking con cervezas gratis en la cafetería de la CEU San Pablo. Pero el cansancio acumulado ya pesaba por lo que tras un rato nos volvimos al centro de Madrid a cenar y dar por finalizada la aventura de la Spring I/O 2012 hasta el próximo año.

Antes de acabar quiero agradecer a la CEU San Pablo por sus instalaciones y a los patrocinadores por su participación. Pero este evento no sería posible sin el gran trabajo de Sergi Almar y Abraham Otero, muchas gracias a ellos sobretodo.

8 comentarios:

Jose Manuel dijo...

Muchas gracias por compartirlo

Yeray Darias Camacho dijo...

Muchas gracias a ti por leerlo :-)

Espero en los próximos meses sacar algunas entradas sobre los temas que se trataron o algunas de las tecnologías que vimos.

Un saludo.

Juan dijo...

¿Se publicaron los vídeos del año pasado?

¿Alguien sabe donde están?¿Creéis que realmente se publicarán este año?

Yeray Darias Camacho dijo...

Buenas Juan.

Hasta donde yo se, los del año pasado no están, ¿se grabaron de forma oficial? 

Este año AT Sistemas se encargó de esa parte como patrocinador, y estoy seguro que estarán lo antes posible, estas cosas llevan su tiempo de edición y todo eso, ya sabes. Seguro que en la cuenta de Twitter o en la web de Spring I/O (springio.net) se mostrará información al respecto desde que estén.

Un saludo.

Juan dijo...

Había al menos un cámara que me dijo que era personal de la Universidad CEU San Pablo Monteprincipe. Y me aseguró que se publicarían los vídeos para todos. Así que o no los han publicado o los han publicado en algún sitio que Google no encuentra.


Te dejo dos fotos para que veas en la parte izquierda que era un cámara profesional con trípode y todo:
http://www.flickr.com/photos/rugi/5484790154/
http://www.flickr.com/photos/rugi/5484811514/

¿Quien de la organización de Spring IO 2011 podría mirar a ver que pasó con este tema?

Yeray Darias Camacho dijo...

La verdad es que no tengo ni idea respecto a lo de la grabación del año pasado, seguro que en la dirección eventos@javahispano.org te pueden decir algo.

Juan dijo...

Me dijo Sergi Almar el 22 de febrero de 2012:
> Los videos del Spring I/O 2011 nunca se colgaron. Esperamos que la semana> que viene su publiquen los del Spring I/O 2012.

Es una pena que los vídeos del año pasado se perdieran.
Y tiene toda la pinta que los de este año también se van a perder.

Yeray Darias Camacho dijo...

Sí, estaría bien tenerlos y que no se pierdan. Dales un voto de confianza, estoy seguro que están haciendo todo lo que pueden.

Un saludo,