Agile Open Camp 2016: abierta la inscripción

La semana pasada se anunció la apertura de las inscripciones para el AOC 2016. Resulta que este año el procedimiento de inscripción tiene algunas particularidades.

A diferencia de otros eventos el AOC tiene un límite «duro» de asistentes pues es un evento 3 x 24,  o sea son 3 días completos donde todos  los participantes se alojan en un mismo lugar y comparten espacios las 24 horas. En la primera edición hubo mucha gente que quedó fuera por falta de vacantes. Si bien para esta segunda edición se contará con una mayor cantidad de vacantes también se espera una mayor cantidad de interesados en participar debido a gran repercusión que tuvo la primera edición. Es por esto que el grupo organizador ha decido experimentar con un sistema de inscripción alternativo al simple «orden de llegada» utilizado en la primera edición. El mecanismo a utilizar está explicado en este breve video de Tommy, unos de los miembros fundadores del evento.

En forma resumida la idea es: cada interesado en participar debe postularse indicando porque le interesa participar y que tiene para aportar. Luego cada uno de los 3 fundadores del evento revisa las postulaciones y selecciona 2. Los seleccionados se inscriben en el evento comprando su entrada y tienen derecho a elegir otros dos postulantes cada uno. El proceso se repite hasta completar la cantidad de vacantes disponibles.

Personalmente me gusta la idea de que las entradas se repartan en base a cierto criterio de «aporte de valor» en lugar de el simple orden de llegada. Veremos que tal sale, por mi parte ya me voy poniendo a escribir mi postulación.

 

Talleres de fin de año (2015)

Una vez alguien me dijo que una buena forma de aprender algo es intentar explicarlo y desde entonces me metí a la docencia. En los últimos dos años he participado en diversas iniciativas de DevOps y para terminar de afianzar lo aprendido he diseñado dos nuevos talleres, uno de prácticas DevOps y otro de desarrollo Java sin Fricción. Estos dos talleres los voy a estrenar en breve a la par de mis clásicos talleres de Git y automatización de pruebas. En resumen este es mi calendario de talleres de fin de año:

  • Taller de Integración Continua, 26 de noviembre, en SADIO (más info)
  • Taller de Automatización de pruebas, del 23 al 26 de noviembre en Grupo Esfera (más info)
  • Taller de Git, 4 de diciembre en el Polo Tecnológico de Rosario (más info)
  • Taller de Prácticas DevOps, 15 de diciembre en Kleer (más info)
  • Taller de desarrollo Java sin fricción, 16 de diciembre en Grupo Esfera (más info)
  • Taller de Git, 17 de diciembre en el MUG (más info)

Dudas o consultas no duden en escribirme.

Taller de Prácticas DevOps

Aquellos que siguen mi blog saben que desde hace ya hace ya un buen tiempo vengo trabajando fuertemente con prácticas DevOps. Además de aplicar estas prácticas en mis propios proyectos de desarrollo, también he estado involucrado en iniciativas de automatización en grandes empresas como OLX y Technisys. Todo esto me ha permitido acumular experiencia, conocer herramientas y probar distintas estrategias de implementación.

Con la excusa de bajar de tierra todo este conocimiento/experiencia y compartirlo, hace un tiempo comencé a preparar un curso. El título por el momento es «Taller de prácticas DevOps»,  pero más allá del título, la idea es conocer/repasar un conjunto de prácticas (y herramientas asociadas) que han cobrado popularidad en los últimos años y que tienen un impacto directo en el time-to-market y la capacidad de responder a cambios de negocio en forma rápida desde las área de sistemas. El programa preliminar del curso es:

  • El movimiento DevOps
  • Prácticas DevOps: automatización y versionado
  • Un vistazo a las herramientas infraestructura : Chef, Puppet y Ansible
  • Un vistazo a las herramientas virtualización: Vagrant y Docker
  • Casos de reales de implementación
  • Recomendaciones para dar los primeros pasos

La primer edición de este taller la dictaré en las oficinas de Kleer en Argentina el próximo 15 de diciembre. Más información aquí.

Automatización de pruebas en AS400

Hace un par de semanas comencé a trabajar un proyecto con @dfontde y @CodeRaguet para automatizar pruebas de una aplicación AS400/RPG. Nunca en mi mi vida había hecho nada con esa tecnología y creo que justamente ese fue un factor clave para que decida involucrarme en el proyecto.

Nuestro primer día de trabajo, uno de los programadores de la aplicación en cuestión nos hizo un breve tour introductorio a la plataforma AS400, al lenguaje RPG y a la aplicación sobre la cual debemos trabajar.

Dadas las particularidades de la plataforma y de cómo está construida la aplicación, decidimos tomar un enfoque de caja negra. Básicamente vamos a intercambiar mensajes con la aplicación via una cola. De esta forma nuestras pruebas se reducen a correr un setup (el cual hay que codear en RPG), escribir un mensaje en una cola, leer la respuesta de otra cola y verificar dicha respuesta. Todo esto lo vamos a codear en Java, que si bien no es «el sueño del pibe», me resulta bastante más amistoso que RPG.

Hicimos una primer prueba de concepto exitosa para entender la interacción Java/PC <-> RPG/AS400. En este momento estamos analizando la herramienta de especificación de pruebas para lo cual estamos haciendo una prueba de concepto con FitNesse.

Continuará…

Cursos en la previa de Agiles 2015

Como de costumbre en la previa de Agiles 2015 habrá un conjunto de cursos organizados de forma independiente. En ese contexto estaré dictando en Montevideo mi Taller de Continuous Delivery y Prueba automatizada.

El términos generales el taller está divido en 2 partes. La primera enfocada en los conceptos centrales de la práctica de Continuous Delivery y un conjunto de técnicas y herramientas para su implementación que incluyen Jenkins, Puppet y Docker. La segunda se enfoca en la automatización de pruebas, lo cual constituye un punto fundamental en toda estrategia de Continuous Delivery. En esta segunda parte veremos herramientas tales como JUnit, Cucumber-JVM y FitNesse. Si bien el taller tiene una base conceptual independiente de toda tecnología, la parte práctica de automatización de pruebas se realiza con Java.

Los detalles de logística e inscripción están disponibles en la página de Evolución Ágil.

Mis notas sobre AOC 2015

El fin de semana pasado participé del Agile Open Camp 2015. Como ya había mencionado, el evento se llevó a cabo en la Estancia del Carmen ubicada en las afueras de Bariloche.

Sin duda en varios aspectos este evento fue el mejor evento que participé en mi vida. Paisaje, logística, contenido, emotividad, actividades sociales y recreativas son algunos de las aspectos destacados del evento.

Creo que fue clave el hecho de que los participantes estuviéramos alojamos en el mismo lugar de la conferencia y al mismo tiempo que el lugar estuviera reservado (casi) exclusivamente para el evento. Esto permitió realizar diversas actividades «extra programa» luego de finalizadas las sesiones «formales» como ser juegos, espacios de meditación y guitarreadas hasta bien entrada la noche. Una de esas actividades extra formales fue la escritura de un libro (tema que compartiré en otro post).

Entre los momentos que más me impactaron están:

  • La visita al Invap, una empresa del estado dedicada a desarrollos de alta tecnología: radares, satélites, reactores nucleares, etc.
  • La charla Héctor Otheguy gerente general del Invap
  • El espíritu colaborativo que se vivió a la largo del todo el evento incluso en cuestiones casi domésticas como poniendo y levantando la mesa, preparando la comida y sirviéndola cuando estuvo lista
  • El exquisito cordero que comimos el sábado a la noche seguido de un fogón que incluyó guitarra, armónica, canciones y payadas.
  • La charla de Alan a la orilla del lago Gutiérrez con los cerros y el bosque de fondo
  • El cierre del evento con palabras emotivas de los organizadores y el entusiasmo de todos los participantes

Más allá de todas estas estas cuestiones también hubo un sesiones de open space que tuvieron muy buena repercusión como ser: el dojo de retrospectivas facilitado por Thomas Wallet, la sesión sobre trabajo remoto facilitada por Mariano Szklanny, la sesión de juegos facilitada por David Canteros, el elefante Agile de los muchachos de Invap, el taller de organizaciones de Martín Salías, la sesión de organizaciones horizontales de los muchachos de Grupo Esfera, el taller de identidad de Pablitux y Rodrigo Monelos y podría seguir un rato más.

Analizando el evento desde una perspectiva comunitaria creo que definitivamente ha marcado un hito:

  • Por un lado (hasta donde tengo registro) fue el primer evento «inmersivo»  y organizado en forma abierta por la comunidad ágil de Argentina . Me refiero al hecho de estar todos juntos, todo el día, por 3 días (en mi caso me levanté siempre alrededor de las 8 y siempre me acosté después de la 1)
  • Por otro lado fue un evento grande (3 días con fuertes implicancias de logística y unos 70 participantes) y fue auto organizado por los propios participantes con el liderazgo de un grupo de entusiastas locales que fueron los que tuvieron la idea del evento.

Mis felicitaciones para el core del grupo de organizadores: 

Les dejo aquí algunas fotos memorables:

aoc_summary_1 aoc_summary_2 aoc_summary_3 aoc_summary_4

Preparando el tutorial de BDD para XP 2015

En los últimos meses publiqué un serie de posts sobre BDD que fuí escribiendo mientras preparaba un curso en formato tutorial para dictar en la conferencia XP 2015 en Helsinki (Finlandia).

Durante semana Santa terminé de armar el curso y este viernes voy a dictarlo por primera vez para obtener feedback y así poder ajustarlo de cara a la conferencia.

Dado que la dinámica es hands-on, decidí armar una máquina virtual para simplificar el setup en las máquina de los asistentes. Esta vez la máquina virtual la preparé tomando como base una imagen de Lubuntu que es básicamente un Ubuntu con un sistema de ventanas muy liviano y con layout muy parecido al de Windows 7.

El tutorial está enfocado en las cuestiones técnicas de BDD: qué herramientas utilizar, como integrarlas en un proceso de integración continua, cómo hacer para para que los usuarios puedan agregar ejemplos y puedan ejecutarlos sin necesidad de instalarse todo el stack de desarrollo, etc, etc.

La semana próxima les cuento que tal anduvo.

Taller de Git online (experimento gratuito)

Desde hace ya un par de años vengo incursionando en la educación online pero siempre en calidad de estudiante. Si bien en las materias que dicto suelo hacer uso de varios recursos online, el dictado formal sigue siendo presencial. La idea de hacer algo online me viene picando desde hace tiempo y esta semana finalmente decidí hacer mi primer experimento.

La temática será Git, una herramienta con la que vengo trabajando desde 2009 y aunque inicialmente no me gustó, desde 2011 la adopté como mi controlador de versiones preferido. Desde ese momento he realizado diversas actividades de difusión: cursos, charlas, artículos, etc. Ahora ha llegado el momento de tomar todos los materiales generados en estos años para darle forma a un curso online.

La idea es generar un conjunto de videos cortos (de entre 5 y 10 minutos) y complementarlos con ejercicios y lecturas además de ofrecer algunas sesiones online para consultas(posiblemente via Hangout o Skype). Mi idea es que el curso pueda completarse en unos 10 días, con una carga de trabajo de 30 minutos diarios.

Mi intención es largar la primera corrida experimental el lunes 20 de Abril. Si estas interesado en participar te pido que completes este formulario para que podamos coordinar el horario de los sesiones de consulta. Este primer experimento será totalmente gratuito.

Agiles 2015: llamado a presentación de sesiones

Hace un par de días abrimos el llamado a presentación de sesiones para Agiles 2015. Me alegra mucho el hecho de que ya hemos recibo 6 propuestas y apenas pasaron 3 dias desde que comenzamos con la difusión.

Tal como había mencionado en algún artículo anterior, este año tenemos algunas novedades respecto del proceso de evaluación/selección de sesiones. En primer lugar estamos pidiendo que cada propuesta venga acompañada de un video de 3 minutos donde el autor de la sesión haga una invitación a participar de la misma. Esto tiene un doble objetivo: por un lado ver como se expresa el autor, escucharlo hablar y por otro lado tener material para difundir el evento una vez la sesión haya sido seleccionada para el evento.

Otro novedad es que hemos incluido explícitamente una instancia de feedback en la cual el grupo de evaluadores de la conferencia se compromete a dar feedback concreto a los autores para que estos puedan mejorar así su propuesta y aumentar las chances de que su sesión sea seleccionada.

En tercer lugar hemos agrupado los temas de interés en 3 grupos (temas técnicos, de gestión y extra-software) asignando a cada uno un coordinador que se encargará de responder consultas de los autores, coordinar el proceso de evaluación de las propuestas de su track y finalmente coordinar el armado de la grilla del track. Al igual que en años anteriores, también es posible que toda persona de la comunidad vea las propuestas y envíe feedback a los autores por medio del sistema

Finalmente, la última novedad tiene que ver con la aplicación que estamos usando para gestionar el envío/revisión/evaluación de sesiones. Estamos estrenando una aplicación creada a medida que comenzamos a codear en Agiles 2014 y que luego @fdibartolo se encargó de completar. Para ser sinceros, Fer la codeó casi de cero pues en Agiles 2014 apenas si llegamos a armar la estructura y definir algunas entidades. ¡Grande Fer!

Bueno gente, esto es todo por ahora, los invito a poner manos a la obra y enviar sus propuestas. Aquí está el detalle del llamado y aquí está el sistema para enviar sus propuestas (y también para ver las propuestas ya subidas).

opencall_home