Grado de Multimedia Universitat Oberta de Catalunya

Técnicas de software, o cómo entender el software

Ferran Adell

El software se ha convertido en una herramienta de uso habitual para la mayoría de la población occidental. Usamos software para realizar muchas tareas distintas, desde el envío de correo electrónico -para comunicarnos- hasta la codificación de textos como en el momento en que escribo este post.

En el trabajo, en la universidad, todos trabajamos con software informático, sea local o en línea, hay muy pocos ámbitos de nuestra vida que no estén ya mediados por el uso de herramientas informáticas y, por lo tanto, de software.

Como ocurre con muchos de los conceptos, objetos y realidades que conforman nuestro entorno, no siempre prestamos suficiente atención a cómo funciona el software. Damos por supuesto una serie de cosas que hemos aprendido en el uso de las herramientas, sin pararnos a analizar y entender cómo funcionan los sistemas informáticos que construyen las herramientas con las que podemos poner a trabajar el ordenador para resolver problemas.

Hemos digitalizado gran parte de los objetos culturales de nuestro entorno: las imágenes, el vídeo o los libros son un ejemplo y -en el proceso – hemos perdido la capacidad que antes teníamos de entender como funcionaban los soportes, las herramientas y los formatos que los hacían posibles; hemos perdido los puntos de referencia. En la escuela se estudian las primeras formas de la tecnología, cómo funciona una cámara analógica o la imprenta de Gutenberg, pero no se explica cómo funciona el soporte digital, el software y las tecnologías que lo hacen funcionar (todavía).

En este contexto es muy importante conocer la estructura de esta capa digital que nos filtra la realidad física, entender que el software -considerado como una simple herramienta tecnológica durante mucho tiempo- es ahora un nuevo objeto cultural, un elemento más de nuestra sociedad compleja que participa en la gran mayoría de los procesos de creación y difusión del conocimiento.

Como es habitual en el análisis de la tecnología, cualquier acercamiento absoluto y sistemático es de difícil encaje con la realidad digital; la sociedad líquida implica también una forma dinámica de análisis y de estudio del entorno, más relativo, que se adapte a los cambios y construya teorías usables aunque varíe el contenido de las variables.

Muchos expertos han estudiado las implicaciones del software desde puntos de vista muy diversos, pero hay muy pocos acercamientos como el que plantea Manovich en Software Takes Command, un estudio del software desde el software, analizando cuál es su estructura y cuáles las técnicas que lo hacen funcionar, con una visión analítico-crítica y con vocación de construir un entorno teórico suficiente para poder hablar de software, más allá de su funcionamiento puramente técnico.

«Por lo tanto, si lo que Queremos es comprender las técnicas actuales de control, comunicación, representación, simulación, análisis, toma de decisiones, memoria, visión, escritura e interacción, Nuestro análisis no podrá considerarse completo si no Tenemos en cuenta la dimensión del software.» Manovich, Software Takes Command

Manovich presenta una explicación plausible sobre las técnicas de software, convirtiéndolas en uno de los elementos centrales del libro, y separando las técnicas independientes del medio y las que son específicas de un tipo de datos en concreto.

Esta distinción permite explicar el concepto de hibridación de una manera más clara, fundamentándolo en las técnicas independientes del medio: una evolución tecnológica que permite trabajar con diferentes algoritmos en una misma técnica de software, para tratar diferentes tipos de datos y permitiendo que estos compartan un mismo entorno digital de visualización y ejecución.

Mediante las técnicas de software, independientes o genéricas, podemos hibridar diferentes tipos de datos en un mismo entorno. Pero aunque cuando analizamos el software rápidamente nos damos cuenta de que las técnicas de software se entrecruzan y se combinan, es interesante definir los conceptos por separado para entender qué son las técnicas de software y porque son tan importantes para comprender cómo funciona el software y los medios híbridos actuales .

¿Qué son las técnicas de software ?

Manovich afirma en el libro que los pilares que configuran el metamedio ordenador son diferentes tipos de datos y las técnicas necesarias para generar, modificar y visualizar estos datos. Son, pues, algoritmos y conjuntos de algoritmos que permiten realizar determinadas acciones concretas sobre los datos. Estos algoritmos se traducen lenguajes visuales mediante las interfaces para que los usuarios puedan interactuar con ellos.

El algoritmo que permite copiar datos y pegarlos en otro espacio de memoria, se traduce al usuario con el término copiar&pegar, o con iconos gráficos que simulan la acción física vinculada, para que el usuario pueda interactuar de forma natural con la técnica.

Parece claro que una de las divisiones que podemos hacer entre las técnicas existentes dependerá de sobre qué tipo de datos son aplicables.

Podemos copiar y pegar independientemente de si trabajamos con imágenes o con texto ? Podemos aplicar un filtro de imagen a un texto ? Una negrita a una imagen ?

Para responder a esta particularidad Manovich clasifica las técnicas en dos grandes grupos :

Técnicas Específicas para un medio ( tipo de datos )

«El primer tipo son las técnicas de creación, manipulación y acceso a medios específicas para tipos concretos de datos. En otras palabras, son técnicas que tan solo pueden usarse con un tipo específico de datos (o un tipo de «contenido de medios»). Me voy a referir a estas técnicas como específicas para un medio (y aquí la palabra «medio» en verdad significará «tipo de datos»)»

Es decir, llamamos técnicas específicas a aquellas que no son universales, no se pueden aplicar independientemente del tipo de datos con los que tengamos que trabajar. No podemos poner en negrita una imagen, ni aplicar un desenfoque a un texto, sin convertirlo en una imagen.

Estas técnicas resultan fácilmente identificables si desglosamos conceptualmente lo que hace una técnica determinada. Si yo aplico una transformación visual a una imagen, aplico un algoritmo que trabaja con variables asociadas a la imagen, diferentes de las textuales.

«Una técnica específica del medio es un algoritmo que puede funcionar únicamente con una estructura de datos. Por ejemplo, los filtros desenfocar y enfocar tan solo funcionan con imágenes de mapas de bits; la operación de «extrusión», tan habitual en los programas de 3D para realizar modelos en 3D, solo puede aplicarse a una curva vectorial «

Técnicas Independientes del medio ( tipo de datos ):

“El segundo tipo son las nuevas técnicas de software que pueden funcionar con datos digitales en general. Los ejemplos son el «control de visualización», los hipervínculos, ordenar, buscar, los protocolos de red como el HTTP, y varias técnicas de análisis de datos de los campos de la inteligencia artificial, el aprendizaje mecanizado, el descubrimiento de conocimiento u otros subcampos de la informática.”

Las técnicas independientes del medio representan un salto conceptual en la comprensión de los metamedios, son técnicas que pueden funcionar independientemente de la tipología de los datos a los que se apliquen. Son formas genéricas de manipular datos, algoritmos complejos que cambian en función de sobre qué datos sean aplicados, permitiendo un trabajo transversal no condicionado por la tipología de los datos.

Manovich las llama genéricas o independientes del medio para expresar un paso más hacia la hibridación de los medios, donde las técnicas independientes permiten hibridar en un mismo entorno experiencial categorías de datos muy distintas.

Cortar, copiar, pegar, ampliar, pero también algoritmos complejos de aprendizaje mediante AI (Artificial Intelligence), son técnicas independientes o genéricas.

«Una técnica independiente del medio es un conjunto de algoritmos que realizan una tarea conceptualmente similar, pero que en apoyo aplicació funcionan con estructuras de datos Diversas . »

Sin técnicas genéricas no es posible crear medios híbridos, y sin técnicas que permitan la manipulación de imágenes, audio, vídeo, etc . no es posible fusionar en un entorno común diferentes tipos de datos.

En la aplicación sobre el software de esta conceptualización de las técnicas de software, hay que tener presente que no siempre podremos aplicar la clasificación genérico vs específico a todas las técnicas de software. Algunas veces los conceptos se entrecruzan, compartiendo características comunes ; sin embargo, son una gran herramienta para desmontar conceptualmente el software, ver sus partes, sus funcionalidades básicas y todas las técnicas que lo hacen posible .

“A modo de compendio sobre este punto: las técnicas de software independientes del medio son ubicuas y «universalistas». Por ejemplo, cortar y pegar son funciones integradas en todo tipo de software de edición de medios, desde las aplicaciones profesionales especializadas al software de consumo que lleva cada nuevo dispositivo de medios que compramos. Además, estas técnicas pueden aplicarse a cualquier tipo de obra de medios, sea cual sea su estética o su autoría; es decir, tanto si ha sido creada por la persona que luego aplica esas operaciones como por otra. De hecho, la capacidad técnica de acceder a fragmentos de las obras de medios de los demás se ha convertido en la base de la principal estética de nuestra época: la remezcla.”

Ferran Adell es especialista y docente en Tecnología y Sociedad. Estudió Filosofía y realizó un Máster sobre Filosofía contemporánea enfocado a la comprensión de la sociedad actual. Sus temas centrales...