⚡ Tecnología
Microsoft lo mató en 2007… y un desarrollador acaba de resucitar FoxPro desde las cenizas
En 2007 Microsoft le clavó el ataúd a Visual FoxPro. Diecinueve años después, un desarrollador lo sacó del cementerio, le cambió el motor y lo está vendiendo como si nunca se hubiera ido. La historia está dando la vuelta a Hacker News con más de 130 puntos porque toca una fibra que todos sentimos: ese software viejo que nadie quiere tocar... porque tocarlo significa perder el negocio.
FoxPro fue durante los 90 el lenguaje de las pymes: facturas, inventarios, nóminas. Millones de sistemas en todo el mundo — incluyendo miles en Latinoamérica — corrieron sobre él durante décadas. Microsoft lo dejó morir en la versión 9, congelado en 32 bits, y la industria asumió que sus archivos DBF eran cosa de museo.
Falso. Enormes cantidades de esa infraestructura sigue viva, corriendo en máquinas viejas, porque reescribir una app de negocios de 20 años es la forma más rápida de quebrar. De ahí nace la idea detrás de FoxDev Studio y FoxScript.
🐴 El plan: no reescribir la app, reconstruir el runtime
Un desarrollador que responde al nombre de boredjohnny tenía un cliente con un problema clásico: un sistema que su familia administra desde hace dos décadas, funcionando perfecto en 32 bits, pero con un techo doloroso — las tablas de FoxPro no podían pasar de 2 GB. Las opciones "serias" eran migrar a otra plataforma o reescribir todo. Ambas significaban meses de trabajo y un riesgo enorme.
Él hizo la opción que nadie se atrevía, la más radical: reescribió el runtime completo de Visual FoxPro desde cero, en Rust, compilado a WebAssembly. El resultado es FoxScript, una máquina virtual que interpreta el mismo bytecode de los programas viejos, sin tocar una sola línea de código de la app.
¿Cómo garantiza que se comporte igual que el FoxPro original? Aquí está el detalle que vuelve loca a la comunidad: validaron el runtime contra el vfp9.exe real, uno a uno. De los 1,722 elementos de la referencia del lenguaje, comprobaron 1,534 comparando la respuesta del nuevo motor contra la del producto original. Solo 3 nombres simples "no los ha conocido todavía". Nada de aproximaciones: comportamiento medido, no adivinado.
💾 El resultado deja a Microsoft con la boca abierta
El runtime nuevo es de 64 bits de punta a punta: se acabó el límite absurdo de 2 GB en tablas. Pero no sacrificaron nada del mundo viejo:
- Las bibliotecas .fll de 32 bits siguen cargando, gracias a un proceso auxiliar de 32 bits que las aloja.
- Los archivos DBF, índices, memos y contenedores se leen y escriben en el mismo formato de siempre.
- Los formularios, informes, menús y clases abren directo, sin conversión ni exportación.
- Por si fuera poco, le añadieron lambdas, soporte JSON y hasta un servidor HTTP para conectarlo al mundo moderno.
En los comentarios del lanzamiento, la reacción fue inmediata: hay quien pregunta por qué meterse con WASM en un app de escritorio, hay quien discute si no era más fácil reescribir la app. La mejor respuesta la resumió un comentario: "ahora tu cliente tiene dos problemas en lugar de uno". A lo que otro contestó con la dosis de humor negro que el tema merece: "así puedes facturarle dos veces: una por hacerlo como quiere y otra por hacerlo bien cuando se dé cuenta".
🇲🇽 Por qué esto importa en Latinoamérica
Aquí está la parte que nos toca de cerca: Latinoamérica está llena de sistemas FoxPro en producción. Facturación, control de inventarios, sistemas contables de los 90 y 2000 que sobreviven porque funcionan y porque nadie se atreve a reemplazarlos. Consultorías enteras viven de darles mantenimiento.
Si este runtime cumple lo que promete, esos negocios consiguen algo que parecía imposible: modernizar la base sin migrar la app, sin reescribir, sin tocar el sistema nervioso de su operación. Es la opción "no te muevas y aun así avanza", y a las pymes les encanta esa frase.
Por supuesto, hay escepticismo legítimo: un runtime reconstruido por una persona difícilmente alcanza la madurez de décadas del original. Pero el proyecto ya juega en otra liga: verificado contra el propio producto, con números publicados y una comunidad de supervisores implacable.
La moraleja incómoda: cuando Microsoft entierra un producto, no significa que esté muerto. Significa que alguien lo va a revivir mejor.
¿Todavía hay algún sistema FoxPro dando guerra en tu trabajo o en el negocio de tu familia? Cuéntame 👇
Comparte esto con ese conocido que sigue defendiendo que su sistema viejo "está bien como está". Hoy tiene excusa.