← Últimos artículos
💻 computer science

Jas: AI-Paired Engineering as a Revival of N-Version Programming

Este artículo presenta un estudio de caso que demuestra que la ingeniería emparejada con IA, cuando se ancla en una especificación ejecutable precisa y se valida mediante implementaciones paralelas de N-versiones, permite que un solo desarrollador produzca cinco puertos de software distintos en aproximadamente 120 horas, reviviendo efectivamente la metodología de programación de N-versiones de la década de 1980, la cual resultaba prohibitiva en términos de costos.

Autores originales: Jason Hickey

Publicado 2026-06-09
📖 5 min de lectura🧠 Análisis profundo

Autores originales: Jason Hickey

Artículo original bajo licencia CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Esta es una explicación generada por IA del artículo a continuación. No ha sido escrita ni avalada por los autores. Para mayor precisión técnica, consulte el artículo original. Leer descargo de responsabilidad completo

Imagina que quieres construir cinco versiones diferentes de una aplicación de dibujo compleja y de alta gama (como un mini-Adobe Illustrator). En los viejos tiempos, esto sería como contratar a cinco arquitectos maestros diferentes, cada uno hablando un idioma distinto, para diseñar la misma casa. Tomaría años y costaría una fortuna.

Jason Hickey, un solo desarrollador, hizo algo diferente. Construyó cinco versiones funcionales de esta aplicación (para Rust, Swift, OCaml, Python y un navegador web) en solo siete semanas, trabajando únicamente por las noches. No contrató a un equipo; usó la IA como su compañera.

Aquí te explico cómo lo hizo, de forma sencilla:

1. El "Plano Maestro" (La Especificación Ejecutable)

Normalmente, cuando construyes software para diferentes plataformas, tienes que escribir las reglas de la aplicación desde cero cinco veces. Si quieres cambiar cómo funciona un selector de colores, tienes que actualizar cinco bases de código distintas.

Hickey hizo lo contrario. Escribió un único "Plano Maestro" (un documento de 23,000 líneas escrito en un lenguaje llamado YAML).

  • La Analogía: Piensa en este plano no como un PDF estático, sino como una receta viva. No dice simplemente "haz un botón rojo"; dice: "Aquí está exactamente cómo se ve el botón, cómo reacciona cuando haces clic en él y qué sucede después".
  • La Magia: Este plano es "ejecutable". La computadora lee esta única receta y construye automáticamente la interfaz de usuario para las cinco aplicaciones diferentes. Si Hickey quiere cambiar una regla, la cambia en un solo lugar, y esto actualiza instantáneamente las cinco aplicaciones.

2. El "Dragón de Cinco Cabezas" (Programación N-Versión)

En la década de 1980, los ingenieros intentaron un método llamado "Programación N-Versión". La idea era: "Si construimos cinco versiones diferentes de un sistema de forma independiente, y todas coinciden, entonces debe ser correcto. Si no coinciden, sabemos que algo anda mal".

  • El Problema: Era demasiado caro. Construir cinco equipos diferentes para escribir cinco versiones distintas del mismo código era un desperdicio de dinero.
  • El Giro de la IA: Hickey revivió esta idea usando la IA. Debido a que la IA puede realizar el trabajo pesado de escribir el código para los diferentes lenguajes, él pudo permitirse construir cinco versiones siendo una sola persona.
  • La Red de Seguridad: Estas cinco versiones actúan como un jurado de cinco personas. Si la versión de "Rust" hace que un color se vuelva rojo, pero la versión de "Python" lo hace azul, el sistema detecta inmediatamente un problema. Realizan una "prueba diferencial" entre sí. Si no coinciden, significa que el Plano Maestro no era claro o que una de las versiones cometió un error.

3. La "Escotilla de Escape"

El Plano Maestro cubre aproximadamente el 90% del trabajo. Pero a veces, una plataforma de computadora específica (como un iPhone o un navegador web) necesita un truco especial que el plano general no puede describir.

  • La Analogía: Imagina que el plano es el plano de una casa estándar. Pero la casa de "Rust" necesita un sótano especialmente reforzado porque el terreno es rocoso. El plano gestiona las paredes y el techo para todos, pero el equipo de "Rust" tiene que construir su propio sótano especial.
  • Hickey llama a esto la Escotilla de Escape. Es la pequeña cantidad de código personalizado necesario para cada plataforma específica, mientras que el resto es compartido.

4. Cómo funcionó el proceso (El Bucle)

Hickey no se limitó a escribir código y esperar. Utilizó un bucle específico:

  1. Diseño: Escribió un plan en lenguaje sencillo.
  2. Revisión de la IA: Le pidió a la IA que encontrara lagunas en el plan ("¿Qué falta? ¿Qué es confuso?").
  3. Actualización del Plano: Actualizó el Plano Maestro basándose en los consejos de la IA.
  4. Construcción y Prueba: La IA generó el código para las cinco aplicaciones.
  5. El "Ojo Humano" de Control: Esta fue la parte más lenta. Hickey observaba manualmente las cinco aplicaciones una al lado de la otra. Si una se veía extraña, sabía que el Plano necesitaba ser corregido.

El Resultado

  • Tiempo: ~120 horas de trabajo nocturno (unas 7 semanas).
  • Producción: Cinco aplicaciones totalmente funcionales que comparten una lógica central.
  • Costo: En lugar de "múltiples años de desarrollador", le tomó a una sola persona unos pocos meses.

La Captura (Limitaciones)

El artículo es honesto sobre lo que esto no hace:

  • No es un producto terminado: A las aplicaciones les faltan algunas funciones avanzadas que se encuentran en herramientas profesionales (como mallas 3D complejas o funciones de impresión profesional). Es un "subconjunto sustancial", no un clon perfecto.
  • Depende de la IA: Si la IA se confunde o tiene "alucinaciones" (inventa código falso), el sistema lo detecta porque las cinco versiones no coincidirán. Pero si la IA es mala en una tarea específica, todo el proceso se ralentiza.
  • Necesita a un humano: La IA hizo la escritura, pero un humano tuvo que revisar los resultados, corregir la lógica y gestionar la "memoria" del proyecto para que la IA no olvidara lo que había decidido el día anterior.

La Gran Conclusión

Este artículo argumenta que la IA ha cambiado la economía de la ingeniería de software.
Anteriormente, construir múltiples versiones de un software para garantizar la calidad era demasiado costoso. Ahora, con la IA encargándose de la codificación repetitiva, un solo desarrollador puede construir un "jurado" de cinco aplicaciones para que revisen el trabajo de las demás. Esto convierte un método que fue abandonado en la década de 1980 debido al costo en una herramienta práctica para una sola persona hoy en día.

¿Ahogado en artículos de tu campo?

Recibe resúmenes diarios de los artículos más novedosos que coincidan con tus palabras clave de investigación — con resúmenes técnicos, en tu idioma.

Probar Digest →