Rezan los programadores todas las noches antes de acostarse, especialmente cuando se han olvidado de hacer un git push y un backup. Ahora bien, ¿de dónde vienen esas 80 columnas?
¿Por qué demonios, en pleno siglo XXI, seguimos usando fuentes monoespaciadas para que el texto encaje perfectamente en 80 columnas? ¿A quién porras le importa? ¿Y por qué 80 y no 102 o 76?
Si abres un terminal en cualquier sistema operativo, te salen 80 columnas. Si abres un IDE, ya sea antiguo o moderno, verás que está configurado para 80 columnas. Si llamas a un formateador automático de código, lo primero que hará será encajar tu código en 80 columnas. ¿De dónde viene esa extraña obsesión?
Los primeros ordenadores personales
Los más antiguos del lugar lo recordamos perfectamente: de los primeros ordenadores personales, allá por los 80. Todos tenían interfaces de modo texto a 80 columnas.
La única excepción eran las máquinas para jugadores, que curiosamente, por aquel entonces, eran las menos potentes. Por ejemplo, el querido y archifamoso ZX Spectrum tenía una resolución de 32 columnas. Claramente era para aficionados, los profesionales usaban 80 columnas.
Pero ¿de dónde sacaron los “profesionales” esa manía de las 80 columnas?
Los terminales tontos de los 60 y 70
Lo sacaron del estándar marcado en los 60 y 70 por los terminales tontos; el más famoso de todos ellos era el IBM 3270.
En terminología moderna, eran un browser por hardware con un teclado incorporado. Simplemente se limitaba a conectarse con un mainframe “en la nube”, que le mandaba páginas de texto que componían una pantalla. Si escribías algo, eso era enviado al mainframe, que devolvía otra página de texto completa. Si esto te suena familiar es porque se trataba de una web y un HTTP de la edad de la piedra.
Como la conexión era cara y escasa, había que reducir el peso de cada página y, por eso, se limitaba a un ancho de 80 columnas.
¡Explicado! Sin embargo, ¿por qué elegir 80 columnas y no 64 o 71?
Big Blue vuelve a ser la respuesta
Se eligieron las 80 columnas para que la pantalla coincidiese con el medio de almacenamiento, entrada y salida de datos más común de la época: la tarjeta perforada.
Se trataba de tarjetas de cartulina de dimensiones estandarizadas que se perforaban en una matriz para representar datos o código (habitualmente en FORTRAN o COBOL).
Sin embargo, las tarjetas perforadas son muy anteriores a los lenguajes de programación e, incluso, a los ordenadores.
La tarjeta de 80 columnas la lanzó al mercado IBM en 1928 y las demás empresas lo copiaron.
¿Por qué una tarjeta perforada de 80 columnas?
Porque ese era el máximo de agujeros que se podían perforar y leer con la tecnología (mecánica) de la época. Ochenta columnas era el máximo ancho de banda permitido por aquel entonces dentro de una tarjeta de esas dimensiones.
¿Por qué no cambiar las dimensiones de la tarjeta?
Porque tenían que ser compatibles con la tecnología anterior: las tarjetas perforadas de 45 columnas, usadas en el tabulador automático de Hollerith y comercializadas por la Hollerith`s Tabulating Machine Company, el antepasado de IBM.
Estamos ya en 1890.
Cuando Hollerith empezó a vender sus máquinas tabuladoras (ordenadores electromecánicos de finales del siglo XIX), decidió un tamaño estándar para las tarjetas perforadas, lo que terminó determinando el estándar de las 80 columnas.
¿Por qué ese tamaño? La razón está en que los primeros y principales clientes de Hollerith eran bancos, y lo que los bancos más manejaban eran billetes. Por lo tanto, tenían muchos cajones y cajas del tamaño exacto de los billetes de dólares de la época (algo mayores que ahora). Para aprovechar esas cajas, Hollerith decidió que sus tarjetas perforadas tendrían las mismas dimensiones que esos billetes antiguos.
¡Y por eso escribes en 80 columnas!
Seguramente, dentro de doscientos años, alguien estará explicando cómo alguna tecnología ubicua del futuro se debe al tamaño de las estanterías Billy de una antigua y desaparecida empresa llamada Ikea.