Recientemente hemos hablado sobre el origen del límite de las 80 columnas y el hábito asociado de usar siempre fuentes monoespaciadas en programación, y sobre cómo, en última instancia, eso proviene del tamaño primitivo de los billetes de un dólar.
Son normas que seguimos en piloto automático, sin pensar, pero ¿tienen sentido? Antes de ver qué opina el amigo Linus del asunto, veamos una batallita del pasado más remoto.
La cebolla y el reactor químico
En una vida anterior, un servidor fue ingeniero químico, y esta batallita procede de esa época. No recuerdo su origen, pero se me quedó grabada para siempre.
Un joven ingeniero químico consiguió su primer empleo en una fábrica de resinas. Las resinas se fabrican en reactores químicos por lotes. Dicho en cristiano: son una thermomix del tamaño de un autobús.
Al igual que en una thermomix, metes los ingredientes, programas una temperatura, pones en marcha el agitador y, pasado un tiempo, tienes el resultado: unas lentejas, una resina, un antibiótico o “metanfetamina azul”. Vacías el reactor, limpias y vuelves a empezar.
Al llegar y hacerse cargo del proceso, se encontró con la lista detallada del procedimiento, heredada del ingeniero anterior. Incluía lo esperado: perfiles de temperatura, tiempo y agitación, los “ingredientes” y… ¡una cebolla! 🤯
Sorprendido y sabiendo que la cebolla no cumplía ningún papel, preguntó a sus nuevos compañeros. Le explicaron que, aunque no sabían para qué servía la cebolla, “aquí las cosas siempre se han hecho así” y le pidieron que hiciese el favor de respetar las normas y procedimientos. Así que nada de quitar la cebolla.
Aquí las cosas siempre se han hecho así
Como no hubo forma de obtener una respuesta mejor, decidió contactar con el ingeniero que estuvo antes. Al hablar con él, le explicó que él también había heredado ese procedimiento, y aunque no sabía para qué servía la cebolla, jamás se atrevió a quitarla.
Siguió averiguando, hasta que logró dar con el primer ingeniero que trabajó con ese reactor, que llevaba ya años jubilado.
Cuando le explicó que le obligaban a tirar una cebolla dentro del reactor antes de empezar el proceso, soltó una carcajada.
“Eso lo hice yo un día, fue una ñapa cuando se me estropeó el termómetro del reactor. Lo hice para comprobar que la temperatura de los reactivos era correcta: si la cebolla empezaba a freírse, podía empezar. ¡No me puedo creer que esos idiotas lo sigan haciendo!”.
Desde entonces, siempre que oigo la frase lapidaria de “aquí siempre se han hecho las cosas así”, sé que nadie sabe lo que está haciendo ni el porqué: estoy ante una cebolla.
Linus y la cebolla de las 80 columnas
En un mensaje de la lista de correo del kernel de Linux, Linus ha despotricado contra esa cebolla en particular. En el 2022, cuando la inmensa mayoría de los programadores usan monitores de 30 pulgadas, ¿qué sentido tiene que sigamos programando como si estuviésemos escribiendo en hojas de papel del tamaño de un dólar del siglo XIX?
Por si fuera poco absurdo, ese límite tan pequeño llena tu código de saltos de línea, que además de dificultar la lectura, complica el uso de herramientas estándar como grep o awk, que están todas orientadas a líneas.
Recuerda que no usas una tarjeta perforada y relájate con lo de las columnas, que para algo te has comprado ese monitor gigante. Prueba también una fuente proporcional (¡creadas precisamente para mejorar la legibilidad!) y mira a ver si te gusta más o te facilita la vida.
Pasada la prueba, si aún lo prefieres, vuelve a como se hacían las cosas antes. Pero recuerda que te estás comiendo una cebolla como una olla.