Toda decisión tomada en el pasado hoy es peor


Todos sabemos que las decisiones se toman con la mejor información disponible a ese momento. Con el diario del lunes es fácil decir que alguien se equivocó. Muchas decisiones que parecen obvias a posteriori no lo son a priori.

Esto, que es válido en general, es particularmente cierto para los temas relacionados con el software. He visto muchas situaciones donde una mala decisión tecnológica desencadenó retrasos, sobrecostos, etc. Pero el punto de esta entrada no es hablar de aquellos que decidieron sobre algo y luego la realidad mostró que se equivocaron. Aquí quiero hablar de los que acertaron.

En los últimos días me tocó formar parte de algunas reuniones donde se discutía la necesidad de hacer cambios profundos en una determinada infraestructura tecnológica, con varios años de funcionamiento exitoso. Fue interesante ver que un común denominador en ellas era evaluar las decisiones tomadas hace tiempo en el contexto actual. Las frases eran algo así como "hicimos mal en hacer aquello porque ahora tenemos que hacer esto otro y nos cuesta muy caro (en tiempo o dinero)".

Debemos ser más justos en nuestras evaluaciones. Más moderados tal vez.

El primer nivel de evaluación es si nos equivocamos o no. El mundo del software se ha vuelto muy complejo, con demasiados aspectos a tener en cuenta a la hora de decidir. Sólo para mencionar algunos ítems de la larga lista enumero: lenguajes, plataformas, proveedores, productos, cultura organizacional, país o geografía, etc. Antes tomabas 2 o 3 decisiones estratégicas que te marcaban fuertemente el camino. Hoy se cuentan por cientos las decisiones necesarias para definir un stack tecnológico.

Tener una infraestructura funcionando por algunos años debería considerarse un primer nivel de éxito.

En un segundo nivel podríamos evaluar si los costos de funcionamiento, comparados con otra infraestructura fueron/son razonables o no. Si logramos una arquitectura de software funcionando a un costo razonable, deberíamos sentirnos un poco más contentos. Es común ver decisiones tomadas en función de modas, tendencias o zonas de confort, que a la hora de mantener andando resultan mucho más caras.

Dejo para un tercer nivel de evaluación el momento en el que nos damos cuenta que "hasta aquí llegamos, hay que cambiar". ¿Qué es mejor una infraestructura que demora este momento 20 años o una que lo pide a los 4 años? Aquí ya no es tan fácil decir qué es mejor. Hay gran mérito en lograr una arquitectura que se mantiene útil 20 años pero también un gran problema. El cambio va a ser duro de implementar. Por su parte, una estrategia más dinámica, donde parte de la arquitectura se renueva periódicamente, permitiría hacer menos estresante el cambio pero también podría dar la sensación de que "siempre estamos arreglando o cambiando cosas".

Si llegamos a este nivel de decisión, no seamos tan duros con nuestros "yo pasados" que decidían en otro momento y con otro contexto. Tomemos la situación base cero y evaluemos que hacer como si nadie hubiera decidido nada antes. El análisis será más limpio, recuerden la frase "fix the problem, not the blame".

Seguimos pensando..

Comentarios