Mostrando archivo para octubre, 2016

Modularidad y reforma progresiva

octubre 24th, 2016 | Opinión

Ahora se viene haciendo menos, aunque se sigue haciendo; antiguamente era muy habitual tener un PC (un ordenador personal) grande en casa en formato de caja modular, llamada popularmente torre. Los teléfonos al principio solo servían para hablar y más tarde también para comunicar SMS y usar juegos básicos como pong, esto del ordenador en caja era mucho más barato que un portátil y más fácilmente extensible con piezas más modernas según el uso que se le iba dando, partes que se rompían o quedaban obsoletas; según también los usos y necesidades de cada familia y del propio PC.

En algunos software pasa lo mismo. Una misma aplicación se puede montar en diferentes sistemas de ventanas, por ejemplo programas escritos en Python originalmente para Linux usando el enlazado de Python a GTK, uno de los toolkit gráficos más usados en Linux; se pueden usar en Microsoft ya que GTK ahora está disponible para Microsoft.

Al igual que en los grandes sistemas de ingeniería, como UNIX, entendido como un ecosistema de software diverso, alguno muy usado otro menos, en el que hay una serie de máquinas objetivo, una serie de kernel intercambiables, por que respetan interfaces superiores en común, una serie de utilizadores de esas interfaces, por ejemplo programas de usuario como son los programas comunes de línea de comandos que usan los informáticos; las interfaces son parte del sistema también, una de ellas es por ejemplo el protocolo de terminal. Suelen ser, o estar destinadas a ser, estándares, y al final hay muchas piezas que son intercambiables, más o menos laborioso pero muy habitualmente posible.

screen-shot-2016-09-02-at-18-04-19

El protocolo de terminal es lo que define que el método de e/s humano básico en la interacción humano máquina sean caracteres atómicos, en vez de que además de los caracteres esté definida una matriz subyacente de grano más fino para que por ejemplo fuera posible:

  • Mostrar de imágenes nativamente en el protocolo e/s, en vez de ser un artificio del framebuffer; es decir, la riqueza pixel a pixel es siempre un protocolo secundario montado sobre un sistema que soporta al protocolo primario. Su celular funciona así también, otra cosa será si vd. es o no consciente de ello.
  • Usar software programático de dibujo sobre la consola, por ejemplo graphviz.
  • El dibujo libre sobre la consola, clásicamente el dibujo de estilo tortuga, contemporáneamente dibujo con touchpads y pantallas táctiles.

Hay un momento en que los desarrolladores se puedan llegar a plantear cambiar el protocolo de terminal virtual para que proporcione riqueza al nivel de pixel individual, pero hay tantas piezas relacionadas que al final nadie lo hace porque los beneficios de ingeniar el nuevo sistema no justifican el coste que emana de analizarlo rápidamente sin mucha rigurosidad.

screen-shot-2016-09-02-at-18-07-26

La elaboración de un nuevo protocolo de terminal requeriría una adaptación por parte de los núcleos, del servicio de terminales virtuales, de los clientes de consolas, de los programas intérpretes de comandos, finalmente de las aplicaciones usuarias. Por tanto pasarían años desde una posible especificación hasta que el protocolo tuviese una prueba de concepto desarrollada a todos los niveles implicados, debido a la multitud de piezas que habrían de ser adaptadas. Pero se podría hacer, y tendría interesantes casos de uso. Sin embargo en la informática tradicionalmente se vienen prefiriendo los desarrollos evolutivos en vez de los grandes cambios, que normalmente se dejan para cuando no queda más remedio. Este es un motivo para que una inmensa cantidad de software siga utilizando flujos de caracteres para e/s entre procesos y en comunicación humano máquina, siendo algo en principio primitivo y aparentemente anticuado.

Otro motivo es la presencia de alternativas muy razonables. No hace falta fusionar el sistema gráfico al de texto porque el sistema gráfico ya está normalmente suficientemente bien como está (esto es, por desgracia mucho más inestable que el sistema de texto) y el de texto en realidad no necesita más complicaciones ni nadie las quiere, tal como está es mucho más estable y universal que las GUIs y las fuentes truetype, y así y todo tiene su cierta complejidad derivada de que a día de hoy ya por fin soporta todos los lenguajes humanos escritos habidos y por haber.

Además las interfaces de sólo texto son mucho más fáciles de usar que las gráficas, al no existir como problema a mitigar la mala experiencia de usuario, y más importante muchísimo más cómodas y económicas para el operador, al no requerir precisión de punteos, al no existir la imprecisión en el toque, y al ser las unidades atómicas mucho más grandes y adecuadas a la vista, el tacto y el oído humanos.

Las interfaces gráficas siempre son mutuamente incompatibles por su propia naturaleza de no ser un estándar común a todos los informáticos; como sí son los códigos Unicode, los códigos ISO-8859 y similares, las páginas de códigos ANSI y en origen de todos ellos ASCII.

screen-shot-2016-09-02-at-17-59-14

Los códigos de ocho bits están respecto a Unicode en una situación parecida a la hora oficial respecto a una forma nueva de entender el calendario. A la larga los cambios son inevitables, pero en el primer contacto en su contexto de nacimiento son ideas insólitas, exóticas, fantásticas, o ingenuas. En ambos casos, y al igual que si quisiéramos un nuevo gran protocolo de e/s proceso proceso humano, un gran esfuerzo y compromiso técnico es necesario por muchas personas, la propuesta de cambio inicialmente es ridícula e idealista, pero poco a poco la idea va siendo aceptada, finalmente un grupo de personas lo prototipa, los desconfiados van siendo poco a poco menos, se alcanza un punto en el que más o menos todo el mundo quiere adoptar el nuevo sistema, pero sin poder hacerlo, porque todavía suponga una pérdida de compatibilidad; o siquiera declararlo, por rigidez corporativa… Finalmente cuando los sistemas facilitan una interoperabilidad suave para el usuario final se produce una migración masiva.

Pasó con la casete y el compacto, con Lotus 1-2-3 y Excel, pasó en la telefonía móvil, pasó en la gestión del intercambio electrónico de texto escrito, empezó a pasar en la informática personal pero los fabricantes tradicionales supieron jugar bastante bien las cartas y han amortiguado bastante los cambios (que son imparables como todos los demás casos), por poco le pasa a Excel con Docs, los bancos temen con pavor que les pase, pasará con el vehículo de combustible fósil, se empiezan a comentar cosas sobre el vehículo autónomo, tantas cosas… Sólo ponte a pensar…

Siempre empujado por una evolución técnica y sujeto a diversos costes asociados y a la resistencia humana como en los casos que se han mencionado.

En Madiva trabajamos con pasión de forma que nuestros partner que tecnológicamente son más lentos que nosotros cuenten con nuestra mejor paciencia, comprensión y mimo; mientras que aquellos que son más rápidos que nosotros tengan siempre nuestra mejor consideración, atención y consejo.

U.P

Continúa leyendo este artículo