Artesanía en la era del silicio: lo que Donald Knuth todavía tiene que decirnos sobre la IA

A veces, en el silencio de un aula de informática o frente a la pantalla en una noche de depuración eterna, tengo la sensación de que estamos olvidando algo fundamental. No hablo de una biblioteca de Python que se queda obsoleta o de un comando de Git que se nos resiste. Hablo de algo más profundo, algo que tiene que ver con la mirada.

Hace poco, releyendo las actas de la ACM de 1974, me topé con un discurso que me sacudió con una fuerza inusitada. Era la voz de Donald Knuth, aceptando el Premio Turing, recordándonos que programar computadores es, por encima de todo, un arte.

Donald Knuth en 2011
Foto por Alex Handy – Flickr: DSC_0098, CC BY-SA 2.0

Hoy, cuando herramientas como Claude Code, GPT Codex o Gemini son capaces de escupir cientos de líneas de código en menos de lo que tardamos en parpadear, las palabras de Knuth no solo cobran vigencia, sino que se convierten en un refugio necesario. En un momento donde la productividad parece medirse únicamente en volumen y velocidad, conviene pararse a respirar y preguntarnos: ¿dónde ha quedado la artesanía?

El hombre que midió el pensamiento

Para entender el peso de esta reflexión, primero debemos situar al gigante.

Donald Knuth no es solo un nombre en una bibliografía; es, para muchos de nosotros, el arquitecto de los cimientos sobre los que caminamos. Si hoy podemos decir que un algoritmo es “mejor” que otro con rigor matemático, es en gran medida gracias a él.

Su obra monumental, The Art of Computer Programming, comenzó a gestarse en los años 60 y todavía hoy sigue creciendo, como una catedral que nunca termina de construirse

Knuth elevó la algorítmica de una práctica artesanal basada en el ensayo y error a una disciplina científica robusta. Introdujo la notación O grande para que pudiéramos hablar el mismo lenguaje al medir la eficiencia, y nos regaló TeX porque no soportaba que sus libros se imprimieran con una tipografía que no estuviera a la altura de la belleza de las matemáticas que contenían.

Esa obsesión por el detalle, por la perfección no solo funcional sino estética, es lo que define su legado. Pero, a pesar de todo ese rigor, Knuth tomó una decisión semántica que todavía hoy nos hace reflexionar: tituló su obra «El arte de programar».

No la “ciencia”, no la “ingeniería”. El arte.

El discurso de 1974: una revelación estética

En su discurso de recepción del Premio Turing, titulado «Computer Programming as an Art», Knuth desgranó una filosofía que hoy nos suena a pura vanguardia humanista.

Para él, la distinción entre ciencia y arte es clara pero dinámica: la ciencia es aquello que entendemos tan bien que podemos explicárselo a una máquina; el arte es todo lo demás, aquello que hacemos como seres humanos.

Como quien no quiere la cosa, Knuth nos hablaba de la elegancia.

Sostenía que un programa hermoso es aquel donde la estructura es clara, donde no sobran piezas, donde el autor ha puesto un empeño genuino en que otro ser humano —no solo un procesador, ahora un agente— pueda entenderlo y disfrutarlo. «El programador que se percibe a sí mismo como un autor», decía, «busca que su obra sea una delicia para los ojos y la mente».

Esta visión es profundamente conmovedora porque nos devuelve el protagonismo.

No somos meros traductores de lógica; somos creadores de sentido. Programar, en la visión de Knuth, se parece más a escribir una novela o componer una sinfonía que a ensamblar piezas en una cadena de montaje .

Sin embargo, cincuenta años después, esa cadena de montaje parece haber vuelto con una fuerza renovada bajo el paradigma de la inteligencia artificial.

La IA y la productividad mal entendida

Estamos viviendo en directo un cambio de paradigma sin precedentes. La llegada de modelos generativos de última generación ha transformado el acto de programar en algo que, a veces, se siente extrañamente ajeno. Con Claude Code o Gemini a nuestro lado, la barrera de entrada ha caído y la velocidad se ha multiplicado.

Pero cuidado: hay una trampa en esta aceleración.

Existe hoy una productividad mal entendida que se confunde con la simple generación de código. Si le pido a una IA que resuelva un problema y esta me devuelve con velocidad sobrehumana mil líneas que funcionan pero que no comprendo, ¿soy más productivo?

En el corto plazo, quizás sí. Después de todo, he entregado el ticket, he cerrado la tarea. Pero en el largo plazo, he generado una deuda que no es solo técnica, sino intelectual.

Cuando delegamos el pensamiento en la máquina sin pasar por el filtro de nuestra propia intención, estamos renunciando a la artesanía. Nos estamos convirtiendo en consumidores de soluciones en lugar de creadores de las mismas. La IA es capaz de darnos el qué con una eficiencia asombrosa, pero a menudo es incapaz de darnos el porqué con la elegancia que Knuth reclamaba.

El resultado suele ser un código funcional, sí, pero carente de alma, un código que nadie querría leer por placer.

Reivindicar al artesano en la era de la IA

¿Significa esto que debemos dar la espalda a la IA por purismo?

En absoluto. Creo que sería tan absurdo como que un arquitecto renunciara al CAD para volver al tiralíneas por una cuestión de romanticismo. La clave, pienso, está en cómo integramos estas herramientas sin perder nuestra esencia de autores.

Si aceptamos que la IA es nuestro nuevo pincel, la artesanía moderna debe comenzar mucho antes de que aparezca la primera línea de código, situándose de lleno en el terreno del lenguaje natural.

El prompt deja de ser una orden mecánica para convertirse en un acto narrativo: si no somos capaces de explicar con palabras claras, elegantes y precisas qué queremos conseguir, la IA nos devolverá un parche funcional pero carente de visión. Narrar la solución es, en realidad, el primer paso para entenderla profundamente.

En este nuevo flujo de trabajo, nuestra labor se desplaza hacia la revisión y la crítica. Ya no necesitamos a la IA solo para que escriba, sino para que nos ayude a auditar nuestra propia elegancia. Podemos interrogar al modelo no solo sobre la corrección, sino sobre la estética: buscar dónde sobra código, dónde la estructura se vuelve oscura o cómo podríamos simplificar una lógica para que sea más bella. Es ahí donde el programador ejerce su juicio artístico, utilizando la potencia de la máquina para pulir su propia intención.

Finalmente, debemos entender que en un mundo donde el código se ha vuelto un bien barato y abundante, una commodity, como dicen por ahí, la verdadera riqueza reside en la explicación. El valor real ya no está en la función que se ejecuta en el sistema nervioso digital de un dispositivo, sino en la documentación viva que la rodea.

Nuestra misión como creadores es dotar de sentido a cada decisión técnica, construyendo el relato que conecta las piezas. La IA puede generar la lógica, pero solo nosotros podemos escribir la historia que explica por qué esa solución es la correcta para este problema humano concreto.

No obstante, digo todo esto reconociendo a la vez que, quizás, estos postulados que a menudo defiendo tan fieramente —esta búsqueda casi obsesiva de la belleza y la artesanía en el código— no son más que los ecos de un mundo que ya no existe.

Es posible que esté escribiendo desde una orilla que el río de la masiva productividad sintética ya haya dejado atrás. Y sin embargo, me resisto a abandonar esa orilla; no por nostalgia ciega, sino porque estoy convencido de que lo que allí aprendimos es lo que nos mantiene humanos frente a la máquina.

Un camino con corazón

En los centros de FP, en las facultades donde enseñamos informática, en los equipos de desarrollo, tenemos una responsabilidad enorme. No podemos permitir que la próxima generación de ingenieros de software vea el código como una simple commodity que se genera pulsando un botón. En mi opinión, debemos enseñarles a perseguir vehementemente esa hermosura descomunal de la que hablaba Knuth.

Debemos recordarles que, aunque la máquina sea capaz de calcular billones de operaciones por segundo, el estremecimiento ante una solución elegante es un privilegio exclusivamente humano.

Programar con corazón significa entender que lo que construimos tiene un impacto, que nuestras estructuras de datos son el reflejo de cómo entendemos el mundo y que, al final, escribimos para otros seres humanos.

En la era de los modelos generativos, lo que nos hace insustituibles no es la capacidad de generar sintaxis, sino la capacidad de dotar a esa sintaxis de propósito, ética y belleza para que sirva a los demás.

Knuth nos enseñó que la informática es una ciencia humana. La IA, por muy potente que sea, no es más que una extensión de nuestra capacidad de soñar sistemas. No dejemos que la prisa nos robe el placer de la artesanía. Sigamos aspirando a que nuestro código sea, además de útil, hermoso.

Porque en esa belleza reside, en última instancia, nuestra dignidad como creadores.

Al final, como sucede con las grandes historias o los mejores videojuegos (por favor, siempre con modo historia memorable), lo que recordamos no es la rapidez con la que llegamos al final, sino la huella que el viaje dejó en nosotros. Que la IA nos ayude a viajar más lejos, pero que nunca nos quite el placer de sentir cada paso del camino.

Leave a Comment

Scroll to Top