AboutOpinionesBlogLa Blockletter

Software Crafters® 2025 | Creado con 🖤 para elevar el nivel de la conversación sobre programación en español | Legal

Home » historias » Los cisnes negros en el código
Los cisnes negros en el código

Los cisnes negros en el código

Suelen ocurrir cuando un bug crítico se despliega en producción o cuando el cowboy de turno introduce un bug crítico por tocar en producción.

Miguel A. Gómez
Miguel A. Gómez · Seguir2 min read · 10 Ago 2023

Al suscribirte a la newsletter comparto contigo los 10 libros más importantes de programación. Los que sin duda todo dev debería leer al menos una vez...

Aquella imagen los dejó paralizados…

En el siglo XVII, cuando los europeos descubrieron Australia se toparon con un animal nunca visto antes.

Por aquella época pensaban que todos los cisnes eran blancos, una creencia igual de irrefutable a que el cielo es azul.

Pero entonces, un cisne negro se alzó frente a sus ojos.

Esto impactó de lleno en las convicciones de los habitantes de la época y te puedes imaginar lo que significó…

Pues eso, una polémica que ríete tú de Twitter.

El filósofo Nassim Taleb utiliza esta metáfora en su libro “The Black Swan”, para describir un acontecimiento con estas tres características:

  1. Inesperado, no había ocurrido hasta entonces y casi nadie podría pensar que sucediera.
  2. Tiene un gran impacto (ya sea positivo o negativo).
  3. Una vez que ha ocurrido, es sencillo comprender las razones de lo sucedido y cómo podría haber sido predecido.

Ejemplos de ellos tenemos muchísimos: terremotos, pandemias, guerras, crisis financieras o atentados terroristas como el del 11-S.

Según Taleb la historia y las sociedades no evolucionan poco a poco, sino que avanzan a saltos, de cisne negro en cisne negro.

Y estos no tienen porqué ser sorpresas instantáneas, algunos necesitan tiempo para completarse.

Verás.

En el código tenemos cisnes negros de los dos tipos, los que suceden rápitos y los lentos.

Y como diría Van Gaal: “siempre son negativos, nunca positivos.”

El ejemplo más claro es cuando llegas a un punto en el proyecto en el que el código se ha degenerado tanto que es prácticamente imposible introducir nuevos cambios sin romper nada.

Este cisne negro se culmina cuando alguien formula la famosa pregunta del millón:

“¿Cuándo vamos a tirar abajo todo el proyecto y reescribirlo desde cero?”

Esto no ocurre de un día para otro, sino que poco a poco vamos arruinando el código.

Lentamente día a día, línea a línea.

Podríamos decir, que cisne gris tras cisne gris.

Los del otro tipo, los instantáneos, suelen ocurrir cuando un bug crítico se despliega en producción o cuando el cowboy de turno introduce un bug crítico por tocar en producción.

Estas situaciones pueden hacer quebrar a una empresa en un abrir y cerrar de ojos.

¿Y cómo podemos protegernos de los cisnes negros en el código?

Respuesta corta:

Programando para alcanzar la excelencia técnica.

Quizás te interese

WYSIATI en el Desarrollo de Software

WYSIATI en el Desarrollo de Software

Dejemos de picar código

Dejemos de picar código

Al suscribirte a la newsletter comparto contigo los 10 libros más importantes de programación. Los que sin duda todo dev debería leer al menos una vez...