Hace poco llegó a mis manos el ebook gratuito Effective Feature Management de John Kodumal. Kodumal es actualmente el CTO y Fundador de LaunchDarkly, y trabajó varios años para Atlassian. En este pequeño libro, aborda un análisis de diversas estrategias que podemos implementar a la hora de desplegar en producción nuevas características de nuestros sistemas, ofreciendo una administración con riesgos controlados, que permite llevar despliegues más regularmente y por sobre todas las cosas, un despliegue que se pueda revertir de la manera más rápida posible en caso que se haya colado algún fallo.
La clave son las banderas
El libro en mi humilde opinión, centra todas las técnicas en el uso de las banderas (feature flags) para las características de nuestros sistemas. Las banderas brindan una enorme flexibilidad. Permiten aislar una nueva prestación de nuestros sistemas y así poderlas desplegar, aunque no estén culminadas sin causar ningún daño en el sistema en producción y dependiendo de la estrategia, poder liberar las características a clientes específicos, hacer AB testing, etc.
Las posibilidades son ilimitadas, que libera de responsabilidades al despliegue en producción de ofrecer características, así como la necesidad de hacer algún release de reversión por algún error.
Vale muchísimo la pena la lectura del libro ya que se abordan técnicas que fueron afinadas para ser ejecutadas efectivamente en proyectos de gran escala, y aportan conocimiento destacable en nuestras experiencia profesional en aquellos casos donde no se llegue a trabajar con proyectos de tales dimensiones.
Aunque se crea que es un conocimiento técnico orientado hacia un programador debido a que las banderas son incorporadas dentro del código fuente de una aplicación, pienso que es altamente prioritario que el tema principal y las características relacionadas sean entendidos y manejados con claridad principalmente por parte del Project Manager y CTO ya que una planificación y administración de roles y responsabilidades es precedida a la implementación dentro del código. Además, en el título el libro dice Management 😂