Campus logo

La rígida volubilidad de las impresoras

10 de Febrero de 2016
Al principio pensé que era cosa de la edad. Mi anciano padre reclamaba a menudo “¿Me puedes echar una mano con la impresora?” Y allí que me iba yo a luchar con los entresijos del sistema operativo. Una y otra vez me encontraba una cola de impresión con 30 documentos idénticos en espera, cifra exacta de la impaciencia e incomprensión de mi padre. 

Pero no eran cosas de su edad. La impresora, imperturbable, se negaba a imprimir. O atascaba el papel. O dejaba de usar la tinta verde aunque el cartucho fuera nuevo. Año tras año, las diversas impresoras de mi padre nos han jugado unas cuantas malas pasadas de estas. Y mis impresoras también. Algo va mal en la interface entre el software y el mundo real. La lucha cotidiana entre el código y el papel de la impresora, no es más que uno de los múltiples ejemplos de ese desajuste. Esperamos una cosa y pasa otra o no pasa nada.

Lógica software, lógica humana

Olvidamos que en estos casos lo inesperado sigue fielmente la lógica subyacente del software que lo controla. Nuestra expectativa lógica no concuerda con esa otra lógica que alguien programó. En cambio, decimos con rencor que la impresora hace lo que le da la gana. Bien es verdad que no resulta nada fácil anticipar y programar las múltiples combinaciones entre el contexto físico, lo que nosotros pensamos que es lógico y, por consiguiente, la conducta que esperamos del dispositivo controlado por software. Quedan resquicios para la combinación inesperada. Por ahí empieza el baile de los comportamientos que creemos caprichosos.

Mecánica del software

Nuestra experiencia con las tecnologías mecánicas nos ha llevado a no esperar demasiados caprichos. Con el caso de las tecnologías de la información, estamos todavía aprendiendo la, por así decir, mecánica del software. Y nos cuesta más por lo invisible e inaccesible que es. A diferencia de los antiguos automóviles, que, cuando levantábamos el capó, más o menos sabíamos cómo un componente afectaba a otro, ahora no vemos nada. A veces ni consultando el código entendemos qué ha querido programar otro. 

Algoritmos incomprendidos

Frank Pasquale explica muy bien cómo en el corazón de la alta tecnología hay muchos algoritmos muy importantes para nuestra vida que sucesivos equipos de programadores no acaban de entender. Habitamos rodeados de “cajas negras” de software, pozos oscuros donde crece nuestra ignorancia. Sabemos que están ahí sólo cuando dejan de actuar como esperábamos. Es entonces cuando salimos de la costumbre con las que interactuamos con ellas. Mientras tanto, no somos conscientes del acto de confianza continuo en que habitamos. 

Confianza en la tecnología

Confianza. No dejo de asombrarme cada vez que alguien interpone su brazo entre las dos hojas de una puerta de ascensor que se cierra. ¡Menuda confianza en la tecnología! ¡Nada menos que arriesgar un brazo para no perder el ascensor! El día menos pensado me doy con una versión en vivo y en directo de la lucha final entre Schwarzenegger y el malo malísimo de “Total Recall” en el ascensor de la central de Turbinio, ya saben.

Sin ir tan lejos, cuando estoy a 10.000 metros sobre el Atlántico me embeleso viendo cómo se cimbrea el ala del avión. La flexibilidad de lo que parecía rígido en tierra es asombrosa. Y entonces me doy cuenta de cuánto confío en las leyes de la aerodinámica. Y en las de resistencia de materiales. Pero también en el programa de software para diseñar esas estructuras. Y en el de simulación para probarlas antes de construirlas. 

Mis compañeros de viaje, cómodos en sus butacas, sorben sus cafés. Mientras, yo me pregunto qué sistema de verificación de software habrán utilizado los que programaron todos estos softwares de diseño y simulación aeronáuticos. No necesito mucho más café para darle emoción al viaje: de repente vienen a mi memoria ejemplos clásicos de la interacción no muy afortunada entre el código y la realidad física, entre representación y materia.  

Errores informáticos

Viejos tiempos: cuando era un simple estudiante de la carrera de informática cayó en mis manos un libro titulado “Errores informáticos. Resulta difícil encontrarlo pero es muy recomendable, y divertido. Recoge casos curiosos de cuando la industria del software estaba en pañales. En esos años pioneros programar era pura artesanía. Enviábamos a Marte sondas programadas en pies…. que otro software controlaba en metros y así, nunca mejor dicho, hasta el infinito. Desde entonces la verificación automática de software ha mejorado muchísimo y ha permitido desarrollar sistemas cada vez más complejos y robustos. 

Con todo, mientras acabo estas líneas, tengo un mensaje de voz de mi padre que me dice de nuevo “oye ¿puedes venir a echarme una mano con la impresora?”. 

ACERCA DEL AUTOR

Ramon Sangüesa
Fundador del Equipo Cafeína. Experto en programas de investigación en TIC, comunicación y arte. Coordina el Data Transparency Lab, iniciativa conjunta de MIT, Open Data Institute, Mozilla Foundation y Telefónica I+D.