Los días 13 y 14 estuve en Madrid para asistir a la Conferencia Rails, os recomiendo leer el resumen que ha hecho Jesús Navarrete de algunas de las charlas viendo que coincido mucho con él y que últimamente ando un poco vago para escribir ;), de todas formas sí quiero comentar que por lo general me parecieron más interesantes las que giraban alrededor de cómo trabaja la gente y algunos casos de éxito que las de tecnología pura y dura.
También me pareció curioso el speed dating entre gente que busca programadores y quienes buscamos proyectos interesantes en los que trabajar o para quien busca empleo, aunque la mayoría buscaban contratar empleados y no colaboradores freelance.
Otras cosas que quisiera destacar son por un lado los premios de personaje de año y proyecto del año, el primero fue para Xavier Noria y el segundo para Tog, aunque como ya se dijo en la lista de ror-es, hubiera estado bien dar un par de minutos para conocer a los ganadores; y por el otro lado la keynote de Obie Fernandez, que nos habló mucho de su empresa y de cómo trabajan, lo que resultó realmente interesante.
Como siempre, de lo mejor del evento son los pasillos: hablar con gente que no conocías, poner cara a muchos de los que participan en ror-es, encontrarte con algunos que conoces de forma online, juntarte con la gente con la que colaboras a diario e incluso encontrarte a un ex-compañero de trabajo :).
Actualización 21/11/08:
Ya están disponibles los videos de la conferencia.
Después de bastante tiempo programando en Java, uno está acostumbrado a de vez en cuando hacer utilizar el debug de su IDE(en mi caso Eclipse) para comprobar algún comportamiento extraño, en el caso de Grails se apoya en el debugging remoto que nos trae la JVM(veáse el bash o .bat en GRAILS_HOME/bin/grails-debug).
Para empezar, deberemos ejecutar nuestra aplicación Grails con:
grails-debug run-app
De esta manera, tendremos debug remoto en el puerto 5005(por defecto)
Luego nos vamos a nuestro Eclipse, sobre nuestro proyecto seleccionamos Debug As y Debug Configurations..., tras esto tendremos que crear una nueva Remote Java Application con tipo de conexión Socket Attach en nuestro host, pero deberemos modificar el puerto de conexión por defecto que usa Eclipse(8000) al 5005, darle a debug y listo.
Ahí va una imagen(con un poco de publicidad subliminal ;))
A partir de aquí ya podemos poner puntos de ruptura y trabajar con la perspectiva Debug de Eclipse normalmente.
Y por si quedan dudas, como su nombre indica :P, es posible hacer debug en remoto y no es algo exclusivo ni de Grails ni de Eclipse :).
Tras varios meses de trabajo, vemos ya cercana la aparición Jobsket al mundo, en forma de beta privada. Un proyecto dirigido al sector empleo en internet, con un desarrollo y un enfoque que se sale de lo habitual, y al que también le vemos un potencial enorme.
Para estos proyectos se suele hablar mucho del equipo, y tengo que decir que el nuestro da miedo ;): con Jordi, Mamen, y Martín. Para mi los tres son de lo mejorcito, mientras tanto, otros hacemos lo que podemos para no desentonar demasiado :P.
Con el potencial del proyecto y del equipo, estamos convencidos que jobsket dará mucho que hablar y que demostará, una vez más, que con motivación y gente muy válida no importa que los miembros del equipo estén a cientos o miles de kilómetros para terminar haciendo un gran trabajo.
Si alguien tiene curiosidad a un nivel más técnico y no lo ha leído antes en el blog de Martín, nuestro framework web elegido fue Grails, algunas razones: cuando empezamos se estaba hablando muy bien de Grails(allá por la Release Candidate de la versión 1.0), al basarse en Hibernate y Spring sabíamos que no empezábamos de 0, además ya había algunas aplicaciones en producción más o menos grandes y teníamos ganas de aprender algo nuevo. La experiencia hasta el momento está siendo muy satisfactoria.
Por ahora tampoco podemos decir mucho más, simplemente animaros a seguirnos en twitter y que si queréis probar la beta cuando esté disponible registréis vuestra dirección de correo para avisaros.
Rick Hightower está trabajando en un interesante tutorial sobre inyección de dependencias usando Spring. Realmente el tutorial empieza explicando explicando las bondades de la inyección de dependencias para desacoplar nuestro código; y sigue con una explicación de cómo hacerlo a mano, sin la ayuda de frameworks, con nuestro propio código pegamento.
Una vez introducidos, va explicando las diferentes formas con las que se inyectan dependencias con Spring, empezando desde la forma clásica usando sólo configuración XML, sigue adentrándose en algunas de las diferentes anotaciones de Spring que podemos utilizar(@Required, @Autowire, @Qualifier, @Component...), después en la configuración de objetos con tipos primitivos y acaba con el ciclo de vida y los ámbitos(scopes) de los objetos inyectados. En definitiva, un muy buen recurso para introducirse a la inyección de dependencias, a Spring y a sus anotaciones.
Sobre las anotaciones para la configuración de depenencias con Spring, bajo una opinión completamente personal y sin haberlas utilizado todavía, no me termina de convencer usarlas: Por un lado atamos nuestras clases a Spring con la configuración hardcodeada y por otro tenemos la configuración repartida en múltiples clases.
Quizás esté equivocado en lo segundo y sea más mantenible tener repartida la configuración en las mismas clases que tenerla en uno o varios XML, por esto me gustaría conocer las opiniones de los que pasáis por aquí que uséis Spring con o sin anotaciones y vuestras experiencias.
Pues como ya han escrito Aitor en el blog de Linking Paths y Jesús en el suyo, el internship ya ha terminado y no se puede decir que haya sido un éxito, ni mucho menos.
La idea era lanzar flatee al terminar el internship, pero por varias razones no ha sido posible dedicarle todo el tiempo y esfuerzo que requería este proyecto y se nos ha quedado a todos la sensación de que ha sido una decepción, personalmente más cuando alguien se ha interesado por la evolución del proyecto. De todas formas, sacando la parte positiva, a mi me ha servido para aprender bastante rails (sin tog) y que uno no se puede liar en un proyecto de este tipo con medias tintas. A mi me cogió en un momento muy liado con el GSoC, otro proyecto propio, proyectos a terceros... ni trabajando algunos fines de semana daba abasto(y de vez en cuando hay que descansar).
Sobre el futuro de flatee, por ahora voy a seguir trabajando en ello como side project, con el compromiso de sacar la primera versión para finales de año. Aunque sigue sin sobrarme precisamente, tengo algo más de tiempo que durante el verano, es un proyecto que cubre una necesidad propia y soy un poco tozudo(como buen aragonés :P). Esto significará pegarme también algunos fines de semana de código encerrado en casa y tratar de liberarme algunos días para dedicarle más tiempo.
Espero que más adelante Jesús pueda volver a incorporarse y podamos sacar a la luz un proyecto que resulte de utilidad a la gente que busca(mos) compañeros de piso o piso compartido.