23/4/25

¿La IA no sabe depurar código? La sorprendente verdad sobre los chatbots programadores

¿La IA no sabe depurar código? La sorprendente verdad sobre los chatbots programadores

¿Alguna vez has soñado con que una IA escriba todo tu código mientras tú te tomas un café? 🤖 Pues parece que tendrás que seguir programando por un tiempo más. Resulta que nuestros amigos digitales no son tan buenos depurando como nos gustaría creer.

Microsoft Research acaba de lanzar un jarro de agua fría sobre quienes afirman que la IA está a meses de sustituir a los programadores humanos. Y es que han descubierto algo que muchos sospechábamos: los modelos de inteligencia artificial son bastante malos a la hora de detectar y corregir errores en el código.

¿Sabes qué ocupa la mayor parte del tiempo de un desarrollador? Exacto, la depuración. Y ahí es donde la IA está tropezando con sus propios cables.

Los investigadores de Microsoft han creado una herramienta llamada debug-gym (disponible en GitHub) para poner a prueba cómo los modelos de IA se enfrentan a la tarea de depurar software. El concepto es interesante: permitir que la IA acceda a herramientas de depuración similares a las que usamos los humanos, como establecer puntos de interrupción, navegar por el código o imprimir valores de variables.

¿Y cuál fue el resultado? Pues incluso las IAs con acceso a estas herramientas apenas lograron un 48,4% de éxito en sus tareas de depuración. Vamos, que suspenden el examen por los pelos. ¿Te imaginas contratar a un programador que solo arregla correctamente la mitad de los bugs? 😅

¿Por qué la IA no da la talla con la depuración?

Los modelos actuales tienen dos grandes problemas:

  1. No comprenden completamente cómo utilizar las herramientas de depuración de manera efectiva
  2. Sus datos de entrenamiento no están adaptados a este tipo de tareas secuenciales
  3. Les falta experiencia en la toma de decisiones durante el proceso de depuración

Como explican los propios investigadores: "Creemos que esto se debe a la escasez de datos que representen comportamientos de toma de decisiones secuenciales (por ejemplo, trazas de depuración) en el corpus de entrenamiento actual de los LLM".

El futuro de la programación asistida por IA

A pesar de estos resultados poco alentadores, Microsoft no tira la toalla. Su próximo paso será "afinar un modelo especializado en buscar información que pueda recopilar los datos necesarios para resolver errores". Suena bien en teoría, pero el camino es largo.

No es la primera vez que vemos resultados que desinflan las expectativas sobre la IA en la programación. Numerosos estudios han demostrado que aunque las herramientas de IA pueden crear aplicaciones que parecen funcionar, suelen producir código lleno de errores y vulnerabilidades de seguridad. Y lo peor: generalmente son incapaces de arreglar esos mismos problemas que crean.

¿Significa esto que GitHub Copilot y similares son inútiles? Para nada. Estas herramientas pueden ahorrarnos mucho tiempo en tareas rutinarias, sugerir soluciones y ayudarnos a explorar alternativas. Pero el consenso entre investigadores es claro: el mejor escenario es un asistente de IA que ahorre tiempo al desarrollador humano, no uno que lo reemplace por completo.

Así que, querido lector, si eres programador, puedes respirar tranquilo (por ahora). Tu trabajo está a salvo, al menos en lo que respecta a la parte de depuración. Y si estás aprendiendo a programar, no te saltes las lecciones sobre debugging pensando que la IA lo resolverá todo. 🎯

La colaboración humano-máquina parece ser el camino más prometedor. Imagina un escenario donde la IA genera código rápidamente, propone soluciones creativas y automatiza tareas repetitivas, mientras tú te encargas de depurar, optimizar y garantizar que todo funcione correctamente. Es como tener un compañero de programación incansable pero que necesita supervisión.

Consideremos las cifras: si el mejor agente de IA apenas logra un 48,4% de éxito en tareas de depuración (y eso con acceso a herramientas especializadas), queda un largo trecho hasta llegar al nivel de un desarrollador humano experimentado. La tecnología avanza rápido, pero no tanto como algunos gurús tecnológicos nos quieren hacer creer. 🧠

Como observó Samuel Axon en su artículo original para Ars Technica, la mayoría de los investigadores coinciden en que el mejor resultado será un agente que ahorre una cantidad sustancial de tiempo al desarrollador humano, no uno que pueda hacer todo lo que ellos hacen.

Así que la próxima vez que escuches a alguien declarar que "la IA reemplazará al 90% de los programadores en seis meses", ya tienes datos para contraargumentar. Y mientras tanto, sigue practicando tus habilidades de depuración. Por lo visto, seguirán siendo muy valiosas durante bastante tiempo.