Libro recomendado: Joy of Agility, how to solve problems and succeed sooner

Compré este libro pura y exclusivamente por el autor: Joshua Kerievsky. Su libro «Refactoring to Patterns» me resultó excelente. Luego tuve la oportunidad de conocerlo personalmente allá por 2009 y desde entonces lo sigo. En general coincido con las ideas que comparte y por eso cuando vi este nuevo libro, «Joy of Agility», no dude en comprarlo.

Lo empecé a leer e inicialmente pensé que no me gustaría. Me parecía que era como muy filosófico, poco práctico, medio humo. Pero a pesar de esa sensación inicial seguí leyendo.

Lo terminé de leer hace unos días y debo decir que me gustó. Algo que me ayudó mucho a la lectura es que los capítulos son cortos, apenas dos páginas en muchos casos.

En cierto modo el libro es como un compendio de «anécdotas con moraleja». Cada capítulo cuenta una de estas anécdotas y termina con una moraleja/consejo que obviamente está relacionada a la agilidad.

Las anécdotas me resultaron muy entretenidas y muchas de ellas también muy útiles y de aplicación directa a mis tareas cotidianas.

Ojo, no es un para todo el mundo, si esperas ver código y demás nerdeadas, no es por acá. Pero si te consideras: agilista, coach, facilitador, agente de cambio o similar, entonces no dejes de leerlo.

Nuevo Stream de Desarrollo de Software

Con los miembros del equipo de la materia de Ingeniería de Software de UNTreF, Diego Marcet y Gonzalo Cozzi, decidimos hacer un experimento: un stream.

Vamos reunirnos una vez por semana a desarrollar una aplicación de punta a punta aplicando las prácticas de desarrollo que habitualmente enseñamos en nuestra materia y lo vamos a hacer mientras los transmitimos por YouTube. La idea no es solo mostrar código sino también tener las discusiones/decisiones que típicamente surgen en cualquier equipo de desarrollo.

En principio vamos a hacer una transmisión por semana por YouTube, los días miércoles en el horario de 19:00 a 21:00 (hora argentina, GMT-3) comenzando la semana próxima, el miércoles 26 de marzo.

Hablaremos (e implementaremos) de BDD, TDD, Integración Continua, Trunk-Based Development, Pair-Programming, Feature Flags, Infra as Code, Continuous Delivery, DevOps, Patrones, Arquitectura, Calidad y mucho más.

Los interesados nos vemos aquí en el miércoles próximo, pasen y vean.

Los dos estilos de backlogs

El término «backlog» alcanzó una gran popularidad de la mano de Scrum llegando incluso a trascenderlo. Muchos utilizamos en la actualidad el término «backlog» aún sin estar trabajando necesariamente con Scrum. En este sentido he visto enfoques de uso de backlog muy diversos entre los que me parece destacan 2.

En un extremo está la visión más cercana a Scrum donde el backlog está centrado en el producto, sus ítems están expresados en términos negocio, típicamente con forma de user stories y épicas.

En el otro extremo tenemos un backlog que representa el trabajo por hacer y si bien todos sus ítems tienen alguna relación con el producto/servicio que estamos construyendo, esa relación no siempre es tan directa o evidente. El backlog es en este caso una herramienta de gestión del trabajo y en parte por ello sus ítems no siempre toman la forma de user stories, sino que muchas veces son tareas.

He visto equipos trabajando con uno u otro enfoque de backlog y también he visto equipos trabajando con ambos tipos de backlog en simultáneo. Y obviamente también he visto equipos trabajando con enfoques distintos a estos dos.

En lo personal, y desde mi posición de miembro del equipo de ingeniería, tiendo a inclinarme por el segundo enfoque, es fundamental para mi tener en bien en claro y visible todo el trabajo por delante. Me ha pasado de trabajar con equipos «novatos» en términos de gestión que intentan trabajar con un backlog puramente de producto y que pierden de vista tareas indispensables para la entrega de valor como ser la gestión de ambientes, configuración y demás tareas relacionadas a la puesta en producción.