OpenAI Codex escribió un juego completo para DOS al estilo Asteroids en lenguaje ensamblador x86 de 16 bits, entregando 18 archivos fuente y aproximadamente 2500 líneas de código sin una sola línea de ensamblador escrita por un humano. El experimento demuestra que una IA puede dirigir un ciclo de vida de software completo —desde la planificación hasta la depuración— sin la intervención directa de un programador, un paso más allá de las demostraciones habituales de "completado de código".

Por qué fue importante la prueba

La mayoría de las demostraciones públicas de codificación con IA se limitan a fragmentos diminutos o utilidades sencillas. Para explorar el límite superior, el experimento obligó a Codex a trabajar en el entorno más restringido imaginable: ensamblador x86 de 16 bits en DOS, sin motores de juego, librerías gráficas ni las comodidades de los lenguajes de alto nivel. El objetivo era ver si una IA podía no solo generar código, sino también gestionar las tareas de ingeniería circundantes.

Cómo se dividieron los roles

Las responsabilidades humanas se limitaron a tres acciones:

  • Definir el objetivo general del proyecto (un juego de disparos al estilo Asteroids).
  • Responder cualquier pregunta relacionada con la jugabilidad que surgiera.
  • Realizar pruebas de juego (play-test) en cada versión e informar de los errores observados.

Las responsabilidades de Codex cubrieron todo lo demás:

  • Redactar un plan de proyecto y la arquitectura.
  • Escribir los archivos fuente en ensamblador.
  • Depurar, refactorizar y reestructurar el código.
  • Mantener el repositorio Git, incluyendo los commits y la gestión de ramas.
  • Compilar el binario y ejecutarlo en un emulador de DOS.

El humano nunca escribió una sola instrucción de ensamblador, nunca invocó un compilador y nunca lanzó el juego durante el desarrollo. La interacción se limitó a describir los síntomas de los errores; la IA localizó y solucionó la causa raíz por sí misma.

El flujo de trabajo iterativo

Cada ciclo comenzaba con Codex proponiendo un hito (por ejemplo, "implementar el movimiento de la nave del jugador"). Luego producía los archivos fuente correspondientes, realizaba los commits, compilaba el ejecutable y entregaba la versión ejecutable al evaluador. Codex analizaba el síntoma, lo rastreaba a través de la base de código y emitía un parche sin más orientación humana.

Qué contiene el producto final

  • 18 archivos fuente en ensamblador, organizados en una estructura de repositorio convencional.
  • ≈2500 líneas de ensamblador, que cubren el manejo de entradas, el dibujo de sprites, la detección de colisiones y un sistema de puntuación máxima.
  • Un ejecutable de DOS jugable que se ejecuta en un entorno DOS estándar y emula la jugabilidad clásica de Asteroids.
  • Cero líneas de ensamblador escritas por humanos, lo que confirma que la IA gestionó todas las tareas de programación de bajo nivel.

Riesgos e implicaciones

Si una IA puede dirigir de forma autónoma un proyecto desde su concepción hasta un binario funcional, el papel tradicional del programador como principal orquestador de una base de código cambia. Las empresas podrían reducir el tiempo dedicado a la configuración de código repetitivo (boilerplate), la documentación y la depuración rutinaria, liberando a los ingenieros para que se concentren en el diseño y la estrategia del producto.

El experimento también resalta los límites. El entorno de prueba fue deliberadamente estrecho: un juego de DOS para un solo jugador con mecánicas bien conocidas. Escalar este enfoque a sistemas grandes y multimodulares con dependencias externas, restricciones de seguridad o rutas de código críticas para el rendimiento sigue sin estar demostrado. Además, el evaluador humano siguió actuando como el filtro de calidad final; un error de lógica no detectado podría haber pasado inadvertido sin esa supervisión.

Contraargumentos y preguntas abiertas

  • Fiabilidad: La programación en ensamblador es implacable; un solo error de desfase por uno (off-by-one error) puede hacer que todo el programa falle. Codex solucionó los errores que vio, pero podría pasar por alto problemas sutiles de temporización que solo aparecen en pruebas de estrés.
  • Mantenibilidad: El código generado sin directrices de estilo humano puede ser más difícil de leer o ampliar para futuros desarrolladores, especialmente si las convenciones de nomenclatura de la IA difieren de los estándares del equipo.
  • Propiedad intelectual: ¿Quién es el dueño del código cuando lo escribe una IA? Los marcos de licencias actuales asumen la autoría humana, lo que deja un área gris para los artefactos producidos por IA.

Qué observar a continuación

  • Benchmarks más amplios: Aplicar el mismo flujo de trabajo autónomo a aplicaciones de red, aplicaciones móviles o proyectos modernos en C/C++ pondrá a prueba si el enfoque escala más allá de los juegos de estilo retro.
  • Integración de herramientas: Integrar Codex en los pipelines de CI/CD podría automatizar no solo la generación de código, sino también las pruebas, el escaneo de seguridad y el despliegue.
  • Evolución de políticas: A medida que el código generado por IA se prolifere, las políticas legales y corporativas deberán abordar la propiedad, la responsabilidad y el cumplimiento.

La conclusión es clara: la IA ya puede actuar como un ingeniero de software independiente en proyectos bien definidos y acotados, entregando código funcional de bajo nivel sin necesidad de codificación manual humana. El hecho de que esta capacidad transforme el desarrollo convencional dependerá de la rapidez con la que el ecosistema logre abordar cuestiones de fiabilidad, mantenibilidad y aspectos legales.