Por amor al código Code snippets y reflexiones sobre tecnología

“En cuanto funciona, ya no es IA” o “IA es todo aquello que aún no pueden hacer los ordenadores” Es el problema eterno del campo de la inteligencia artificial: todos los avances se integran rápidamente en los sistemas informáticos y la gente se “acostumbra” y los menosprecia tan pronto como se hacen habituales. Pasó con los sistemas expertos y el ML, pasó con el ajedrez, el go, la predicción metereológica, los modelos físicos, los sistemas de recomendación, la visión por computador, la traducción y un largo etcétera.

Y ya empezamos a verlo con la GenAI: artistas que dicen que es una máquina de plagiar, escritores que lo usan rutinariamente como un corrector ortográfico (también fueron IA en su momento) Y programadores que empezamos a decir que escribir el código es lo fácil, lo difícil es todo lo demás.

Si hace dos años le hubieras dicho a un programador que escribir el código era fácil se hubiera reído de tí, como mínimo. Habría hablado de la complejidad de los lenguajes, de que el “demonio está en los detalles” y que hay que conocer las librerías y paquetes disponibles y saber usarlos y saber escribir tests, y conocer el funcionamiento interno del intérprete o el compilador de turno y otro largo etcétera. Pero resulta que ahora las máquinas escriben código, así que no era tan difícil.

De repente lo importante es tener visión de producto, priorizar, construir con intención, diseñar el crecimiento del código, hacer el desarrollo escalable y simple y entendible para que no se vuelva inmanejable después de unos cuantos días de “vibe coding”.

Bienvenido sea, los que llevamos un tiempo diciendo estas cosas vemos la oportunidad para meter la cuña una vez más y hablar de “product engineering”. Pero es curiosa esta maldición tan particular de la IA que hace que cualquier avance se deprecie en meses.

Veamos las cosas con perspectiva, estos modelos aún están en desarrollo y mejorando con cada iteración. Cada nuevo modelo es más “inteligente”, es capaz de realizar tareas más complejas y más largas, y ya son capaces de trabajar con herramientas e incluso con otros modelos. Aún nos quedan años de integrarlos en todos los procesos, y no son exactamente como una persona a la que puedes dar un puesto de trabajo y un ordenador. Necesitan un on-boarding muy específico que requiere de ingeniería, de documentación, de un rigor al que a veces no estamos acostumbrados.

Pero no perdamos de vista que son sistemas capaces de trabajar en problemas abiertos, de encontrar soluciones por sí mismos una vez le planteas el problema, de comprobarlas y corregir sus errores, de entender el contexto y tus instrucciones. No son una librería o un framework más. Hay cierta inteligencia ahí. Aunque no sea como la nuestra. Y estamos solo empezando a ver de qué es capaz. No creo que sea momento aún de descartarlos como “otra herramienta más”.