Vamos a ver si recuperamos un poco de regularidad en la publicación de entradas en el blog. Llevo un par de meses que no tengo tiempo para casi nada. En la tienda estamos en pleno proceso de readaptación. Como el tema del hardware se pone cada día más complicado, pues volvemos a los orígenes: al software. Desde el verano pasado hemos ido cogiendo algunos pequeños proyectos de programación a medida. El primero fue más un favor que otra cosa. Pero lo divertido es ver las herramientas que estamos usando para hacer estas aplicaciones.
Este verano pasado un cliente nos llama. Nos dice que en la empresa donde trabaja, encargaron a la competencia una aplicación a medida. Y no conseguían que ese programa funcionase correctamente. Nuestro cliente nos pedía que le echásemos un cable, porque parte de la responsabilidad del fallo de la aplicación iba a recaer sobre él y no sobre los programadores. El motivo era porque él había montado un par de tablas en Access, dos ventanas y una conexión con Excel. Y con eso llevaban un par de años trabajando. Pero lo que empezó como una pequeña ayuda en el día a día de la empresa, se había convertido en una herramienta muy importante para ahorrar costes y obtener más información sobre las ventas. Así que llamaron a la empresa que les había vendido todo el software de gestión (un ERP muy potente y una aplicación de nóminas) y les comentaron el tema. Y él quedó encargado del asunto. Nuestra compenteción, les dijo que cogían sus Access y le montaban una aplicación .NET puntera y con las mejores y más modernas herramientas del mercado. Y así fue. Pero la aplicación siempre daba algún error, o no validaba correctamente un campo o no respetaba las reglas del negocio en algún proceso. Y llevaban ya así seis meses y no veían el final por ningún lado. Así que nos llamaba para ver si podíamos hacer algo en dos semanas.
En un caso normal no habría echo caso a la llamada de este cliente. Parecía una causa perdida de libro. Pero se trataba más de un amigo que de un cliente, además estaba el sentimiento de hacer algo que la potente competencia no había podido hacer y el análisis de la aplicación ya existía: con el Access y las Excel que usaban, teníamos lo necesario. Pero se trataba de un plazo de tiempo muy corto. Así que pregunté:
- Imagino que hay que trabajar en red local de forma concurrente: ¿muchos usuarios?
- Solo se accederá desde las Oficinas de la empresa: ¿hace falta salir a Internet?
- ¿Los equipos de la empresa, tienen Windows 7 o 10?
Las repuesta fueron claras: se trabajaría en red local, como máximo 5 usuarios a la vez, desde una única ubicación física y en la empresa todos los PCs corrían con Windows 10 y había un servidor con Windows Server 2016.
Entonces le dije que si querían una solución en un plazo muy corto, teníamos que usar mi viejo compilador: Visual Objects, en su versión 2.7 que era la última que compramos. Se trata de un lenguaje de programación que era una evolución del Clipper, que a su vez era un compilador de código de dBase III. Ahí es nada. El compilador que tenía era del año 2.004. Pero como le dije, yo tenía ya un montón de librerías con objetos de negocio que hacían el 90 % de cosas que íbamos a necesitas en la aplicación. Y era código casi mayor de edad, pero lo más importante es que estaba muy probado. Hice un pequeño prototipo para que viesen el aspecto visual y me lo aceptaron…
Y así comenzó la resurrección de mi Visual Objects 2.7. La historia de este paquete es un pedazo historia de informática de empresa. Clipper en su momento fue un gran bombazo. Permitía compilar código dBase III y hacerlo funcionar muy rápido. Y además hacía que usar bases de datos (en los años ochenta del siglo pasado) fuese un juego de niños. Como es claro se trataba de un compilador que generaba programas para Ms-Dos. Con la aparición de Windows 95, se requería algo que funcionase bien con dicho sistema. Además, por aquel entonces se puso de moda la programación orientada a objetos (primeros años noventa del siglo pasado, parece que fue ayer). Así que Nantucket los creadors de Clipper decidieron fusionar las dos cosas con Visual Objects. Pero apareció por allí Computer Associates (en aquellos años una de las empresas de software más grande del mundo, que querían diversificar y entrar en el mercado del PC) y compro el Visual Objects. Computer Associates venía de la informática departamental, mainframes, hosts… y se noto algo en Visual Objects. Se trata de un compilador que siguió al píe de la letra los dictados de Microsoft para crear aplicaciones para Windows. Así que nosotros con Visual Objects hemos hecho aplicaciones para Windows NT, Windows 95, Windows 98, Vista, 7, 8 y 10… y funcionan sin tener ni que recompilar.
Así que vi que hacían aquellas Access y las Excel y lo pasá a un diagrama de flujo. Cogí mis clases estándar y comecé a derivarlas para los objectos concretos que iba a usar aquí. Tarde algo más que dos semanas, pero antes de acabar el verano la aplicación ya estaba funcionando. Y los clientes muy contentos y con una solución a su problema. Y yo mientras trataba de pegar con cola mis libros de Visual Objects y de programación orientada a objetos que hacía casi una década que no sacaba de la estantería y ya se estaban poniendo amarillos.
Luego vino otro cliente con un encargo parecido… y le dimos la misma solución. Dejo para otro día el software que usamos para crear reporte, pero si alguien quiere probar suerte en los comentarios… pues que diga cual cree que es. Como pistas, es incombustible y ha tenido una historia de compraventas también apasionante, donde interviene algún fabricante de hardware en un momento de diversificación…
Resumiendo, aquí estoy programando con una herramienta que tiene 14 años. Pero hace lo que necesitan mis clientes. De todas formas estoy siguiendo con interés uno de los muchos intentos de resucitar el Visual Objects concretamente, xSharp.
Al final como siempre digo, no se trata de la herramienta, sino de saberla usar.
Como contando batallitas, la cosa se ha hecho larga, dejo para una segunda entrada el tema del rendimiento y la velocidad de estos programas.
4 Comentarios
Comentarios Cerrados
Me voy a mojar, ¿Crystal Reports?
Esta claro como el cristal, jajaja: Crystal Reports seguro segurisimo XDDD
Madre mía, Clipper. Mis primeros pasos fueron con Summer 87,ligo la evolución a 5.1 y 5.2. No llegué a probar Visual Objects ya que habíamos evolucionado a Visual Studio pero he oído que estaba muy extendido en Sudamérica.
A mi me pilló Visual Objects en la época en la que me puse a trastear con objectos… y la verdad es que una vez lo entendías se podían hacer muchas cosas.