FoxPro sigue vivo décadas después: el software empresarial que Microsoft dejó atrás

Visual FoxPro lleva más de una década sin soporte oficial de Microsoft, y sin embargo hay empresas que todavía llevan su facturación, su inventario, sus pedidos o su contabilidad con aplicaciones construidas sobre esta plataforma. Suena raro hasta que conoces su historia. FoxPro fue una herramienta muy sólida para montar aplicaciones de gestión basadas en bases de datos, y con los años esos sistemas acumularon algo mucho más difícil de migrar que sus archivos DBF: las reglas de negocio de miles de organizaciones.

La historia de FoxPro en 30 segundos

  • Fox Software convirtió FoxBASE y después FoxPro en uno de los grandes rivales de dBASE durante los años 80 y principios de los 90.
  • Rushmore usaba índices para acelerar ciertas consultas y ayudó a que FoxPro se ganara fama de rápido.
  • Microsoft anunció la compra de Fox Software en marzo de 1992, una operación valorada entonces en unos 173 millones de dólares.
  • Visual FoxPro 9 fue la última versión importante, y el soporte extendido terminó en enero de 2015.
  • Muchas de estas aplicaciones han sobrevivido porque migrarlas implica reconstruir código, datos y décadas de reglas de negocio.

La historia también desmonta una explicación muy repetida: Microsoft no compró FoxPro en 1992 para cerrarlo al día siguiente. Tras la operación siguió desarrollándolo, lo llevó más a fondo a Windows y sacó varias generaciones de Visual FoxPro. El problema real llegó bastante después, cuando la estrategia de desarrollo de Microsoft empezó a girar cada vez más en torno a .NET, Visual Studio y SQL Server.

Y ahí aparece una situación que cualquier administrador de sistemas conoce bien: un producto puede quedarse sin futuro comercial mucho antes de que las aplicaciones montadas con él dejen de ser útiles.

De competir con dBASE a construir aplicaciones empresariales completas

Para entender FoxPro hay que remontarse a una época muy distinta de la informática de gestión.

En los años 80, montar una aplicación de gestión no exigía necesariamente un servidor SQL aparte, una API, un backend y un frontend. La base de datos podía vivir directamente en archivos guardados en un PC o en una red local, y sobre esos archivos el programador construía pantallas, informes, consultas y lógica de negocio.

dBASE se convirtió en uno de los productos que definieron esa generación. Su influencia fue más allá del propio producto: sus comandos, el formato de archivo DBF y sus convenciones de programación dieron origen a toda una familia de lenguajes y herramientas de bases de datos compatibles, conocida como xBase.

Fox Software entró en ese mercado con FoxBASE. Con Dave Fulton al frente, la compañía apostó por mantener la compatibilidad con las aplicaciones y los conocimientos que ya existían en el entorno dBASE, poniendo especial cuidado en el rendimiento. Ese enfoque quitaba de en medio una de las mayores barreras para cambiar de herramienta: tener que empezar de cero. Los programadores conservaban buena parte de lo que ya sabían, y las empresas podían seguir trabajando con los datos que ya tenían mientras pasaban a una herramienta distinta.

Fox Software fue evolucionando FoxBASE hasta convertirlo en FoxPro. Uno de sus avances técnicos más conocidos fue Rushmore, una tecnología de optimización de consultas que llegó con FoxPro 2.0. Su principio básico sigue siendo familiar para cualquier administrador de bases de datos de hoy: aprovechar los índices disponibles para no tener que recorrer entero un archivo cada vez. Si una aplicación tenía cientos de miles de facturas y necesitaba encontrar las de un cliente concreto, un índice bien puesto podía reducir muchísimo el trabajo.

Rushmore no arreglaba solo un mal diseño de base de datos, y los índices seguían teniendo su coste; las consultas tenían que estar pensadas para aprovecharlos. Pero la tecnología ayudó a que FoxPro se ganara fama de plataforma muy rápida para trabajar con datos locales.

El éxito creciente de Fox Software también trajo una batalla legal considerable. Ashton-Tate demandó a la compañía por infracción de derechos de autor relacionada con dBASE, y el caso terminó complicándose para la propia Ashton-Tate. En 1990, un tribunal estadounidense determinó que la empresa no había revelado información relevante a la Oficina de Copyright sobre la relación entre dBASE y JPLDIS, un software de dominio público desarrollado en el Jet Propulsion Laboratory. El tribunal invalidó los derechos de autor de dBASE implicados en el litigio y desestimó las reclamaciones correspondientes.

No conviene resumir el caso como «Fox copió dBASE y ganó»: el litigio giraba en torno a cuestiones muy concretas sobre copyright, derivación y la información que se había aportado al registrar esos derechos.

Microsoft pagó unos 173 millones de dólares y siguió desarrollando FoxPro

El siguiente cambio importante llegó en 1992. Microsoft y Fox Software anunciaron el 24 de marzo su intención de fusionarse, en una operación que la prensa de la época valoró en unos 173 millones de dólares en acciones de Microsoft.

Para Microsoft, la compra le daba de golpe una posición fuerte en el mercado de bases de datos para PC. Para Fox Software suponía entrar en una compañía que estaba convirtiendo Windows en la plataforma dominante para ordenadores personales.

La compra no supuso el final de FoxPro. Microsoft continuó desarrollándolo, y en 1995 lanzó Visual FoxPro 3.0, adaptando la plataforma al desarrollo de aplicaciones gráficas para Windows.

Visual FoxPro resultaba atractivo porque reunía en un solo sitio buena parte de lo necesario para construir una aplicación de gestión: lenguaje de programación, motor de base de datos, formularios, consultas, informes y herramientas de desarrollo, todo dentro del mismo entorno. Para pequeñas empresas y programadores independientes, eso podía reducir de forma notable el número de tecnologías distintas que había que dominar para entregar una aplicación terminada.

Una tienda podía usarlo para inventario y facturación. Un distribuidor podía montar con él su gestión de pedidos. Un pequeño fabricante podía llevar producción, proveedores, piezas y entregas. Y el programador podía tocar la aplicación cada vez que un cliente necesitaba algo distinto.

Esa flexibilidad es también parte de la razón por la que estos sistemas cuesta tanto sustituirlos hoy. Una aplicación de gestión mantenida durante 15 o 20 años deja de ser un simple ejecutable conectado a un puñado de tablas: empieza a acumular excepciones. Un cliente tiene un descuento especial. Un producto se puede vender sin stock en ciertas condiciones. Un informe calcula comisiones con una fórmula antigua. Contabilidad necesita una exportación concreta porque otro proceso sigue dependiendo de ella.

Miles de pequeñas decisiones terminan metidas dentro del código. La aplicación acaba siendo, de facto, documentación ejecutable de cómo funciona la empresa, aunque nadie la diseñara originalmente para eso.

Visual FoxPro terminó, pero sus aplicaciones no

En los años 2000 el mercado del software empezó a cambiar. Las aplicaciones de gestión se movían hacia arquitecturas cliente-servidor, servicios web, navegadores y bases de datos centralizadas.

Microsoft, por su parte, estaba construyendo una estrategia de desarrollo distinta. .NET ofrecía una plataforma común para varios lenguajes de programación, Visual Studio se estaba convirtiendo en el entorno de desarrollo central de la compañía, y SQL Server ganaba peso en su estrategia de datos para empresas.

Visual FoxPro podía conectarse a bases de datos remotas y trabajar con parte de estas tecnologías, pero seguía manteniendo su propio lenguaje, su propio runtime, sus propias herramientas y su propia comunidad de programadores.

Microsoft lanzó Visual FoxPro 9 en diciembre de 2004, y sería la última versión importante. En 2007 la compañía confirmó que no habría Visual FoxPro 10. Más tarde, el proyecto Sedna aportó componentes para mejorar la interoperabilidad con tecnologías más recientes, pero no llegó a ser una nueva generación completa de Visual FoxPro.

El soporte principal de Visual FoxPro 9 terminó en enero de 2010, y el soporte extendido acabó el 13 de enero de 2015, según la documentación oficial de ciclo de vida de Microsoft.

Y entonces pasó algo muy habitual con los sistemas heredados: casi nada. Las aplicaciones no dejaron de arrancar de golpe. Los archivos DBF no desaparecieron. Los sistemas de facturación siguieron generando facturas.

El fin del soporte del fabricante y la muerte operativa de una aplicación son dos cosas completamente distintas. Una empresa puede mantener un sistema heredado funcionando mientras siga arrancando en las versiones de Windows disponibles, haya alguien capaz de mantenerlo y sus dependencias externas no cambien demasiado.

Los riesgos se acumulan poco a poco. Cada actualización del sistema operativo exige más pruebas. Cada integración con un servicio moderno puede necesitar algún apaño adicional. Cada programador especialista que se jubila o cambia de trabajo se lleva parte del conocimiento disponible.

Y luego llega el problema más difícil: migrar FoxPro casi nunca es solo convertir tablas DBF a SQL Server, PostgreSQL o cualquier otra base de datos moderna. La empresa primero tiene que averiguar qué hace realmente la aplicación. Eso incluye código, consultas, informes, permisos, cálculos y procesos que puede que nunca se documentaran bien, además de comportamientos que los usuarios han ido aprendiendo durante años.

Por eso algunas organizaciones mantienen estas aplicaciones en entornos controlados. Otras trasladan primero los datos a un servidor SQL y dejan FoxPro un tiempo como frontend. Otras van sustituyendo módulos poco a poco en lugar de lanzarse a una reescritura completa. No hay una estrategia única. Una pequeña aplicación de departamento puede ser relativamente fácil de sustituir; un ERP a medida que lleva 25 años modificándose puede tener millones de líneas de código y una cantidad de lógica de negocio que nadie sabe calcular del todo.

Por eso FoxPro sigue apareciendo dentro de empresas, décadas después de su mejor momento. No ha sobrevivido porque Microsoft siga desarrollándolo. Ha sobrevivido porque el coste de sustituir un software de gestión depende menos de la antigüedad de su lenguaje que de cuánto conocimiento de la organización acabó metido dentro de él.

Microsoft no eliminó FoxPro nada más comprar Fox Software. Lo desarrolló durante más de una década y, más tarde, decidió dirigir su inversión hacia otras tecnologías. El resultado es uno de los ejemplos más curiosos de software heredado: una plataforma de desarrollo oficialmente descatalogada cuya vida real la han marcado las aplicaciones que los programadores construyeron con ella.

Y mientras esas aplicaciones sigan haciendo cada mañana lo que una empresa necesita, es bastante probable que alguna ventana de Visual FoxPro siga abriéndose en Windows mucho después de que el producto que la creó desapareciera de los planes de Microsoft.

Preguntas frecuentes

¿Compró Microsoft FoxPro solo para acabar con él?

Los hechos no respaldan esa lectura simplificada. Microsoft compró Fox Software en 1992 y siguió desarrollando FoxPro durante años, con varias generaciones de Visual FoxPro de por medio.

¿Cuánto pagó Microsoft por Fox Software?

La prensa de la época valoró la compra de 1992 en unos 173 millones de dólares en acciones de Microsoft. El anuncio oficial de la fusión se hizo el 24 de marzo de 1992.

¿Cuál fue la última versión de Visual FoxPro?

Visual FoxPro 9 fue la última versión importante. Microsoft nunca llegó a sacar Visual FoxPro 10, y el soporte extendido de la versión 9 terminó en enero de 2015.

¿Por qué siguen funcionando aplicaciones hechas en FoxPro?

Muchas acumulan años o décadas de reglas de negocio, informes, procesos y personalizaciones. Sustituirlas puede exigir reconstruir la estructura de los datos y también un conocimiento operativo que a veces solo existe dentro del código fuente.

Fuentes:

COMPARTE ESTE ARTÍCULO

COMPARTIR EN FACEBOOK
COMPARTIR EN TWITTER
COMPARTIR EN LINKEDIN
COMPARTIR EN WHATSAPP