viernes, 12 de junio de 2009

El mundo laxo




Cuando empecé a programar, allá por los primeros años ochenta del siglo pasado, empecé con el BASIC.... de ahí, directamente me fui a lo que me atraía mucho más.... programar en ensamblador, que es donde a mí me "molaba" verdaderamente jugar... poder entrar en las entrañas de la máquina sin límites....

Pero el primer estudio serio, concienzudo, programado y estructurado que hice de la programación como ciencia fue utilizando PASCAL... Del PASCAL más puro, seguramente una de las características más significadas es que es un lenguaje fuertemente tipeado.

Muchos años después, tuve que retomar , a un nivel profesional, un proyecto que, por ahorrarse unas perrillas, una empresa muy seria había encargado, su parte de programación, a un profesor de secundaria en sus ratos libres.... Aquello era un desastre sin paliativos que hubo que corregir casi línea a línea.... El conjunto del desarrollo usaba la última versión entonces aparecida de Macromedia Director... El lenguaje usado para programar era el lenguaje asociado al producto, el lingo.... Me familiaricé con él en dos patadas, pero me sorprendió la carencia absoluta de tipos.

Veo paralelismos entre el mundo de los productos financieros y los lenguajes de programación; se asistió en un par de décadas a una transformación regular... De unos productos y servicios bancarios, o unos lenguajes de programación, cada uno que elija la "vista" que quiera, donde todo estaba estrictamente regulado, en buena medida como sabia prudencia para protegernos de nosotros mismos, a unos productos y unos lenguajes poco menos que absolutamente desregulados.....

Últimamente, los productos y los lenguajes han evolucionado años-luz... Sin embargo, aun con las muchas mejoras en la seguridad que la sabiduría casi siempre creciente ( ¡ quiero creer ! ) nos ha proporcionado, hoy, ambos mundos, a pesar de que aún mantienen cierta laxitud en las regulaciones, la compatibilizan en los mejores casos con una seguridad muy aceptable.

Sin embargo, y con todo lo que ha caído (desde economías enteras hasta transbordadores espaciales), vuelvo a ver propuestas de lenguajes de programación que postergan peligrosamente la posibilidad de detectar errores que con otro diseño se detectarían en tiempo de compilación, y créditos hipotecarios que se conceden valorando el bien inmueble con una temeridad ajena a que el valor de los inmuebles que garantizan millones de créditos vivos va a sufrir, sin duda, aún, un severo correctivo, si el cliente ( normalmente la pareja ) es bien considerado por la entidad...

¿ Habremos aprendido las lecciones ? ¿ Volveremos a buscar restos dispersos de los cuerpos de unos astronautas cualquier día ? ¿ O del valor de las garantías que le aceptó una entidad privada irresponsable a un cliente que no necesita comprarse un mercedes nuevo mientras la inmensa mayoría de las empresas no reciben el mismo trato para poder pagar una nómina en un momento en que su tesorería está llena de arañas? ¿ Me habré vuelto demasiado conservador o será cosa sólo de la edad ?

No desfallezcas.... Son ostie di un vecchio... Creo que estoy premenopáusico.

4 comentarios:

  1. Lo de los transbordadores ¿lo mencionas porque tenga algo que ver con un fallo de tipos en el software?

    ResponderEliminar
  2. Estoy de acuerdo con lo que dices de Honduras en el blog de Laura..., valió la pena detenerme a leer tu análisis sobre Honduras.
    Saludos

    ResponderEliminar
  3. Guti, lo decía pensando en el error en el software del Ariane 5 , que parece ser que fue que el programa contenía un "cast" de un valor de 64 bits para ahormarlo a su almacenamiento en una variable de 16 bits con pérdida de información que hizo el valor resultante fuese basura al efectuarse la operación con un valor en un cierto momento de una variable efectivamente superior a lo que podía representar la variable destino.... Creo que fue algo así.... Como sabes, en aquella ocasión no hubo víctimas, y no sé si un lenguaje menos laxo hubiese evitado el error ( me extraña que al compilar no les diera al menos un warning, no sé qué lenguaje y que compilador usaron), sólo se perdieron 370 millones de euros de nada.... (también es verdad que es una cantidad de dinero que, usada en medicamentos o en alimentos , hubiese salvado muchísimas vidas, de modo que lo de que no causó víctimas, forzando un poco el argumento, no es 100% exacto, aunque, obviamente, nadie hubiese decidido en caso alguno quitar 370 millones de euros a dispositivos para poner en órbita satélites o a los propios satélites y comprar con el dinero ahorrado arroz para donarlo a un país africano asolado por el hambre, pero bueno....

    Eso sí, igual que se produjo la grave incidencia en una nave no tripulada, podía haberse producido en una tripulada.

    Saludos.

    ResponderEliminar
  4. Muchas gracias por tus generosas palabras sobre mi comentario en el blog de Laura, Rafa.

    ResponderEliminar