El camino organizacional hacia Docker (nueva serie #camino-docker)

Docker vino para quedarse. Los grandes vendors lo vieron, le dieron su visto bueno y se sumaron al negocio. Microsoft, IBM,Google, Amazon y RedHat son algunos de los vendors que están ofreciendo productos y/o servicios para correr Docker ya sea en la nube como también On-Premises. En lo que va de este año he trabajado con 3 organizaciones en su camino de adopción de Docker y esta semana participé de una reunión en la que se debatió este tema. A partir de eso es que se ocurrió escribir una serie de artículos compartiendo algunas de las lecciones que he aprendido al trabajar con distintas organizaciones en su camino de adopción de Docker. Por el momento tengo en mente escribir sobre los siguientes temas:
  • Elección de la plataforma
  • Creación de contenedores / Dockerfiles
  • Manejo de configuración
  • El proceso de despliegue
A modo de introducción comparto algunos artículos de terceros para ir entrando en tema:

Estrategia de versionado para DevOps, paper aceptado

Hace unos días me notificaron que mi paper Versioning Strategy for DevOps Implementations fue aprobado para ser presentado en Congreso Argentino de Ciencias de la Informática y Desarrollos de la Investigación (CACIDI2018). Comparto aquí el resumen de este trabajo:

DevOps is one of the most popular approaches for software delivery nowadays. Even though there is no unified definition of DevOps, there is wide consensus about the set of practices that are part of it. Two of those practices areInfrastructure as Code and Continuous Delivery, which bring new artifacts into the Software Development lifecycle. These new artifacts have direct impact on Software ConfigurationManagement, which is a well-known practice that has been around for decades in the Software Engineering discipline. In particular, these new practices have a direct impact on VersionControl. This article describes a Version Control Strategy to manage these new artifacts introduced by DevOps initiatives.The proposed strategy covers the identification of artifacts, versioning tools, version naming conventions and traceability between different artifacts versions. The strategy was validated in three cases of real world projects where it was successfully applied. Each case corresponds to a different kind of organization and in each case a different set of tools where used. Based on these cases, benefits and possible improvements are identified.

Libro: Facilitador de Equipos Agiles

El nombre del libro es “Facilitador de Equipos Ágiles”, y es el primer libro de la serie “Chief Agility Officer, El camino de un Coach hacia la Agilidad Empresarial“. Su autor es Martin Alaimo. Lo terminé de leer hace más o menos un mes y el lunes pasado me reuní con Martín para hablar sobre libro: en parte le dí feedback y en parte hablamos sobre algunas cuestiones que se mencionan en el libro y que me interesaba conocer la opinión de Martin con mayor profundidad. EL libro me gustó, tiene un muy buen mix de teoría/práctica y está complementado con experiencias de campo. Me parece un libro fundamental para que aquellos que quieran desempeñarse como facilitadores. Si bien en ciertos puntos es un libro introductorio se asume que el lector ya está familiarizado con métodos ágiles en general. A lo largo del libro se utiliza la terminología de Scrum, lo cual me parece acertado incluso cuando el libro no es específico de Scrum. Una característica que me gustó mucho es que algunos capítulos tienen ejercicios. El libro está disponible en Amazon en diversos formatos y para los que estén en Buenos Aires pueden comprar su ejemplar en papel en las oficinas de Kleer.

Taller de TDD, CI & Pair-Programming

En el contexto de las Jornadas de Ingeniería de Software del Uruguay, estuve haciendo un Taller sobre Test-Driven Development, Continuous Integration & Pair-Programming.

Participaron del taller unas 19 personas y a pesar de algunos imprevistos (como que la gente no hubiera leído los materiales de preparación), el taller salió muy bien. La evaluación general del taller fue 4.4 / 5.

Dejo aquí los recursos que compartí con los asistentes del taller:

Primeras Jornadas de Ingeniería de Software del Uruguay (notas personales)

Los pasados martes y miércoles estuve participando de este evento. Tuve el honor de dar el keynote del martes. Hablé sobre un tema de moda que conozco con bastante profundidad: DevOps. Las diapositivas de mi exposición están disponibles aquí.

Entre las exposiciones que me resultaron más interesantes estuvieron:

  • La de Federico Toledo quien contó experiencias en pruebas de performance.
  • La de Guilherme Travassos, un reconocido académico brasilero, quien expuso sobre “Using validation sessions based on technology probe in software development to innovation
  • La de Jorge Corral que habló sobre la exportación de servicio de IT a USA
  • La de Nicolás Jodal,  quien habló sobre los desafíos de 30 años de evolución de Genexus (producto desarrollado por su empresa).

Más allá de las exposiciones hubo una mesa redonda de la que participaron varios referentes de la industria uruguaya del Software en la que se destacó la presencia de la Ministra de Industria Carolina Cosse.

Agradezco a Diego Valespir, Cecilia Apa y al resto del equipo organizador por la haberme invitado y los felicito por el gran evento realizado.

Libro recomendado: XP installed

Es domingo por la tarde, está anocheciendo. Estoy sentado en un sillón releyendo un libro para mi taller de TDD. El libro lleva
en mi biblioteca un buen tiempo pero no el suficiente, debería haberlo comprado antes.

Leo un par capítulos seguidos y me resuena lo que dice, pero al mismo tiempo me llama la atención. Lo que estoy leyendo me parece muy actual pero sospecho que el libro fue publicado hace unos 15 años. Entonces detengo mi lectura y reviso las primera páginas donde figura la información editorial. Efectivamente, el libro fue publicado en Diciembre del año 2000.


Se trata de “Extreme Programming Installed”, el libro de tapa rosa de la colección XP Series. Un libro escrito por Ron Jeffries, Ann Anderson y Chet Hendrickson. El libro es como un reporte de experiencia, los autores cuentan a lo largo del libro como aplican XP. Curiosamente los ejemplos de código están en Smalltalk, lo cual me resulta muy agradable :-).

ArqConf: Infrastructure as Code

El próximo 11 de Octubre se realizará una edición especial de la ArqConf sobre la temática particular de Infrastructure as Code.  En ese contexto estaré dando una charla titulada “Consideraciones de Diseño para un modelo de Infraestructura”. Lo sé, el nombre no resulta muy atractivo pero confío en que contenido resultará valioso:

De la mano de DevOps, SREs y un conjunto de herramientas, la práctica de Infraestructura como Código ha adquirido una gran popularidad en los últimos años. La adopción de esta práctica implica una toma de decisiones que entre otras cosas incluye el diseño de un modelo de infraestructura y la selección de herramientas asociadas. En esta sesión veremos un conjunto de conceptos y recomendaciones para tomar estas decisiones de cara a una efectiva implementación de la práctica de Infraestructura como Código.

La cita es el 11 de Octubre a partir de las 14.30 en las instalaciones de Universidad Tecnológica Nacional, FRBA en Medrano 951, más info y registración en meetup.