Nueva edición del Taller online de Docker & Kubernetes

Nueva edición del Taller online de Docker & Kubernetes

En la última semana estuve trabajando en preparar una nueva edición del taller. El temario será el mismo pero estuve ajustando algunos de los ejercicios y los materiales de estudio:

  • Introducción a Docker
  • Consideraciones para la elección de imágenes base
  • Recomendaciones para la creación de imágenes
  • El ecosistema de herramientas Docker
  • Tecnologías de contenedores más allá de Docker
  • Introducción a Kubernetes
  • Recomendaciones para el diseño de aplicaciones Kubernetes
  • Manejo de configuración con Secrets y ConfigMaps
  • El ecosistema de herramientas Kubernetes
  • Deploy y monitoreo
  • Distribución de aplicaciones Kubernetes con Helm

El taller será los días miércoles a las 20 hs. (hora Argentina, UTC-3). Serán 5 encuentros cada uno de ~90 minutos. La fecha de inicio será el miércoles 20 de marzo. Los interesados pueden preinscribirse aquí (si ya se habían preinscripto para la edición no hace falta que vuelvan a hacerlo, pues ya tengo sus datos y lo contactaré en forma privada).

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.

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.

Mis notas de la 10Pines Conf 2018

Una casa con 10 pinos hacia el sur hay un lugar….

Así comienza la canción que da nombre a 10 Pines, esa empresa de la que son parte varios amigos y que ayer realizó su primer conferencia. La idea inicial de la conferencia fue de Ale Alfonso y luego hubo un grupo de varios pinos que se entusiasmaron y le dieron forma.

La conferencia fue interna pero con la participación de algunos amigos de la casa (como yo). La fecha elegida no fue casual, fue el día 256, el día del programador.

La jornada comenzó minutos antes de las 10 con la apertura de @lucas_giudice y cerró alrededor de las 18 con la certeza de una edición 2019. A lo largo del día participé de 5 sesiones cada una más interesante que la otra:

  • La de Nico PaPagna en la que compartió varias recomendaciones para hacer TDD
  • La de Fede Zuppa sobre Performance de Equipos
  • La de Nico Derecho sobre React Native
  • La de AgusGS sobre arquitectura Serverless
  • La de DarioG sobre Java-Spec

Adicionalmente a esto, también di una sesión sobre construcción de aplicaciones escalables (aquí están las diapositivas). Más allá de las sesiones en las que participé, creo que el programa ha sido de lo mejor que he visto en el último tiempo en Argentina (y tal vez incluso en la región).

Le agradezco a los pinos por haberme invitado a participar y al mismo tiempo los felicito por la movida.

Primeras Jornadas de Ingeniería de Software del Uruguay

Los días 16 y 17 de Octubre se realizarán en Uruguay las Primeras Jornadas de Ingeniería de Software y tengo el honor de haber sido invitado como orador.

En ese contexto estaré hablando sobre unos de los temas «calientes» de la actualidad: DevOps. Concretamente el título de mi disertación será «DevOps, myths and facts of a new paradigm«. También estaré dando un taller enfocado en Test-Driven Development, Continuous Integration y Pair-Programming.

Las jornadas son de entrada libre y gratuita pero es necesario registrarse. Pueden encontrar más información en la página del evento y siguiendo la cuenta oficial de twitter.

FLISoL 2018 en UNTreF

El próximo 28 de Abril se realizará el Festival Latinoamericano de Instalación de Software Libre_ FLISoL.

Este evento de alcance continental está destinado a la difusión del Software Libre, es completamente gratuito y está dirigido a todo público. Durante el evento se realizan instalaciones de software libre, se ofrecen charlas y talleres sobre diversas temáticas relacionadas al software libre. Todo esto en forma totalmente gratuita.

El evento se realiza simultáneamente el diversas sedes y este año por segunda vez, la Universidad Nacional de Tres de Febrero será una de sus sedes. Es en esa sede precisamente donde yo estaré participando.

Nueva edición del Taller de Prácticas DevOps incluyendo OpenShift/Kubernetes

El próximo jueves 3 de mayo voy a dictar una nueva edición de mi taller de prácticas devops, pero esta vez con nuevo agregado: OpenShift, la plataforma de gestión de contenedores desarrollada por Red Hat y basada en Kubernetes.

Hacía tiempo que tenía ganas de incorporar al taller algún ejercicio de Kubernetes pero no lograba buscarle para vuelta para que me dieran los tiempos. Finalmente decidí sacar un ejercicio de Puppet para agregar uno de OpenShift/Kubernetes.

Los interesados en participar pueden completar este formulario y los contactaré en breve:

 

Finalmente JavaScript

Como la mayoría de quienes hemos hecho desarrollo web, en algún momento tuve que tirar algunas líneas de JavaScript y sinceramente lo hice sin preocuparme demasiado por aprender seriamente el lenguaje. Hace un par de años, impulsado por NodeJS, JavaScript pegó un salto de popularidad que ameritó que uno  aprendiera JavaScript seriamente. Pero en aquel momento yo me encontraba trabajando en cuestiones de configuration management e infraestructura como código.

Finalmente hace un par de semanas empecé a trabajar en un nuevo proyecto con la gente de Auth0 y eso me llevó a que me ponga a aprender JavaScript seriamente. Es por esto que en futuros post iré compartiendo capítulos de mi camino de aprendizaje JavaScript.

Continuará…

Cierre de cuatrimestre en Ingeniería @ UNTreF

La semana pasada cerramos el cuatrimestre en la materia Ingeniería de Software en UNTreF. Fue mi tercer cuatrimestre en la materia y personalmente estoy muy conforme con el resultado. Algunas particularidades de este cuatrimestre fueron:

  • Tuvimos un cambio en el equipo docente, Diego Marcet (@diemarcet) reemplazó a Pablito Tortorella (@pablitux)
  • Cambiamos el campus virtual que usamos como herramienta de soporte, pasamos de Eliademy a Canvas.
  • Hicimos algunos ajustes en el programa, incluyendo algunos temas nuevos relacionados principalmente a cuestiones de control de calidad y gestión de la operación
  • Tuvimos dos clases especiales: una sobre modelos de calidad dictada por Sergio Villagra y otra dictada por Fernando Pelliccioni quien compartió la forma de trabajo de su equipo de desarrollo en Bitprim

En términos estadísticos:

  • 8 inscriptos, 1 abandono, 7 aprobados
  • La nota promedio de cierre de cursada fue 8,9
  • La evaluación general de la materia realizada por los alumnos (vía encuesta anónima) fue 8,3

Entre los puntos a mejorar que identificamos en el cierre de la materia destacamos:

  • Mejorar la consigna de la tarea de performance testing
  • Agregar un video introductorio a JMeter
  • Revisar el envió de notificaciones del campus (varios reportaron que la notificaciones les llegaban con mucho retraso)
  • Repetir el ejercicio del elefante carpaccio que fue de las mejores actividades de la materia
  • Comenzar antes con el desarrollo del trabajo final
  • Intentar que las tareas individuales se hagan sobre la misma base de código que el trabajo final
  • Hacer una introducción técnica a Padrino
  • Probar haciendo que las iteraciones del trabajo final sean de 2 semanas