El Efecto 2000 vuelve a dar la cara
Se acaban de cumplir 20 años del que se bautizó como 'Efecto 2000' y que, con el cambio de siglo, en la década de los 90 vaticinaba un alud de errores informáticos. La incidencia consistía en que, dado que los ordenadores registraban las fechas apoyándose en las dos últimas cifras (1999 sería 99), 2000 sería registrado como 00 y, por tanto, nos remontaría al año 1900 en lugar de a 2000. Aquella Nochevieja de tránsito de 1999 a 2000 muchos responsables de Tecnologías de la Información (TI) se comieron las uvas en sus puestos de trabajo temiéndose lo peor.
Se invirtieron muchos millones de euros entonces en consultorías y nuevos desarrollos para evitar profecías catastrofistas que hablaban de la caída del sistema bancario, incidentes en centrales nucleares, caos aeroportuario o colapso de la Bolsa. Nada de aquello ocurrió; parecía que los deberes se hubieran hecho correctamente corrigiendo esta incidencia. Sin embargo, ¿y si no se hubieran hecho tan bien los deberes?
Parquímetros, cajas registradoras o videojuegos han comenzado a evidenciar que, efectivamente, no todo se hizo bien hace veinte años. Las dos opciones que tenían los programadores consistían en reescribir todo el código o, en su lugar, parchearlo para que el software identificara que todas las fechas de 00 a 20 se correspondían con 2000 y no con 1900. Adivinen qué opción, más rápida y económica, se adoptó en cerca del 80% de los sistemas informáticos. Sí, el parche.
¿Por qué sólo se cubrió el periodo 2000-2020? Fue un ejercicio de ley del mínimo esfuerzo, confiados en que en dos décadas aquellos sistemas informáticos estarían absolutamente desfasados, habiendo sido reemplazados. A fin de cuentas, los sistemas afectados ejecutan software creado en los 70. No ha sido así y el llamado en jerga informática “sistemas heredados” están a la orden del día. Si reciben facturas que les llevan hasta 1920 o algunos sistemas no aceptan sus tarjetas de crédito no se sorprendan: están siendo víctimas de la chapuza que se realizó para resolver el Efecto 2000.
Como se pueden imaginar, la opacidad de las empresas al respecto es absoluta; ninguna quiere reconocer la chapuza... hasta que ésta da la cara. Ya lo ha hecho en decenas de miles de parquímetros en Nueva York, en algunos videojuegos o en software empresarial. El reto ahora es volver a sumergirse en lenguajes de programación como COBOL dentro de aplicaciones informáticas que, en el caso de muchas organizaciones, ni están correctamente documentadas ni cuentan ya con las personas que las desarrollaron. La mayor parte de ellas o han muerto o se han jubilado.
Cuando arreglen esta chapuza, aún quedará otra amenaza en 2038. Los sistemas almacenan la fecha en formato UNIX (sistema operativo creado en los años 70 que está muy extendido en los sistemas empresariales), esto es, como si se tratara de segundos. Este ‘tiempo UNIX’ comenzó a el 1 de enero de 1970 a las 00:00 horas y se almacenó como un entero de 32 bits. Esta circunstancia podría provocar un desbordamiento número a las 3:14 horas de la madrugada del 19 de enero de 2038, agotando ya el número entero de 32 bits al alcanzar 2.147.483.647.
Se invirtieron muchos millones de euros entonces en consultorías y nuevos desarrollos para evitar profecías catastrofistas que hablaban de la caída del sistema bancario, incidentes en centrales nucleares, caos aeroportuario o colapso de la Bolsa. Nada de aquello ocurrió; parecía que los deberes se hubieran hecho correctamente corrigiendo esta incidencia. Sin embargo, ¿y si no se hubieran hecho tan bien los deberes?
Parquímetros, cajas registradoras o videojuegos han comenzado a evidenciar que, efectivamente, no todo se hizo bien hace veinte años. Las dos opciones que tenían los programadores consistían en reescribir todo el código o, en su lugar, parchearlo para que el software identificara que todas las fechas de 00 a 20 se correspondían con 2000 y no con 1900. Adivinen qué opción, más rápida y económica, se adoptó en cerca del 80% de los sistemas informáticos. Sí, el parche.
¿Por qué sólo se cubrió el periodo 2000-2020? Fue un ejercicio de ley del mínimo esfuerzo, confiados en que en dos décadas aquellos sistemas informáticos estarían absolutamente desfasados, habiendo sido reemplazados. A fin de cuentas, los sistemas afectados ejecutan software creado en los 70. No ha sido así y el llamado en jerga informática “sistemas heredados” están a la orden del día. Si reciben facturas que les llevan hasta 1920 o algunos sistemas no aceptan sus tarjetas de crédito no se sorprendan: están siendo víctimas de la chapuza que se realizó para resolver el Efecto 2000.
Como se pueden imaginar, la opacidad de las empresas al respecto es absoluta; ninguna quiere reconocer la chapuza... hasta que ésta da la cara. Ya lo ha hecho en decenas de miles de parquímetros en Nueva York, en algunos videojuegos o en software empresarial. El reto ahora es volver a sumergirse en lenguajes de programación como COBOL dentro de aplicaciones informáticas que, en el caso de muchas organizaciones, ni están correctamente documentadas ni cuentan ya con las personas que las desarrollaron. La mayor parte de ellas o han muerto o se han jubilado.
Cuando arreglen esta chapuza, aún quedará otra amenaza en 2038. Los sistemas almacenan la fecha en formato UNIX (sistema operativo creado en los años 70 que está muy extendido en los sistemas empresariales), esto es, como si se tratara de segundos. Este ‘tiempo UNIX’ comenzó a el 1 de enero de 1970 a las 00:00 horas y se almacenó como un entero de 32 bits. Esta circunstancia podría provocar un desbordamiento número a las 3:14 horas de la madrugada del 19 de enero de 2038, agotando ya el número entero de 32 bits al alcanzar 2.147.483.647.
Sin comentarios