El mejor sistema simple para ahora: una vía intermedia entre el atajo y la sobreexplotación

Fuentes: Best Simple System for Now

En ingeniería de software suele plantearse como un dilema la oposición entre pragmatismo y perfeccionismo: construir rápido con deuda técnica o invertir en una solución robusta y sostenible. Dan North, desarrollador con más de tres décadas de experiencia, propone una tercera vía que denomina "Best Simple System for Now" (BSSN, el mejor sistema simple para ahora), definida como la solución más sencilla que cubre las necesidades actuales del producto con un nivel de calidad apropiado, sin código sobrante ni sobreingeniería.

El artículo desgrana cada palabra de la expresión. "Ahora" implica renunciar a anticipar el futuro: el autor advierte de que los programadores tienden a aplicar soluciones genéricas (motores de reglas, máquinas de estados, interfaces especulativas) basándose en patrones inconscientes, cuando lo que requiere el problema es observación consciente del contexto presente. "Simple" se redefine como una función del momento: la menor complejidad posible para los requisitos y restricciones vigentes, de modo que cuando estos cambien, la definición de simplicidad cambie con ellos. North apela a la cita atribuida a Saint-Exupéry de que la perfección se alcanza cuando ya no queda nada que quitar, e incorpora la ley de Gall, según la cual todo sistema complejo que funciona ha evolucionado desde uno simple que también funcionaba, mientras que los sistemas complejos diseñados desde cero fracasan en pocos años.

Por último, "mejor" recuerda que simplicidad no equivale a recortar calidad: existe una forma correcta de hacer las cosas y conviene elegirla. North sitúa el BSSN como un equilibrio deliberado que evita tanto la chapuza apresurada como el proyecto faraónico, y promete continuar la serie con las implicaciones prácticas de aplicar este criterio.