Imagen de avatar epromero
Ernesto Peñaloza Romero

El reino de las ilusiones. Parte 2

Mi computadora me engaña. Aunque eso no debería extrañarme ya que una gran cantidad de mitos alrededor de ella son mentiras e ilusiones destinadas a eso.

Pero antes de disertar sobre los motivos que me hacen concluir que mi máquina me engaña, permitanme hacer un pequeño recuento de conceptos que me gustaría traer a cuento para ser claro en mi razonamiento.

Una maqueta es un modelo, es decir, es una representación de aquello que esta plasmado en ella. La maqueta de un desarrollo habitacional no es el desarrollo, sino una representación a pequeña escala del desarrollo. Las leyes del movimiento de Newton que aprendemos en la escuela, tambien son un modelo. Ninguna de las ecuaciones se le puede aventar en tiro parabólico (a menos que hagamos bolita el papel en que estan escritas). Las ecuaciones describen el movimiento, pero no son el movimiento. Tan solo dicen cómo se comporta el mismo.

En ambos casos la representación se deshace de los detalles superfluos, irrelevantes para poder tener un modelo significativo y útil. La maqueta no tiene cañerias, ni está hecha de ladrillos. Esos son detalles irrelevantes, dado su fin último. la ecuación del tiro parabólico que nos enseñan en el bachillerato no contempla la fricción del aire, o el viento. Cerramos los ojos y asumimos elegantemente que no existen.

Una computadora es también un modelo. De hecho es algo aún más interesante: es un modelo de modelos. Un circuito electrónico diseñado para simular el tiro parabólico es un modelo. Bajo determinadas circunstancias y omitiendo detalles que consideramos irrelevantes, dicho circuito se comportará como un objeto real moviendose en un tiro parabólico. Ahora bien, si este circuito electrónico puede también simular el Big Bang, o la desintegracion del átomo en una bomba atómica o simplemente ser una mazo de cartas para jugar solitario… pues entonces esta maravillosa máquina es un modelo en donde puedo montar el modelo que sea: es un modelo en donde caben otros modelos.

Un modelo, a pesar de que omita algunos detalles, debe contener la esencia de aquello que esta representando. Cuantas veces no hemos visto, por decir algo, la foto de un desarrollo inmobiliario con frondosos árboles, amplios espacios interiores y mucha iluminación, y cuando llegamos a ver el inmueble real no encontramos los árboles, los espacios son reducidos y evidentemente carecen de iluminacion suficiente. Ese modelo es un engaño publicitario. Y la desilución y la sensación de haber perdido el tiempo es patente.

Un modelo debe reflejar la realidad. Y cuanto mejor la refleje, mejor será el modelo. Un modelo toma los detalles más importantes, lo que le dan sentido, y omite lo que no es trascendente desde la perspectiva de ese modelo. Si esto no se cumple, el modelo es inutil. El modelo miente.

Pues bien. Si la computadora puede modelar, digamos, el inventario de mis productos, yo espero que si el software indica que hay 15 artículos registrados, entonces cuando vaya al estante, yo debería observar esos 15 artículos. O bien, si indica que mi cuenta bancaria tiene diez millones de pesos, yo debería poder ir al banco y contemplar 10 millones de pesos constantes y sonantes… ¿Disculpe, como dice? ¿Ya comenzo a pensar que eso no es así?

Quienes desarrollamos sistemas tenemos, entre muchas otras misiones, modelar la realidad. Gastos por cobrar debe decirme quien me debe, con precisión y sin que falte nadie ni nada. Cuentas por pagar, debe reflejarme mis obligaciones. Y por supuesto, el sistema de ventas, debe ser un espejo de las operaciones que permiten que fluya dinero a la caja. Si los sistemas no reflejan fielmente la realidad, su cometido como espejo de la misma se ve seriamente comprometida.

Y por desgracia, en muchos lugares se diseña imaginando un mundo en donde el caso ideal es la regla. Los productos no se pierden, los clientes siempre pagan, los vendedores conocen al cliente y saben venderle lo que este necesita. La realidad es que los productos desaparecen de los estantes, los clientes cancelan sus pedidos en cualquier momento y los vendedores no saben todo sobre el cliente y hasta inventan el RFC o el CURP con tal de avanzar en “su trabajo”. Mi conclusión es que entonces la realidad que está almacenada es falsa y poco confiable.

¿Acaso no hemos sido en algún momento víctimas de un programa que nos obligaba a trabajar por fuera del mismo debido a que las inexorables reglas de operación del sistema nos impiden trabajar con este, en lugar de trabajar en equipo con él? ¿Acaso será demasiado arriesgado decir que hay lugares en que se trabaja a pesar del sistema?

Esta permeando una filosofía de desarrollo que dice que la realidad debe someterse a los sistemas. Que las reglas de los sistemas deben imperar por encima de las reglas de la operación real. Si acaso no conoce el folio informático de un producto, por decir, el código de barras, entonces no podemos vender. ¿Quien dijo que vendemos códigos de barras?

Existe un chiste que dice que los físicos se sienten incomodos con la realidad porque no se ajusta a sus ecuaciones. La informática tambien quisiera desaparecer a la realidad porque es ‘imperfecta’.

La informática vive en su propio reino de ilusiones. Mi computadora no modela la realidad, me miente sobre ella. Lo hace elegantemente de manera que un gran porcentaje de las veces es verificable lo que dice. Pero en otras ocasiones no. Eso es como si la ecuación de tiro parabólico funcionara sólo a veces.

Ciertamente es labor del departamiento de sistemas, sistematizar las operaciones. Pero esas sistematización no debería asumir que las cosas siempre funcionan conforme a los procedimientos. Los procedimientos informáticos deben contemplar la gestión de los fracasos con la misma seriedad con que se contruye un edificio antisismico. Nadie quiere un terremoto, un incendio, un desastre en lo general, pero se diseña pensando en que esas cosas ocurren y se prepara a las edificaciones para estas contingencias.

¿Por qué entonces debo reinstalar el sistema operativo si algo falla? ¿Por qué debo capturar una factura con valores negativos cuando hay una devolución? ¿Por qué debemos perder el tiempo en las cajas del supermercado cuando un artículo no tiene código de barras,  el peso, o no esta inventariado? ¿Desde cuando es más importante llevar sistemas que vender? Si, claro, para mantener la realidad de los sistemas… pues la realidad dice que habia un producto en el estante, listo para ser vendido, que he dejado en caja para no perder minutos de vida esperando que el sistema se entere que la realidad lo ha sobrepasado.

Mi computadora me miente. Los ciberamigos, por muchos que sean, no son amigos. Mi abuelo decia que los amigos se conocen en la cama y en la carcel. Y les aseguro que mis ciberamigos no estarán allí si eso llega  a pasar.

Cuando la realidad alcance a las ciberrealidades, yo creo que más de uno se llevará una gran sorpresa.

Tags: , ,

5 respuetas para “El reino de las ilusiones. Parte 2”

  1. Samuel dice:

    Muy buen articulo, me gustaria saber mas y aprender de sus publicaciones con la finalidad de poder aplicarlos en mi vida real, resolviendo problemas reales.

  2. Gracias por el comentario.
    De momento sólo esta publicado el libro “Fundamentos de programacion en C/C++”. Si bien estan en preparación otros 2 libros más, son de corte mas bien académico. Sin embargo voy a tomar nota de tu comentario y posiblemente pronto tengamos algún libro enfocado a la práctica cotidiana, que siempre da mucho de que hablar.

  3. Akatzin dice:

    “Les aseguro que mis ciberamigos no estarán allí si eso llega a pasar.”

    Impactante… pero nada mas cierto. Me resulta alarmante lo hipnotizante que se hace esa fantasía, hipnotizante y adictiva. Finalmente creo que uno de sus fines (ademas de producir rios de dinero por algo improductivo) es narcotizar a sus usuarios, dejarlos en un estado de dependencia a la nada y darles algo para ocupar -desperdiciar- su potencial.

    La idea de que el sistema social mundial está en función de nosotros es también una fantasía. Y hay muchos medios inventados para hacernos pensar lo contrario.

    Me da mucho gusto haberme encontrado con su blog. ¡Hasta pronto!

  4. Alfredo Molleda dice:

    Hola, excelente artículo es un problema que tenemos al diseñar sistemas para un mundo utópico. Su artículo me ha inspirado a investigar y llegar a poder diseñar sistemas orientados al cliente “customer centric”.

  5. Cosa que todos debemos intentar, sin lugar a dudas. Una primera aproximacion a mi parecer esta dada en el libro “Presos de la tecnología” de Alan Cooper. Ojala puedas compartir tus puntos de vista. Saludos cordiales

Deja un comentario