January 26, 2019

The Nature of Software Development

[...] If you’ve been involved in software development, you too have probably often felt that all this should be simple, but somehow it gets all complicated.

Ron Jeffries

Llevaba unos cuantos meses con ganas de poder leer el libro The Nature of Software Development de Ron Jeffries y, por fin, este enero, he dedicado unas cuantas horas a poder estudiarlo, disfrutarlo y compartirlo con varias personas del equipo y colegas de profesión.

Para quien no le conozca, Ron Jeffries es uno de los creadores de Extreme Programming, firmante del manifiesto Agile y un profesional con dilatada experiencia en el desarrollo de software. Un breve vistazo al índice de contenidos o al resumen de la contraportarda ya es suficiente para entender que el libro, aunque no mencione explícitamente niguna metodología concreta (más allá del Natural Way del propio Jeffries), va a ofrecer una lectura amena y un tanto filosófica sobre el desarrollo de software desde una óptica Agile. En lo personal, encontré la visión del libro muy alineada con mi propio entendimiento sobre cómo se deberían desarrollar productos y proyectos digitales.

A través de sus páginas, Jeffries no sólo habla del proceso de implementación (del que, realmente, apenas menciona más que la búsqueda constante de la excelencia técnica y los beneficios de aplicar Refactoring de manera regular), sino que gran parte del libro está centrado en la própia definición de valor («lo que necesitas», en palabras del autor) y cómo se puede identificar y alcanzar lo más rápido posible a través de la construcción de equipos de alto rendimiento que tengan maestría en técnicas de entrega continua de valor, planning y slicing de funcionalidades y capacidad para ejecutar y entregar productos donde la calidad sea una máxima no negociable.

Como imagináis, construir un equipo de estas características requiere de perfiles multidisciplinares donde personas de negocio y desarrollo trabajen codo con codo compartiendo una filosofía común.

Sin duda, si trabajáis en una empresa de software (a cualquier nivel), este se trata de un libro imprescindible.