Hace unos días vi en un grupo técnico a alguien quejándose de que ahora la IA escribe código de forma tan potente, que con abrir Copilot o Cursor, el código fluye como agua del grifo, ¿cómo es posible que todavía haya programadores veteranos consultando la tabla ASCII? ¿Acaso eso no es algo de la era antigua? El grupo explotó de inmediato con un montón de gente, algunos asintiendo, y otro colega respondió con calma: "Ya lo entenderás cuando hagas debug a las tres de la mañana."
La verdad, la tabla ASCII parece realmente insignificante. Una tabla, 128 caracteres, del 0 al 127, cada número corresponde a un carácter. Escribes un espacio y es 32, un salto de línea es 10, la A mayúscula es 65, la a minúscula es 97. Solo eso, probablemente hasta en la clase de informática de primaria lo enseñaron. Pero el problema es que, cuando realmente estás trabajando, es mucho más importante de lo que crees.
La IA escribe código muy bien, le pides que genere un algoritmo de ordenación y te lo escribe en un segundo, con comentarios incluidos. Le pides que escriba una API REST y hasta te añade el manejo de errores. Pero la IA tiene un defecto: a veces "inventa". Sobre todo al manejar codificaciones de caracteres, puede generarte un fragmento de código que parece correcto, que al ejecutarse no da error, pero el resultado es incorrecto. Por ejemplo, le pides que procese un archivo de texto, y hace coincidir el salto de línea como \n, cuando en realidad el archivo tiene \r\n. Este código funciona perfectamente en Linux, pero en cuanto llega a Windows empiezan los problemas. ¿Qué haces entonces? Consultar la tabla ASCII. 13 es retorno de carro, 10 es salto de línea. Ves esa secuencia 0D 0A en el editor hexadecimal y de inmediato entiendes dónde está el problema.
Hay casos aún más ocultos. Por ejemplo, cuando depuras un sistema antiguo, en el JSON que devuelve la interfaz hay un campo que a simple vista parece vacío, pero el programa determina que no lo está. Lo imprimes y ves que contiene un \u00A0, eso se llama espacio de no separación, el que corresponde al 160 en la tabla ASCII. A simple vista no lo puedes ver, pero la lógica del código está bloqueada por él. Entonces sacas la tabla ASCII y consultas: ah, 160, no 32. Cambias la condición de comparación y el problema se resuelve. Si dependieras solo de la IA, quizás te daría mil vueltas y al final tendrías que consultar la tabla tú mismo.
Que los programadores veteranos consulten la tabla ASCII no significa que no sepan usar la IA, sino que saben que hay cosas en las que la IA no es confiable. La IA es buena en reconocimiento de patrones y generación de código, pero su dominio de los detalles de bajo nivel a veces no es tan sólido como una simple tabla. La tabla ASCII es como la tabla de multiplicar de los programadores: parece simple, pero en momentos críticos puede salvarte. Cuando lleves mucho tiempo escribiendo código descubrirás que muchos problemas extraños al final se reducen a la codificación de caracteres. Caracteres corruptos, truncamientos, comparaciones fallidas, expresiones regulares que no coinciden, en el noventa por ciento de los casos tienen que ver con ASCII.
Además, consultar la tabla tampoco cuesta nada. Abres el navegador, buscas "consulta tabla ASCII" y es cuestión de un segundo. O simplemente memorizas algunos de uso común: 32 espacio, del 48 al 57 son los dígitos del 0 al 9, del 65 al 90 son letras mayúsculas, del 97 al 122 son letras minúsculas. Con memorizar esto, cuando veas datos hexadecimales normalmente, tendrás una base sólida. Los programadores veteranos no rechazan las nuevas herramientas, solo saben que hay fundamentos que no se pueden perder. Por muy potente que sea la IA, solo es una herramienta; quien realmente toma decisiones sigue siendo la persona. Si ni siquiera tienes clara la codificación de caracteres, ¿te atreverías a llevar directamente a producción el código que te genere la IA?
Así que no te rías de los programadores veteranos por consultar la tabla ASCII. Lo que consultan no es una tabla, es experiencia, es confianza. Cuando algún día un \r o un \u00A0 oculto te haga dudar de la vida, también abrirás esa tabla en silencio.