Canal+ Skyline: La visualización de datos llega a la televisión

Text documenting the conceptualization and development of a real-time data visualization broadcasted (2010-present) in a national TV channel, Canal+ Xtra. It was orignally published in The Croopier.

El mes de julio de 2010 recibí de Canal+ el encargo de proponer y desarrollar una visualización de la actividad generada por los usuarios de su web. Una aplicación que representara la interacción de los visitantes con los contenidos de la página web de la cadena y visualizara sus búsquedas y participaciones en tiempo real, a medida que se iban produciendo en cada momento.

En un primer momento parecía tratarse de un proyecto en torno a uno de los motivos más recurrentes en la visualización de datos: las estadísticas de pulsaciones y tiempos en redes sociales y comunidades online. La imagen, en resumidas cuentas, que permite escudriñar la actividad invisible a la que nos entregamos a través de todo tipo de dispositivos con cada vez mayor fruición, y que hace públicos e inteligibles a su vez los resultados de técnicas que monitorizan día a día nuestros hábitos en la red para mostrarnos uno u otro anuncio de publicidad, uno u otro resultado de búsquedas, etc.

El elemento diferencial

El encargo llegaba sin embargo con un importante elemento diferencial. La imagen generada en tiempo real serviría de carta de ajuste para las horas sin programación de un nuevo canal de la cadena, Canal+ Xtra, dedicado principalmente a contenidos de autor. Se pedía por tanto una visualización como señal de continuidad para unas 10 horas de espacio televisivo todos los días, enchufada directamente al satélite mientras convierte en tiempo real la actividad de los usuarios de la web en protagonista de una señal en antena. Ése era el reto, para el que pronto la cadena descubriría un nombre inspirador: Canal+ Skyline.

Con apenas mes y medio de tiempo de desarrollo y las semanas de vacaciones del equipo de Canal+ de por medio -estábamos en verano-, con la exigencia de llegar a una aplicación tan estable como para funcionar ininterrumpidamente durante meses, el proyecto sonaba a locura. Pero como es habitual todo depende de cómo se proponen las cosas y de su contexto. En este caso la voz al otro lado del teléfono era la de David Navarro, incansable creador de proyectos audiovisuales y que conocía de cerca mi trabajo con The Croopier, y el escenario, el más que interesante programa de creación y experimentación con nuevos formatos Canal+ Lab. Así, el contexto que se planteaba desde un principio era el de un proyecto de creación: libertad para proponer y disponer tanto la visualización como los ritmos de desarrollo, y todo ello sobre una base de confianza y posibilidad de marcha atrás; condiciones inmejorables, en resumen, para arriesgarse e inventar.

Visualización

Dejar que los datos hablen es una regla de oro en todo proyecto de visualización. Pero esta particular forma de escucha tiene un problema: hay que descubrir también las claves de su gramática para entender lo que están diciendo. Hay que experimentar con ellos, manipularlos e ir descubriendo paulatinamente grupos y relaciones que servirán después como base para la visualización.

Una exposición muy clara y progresiva de este proceso y de algunas herramientas que pueden ayudar para llevarlo a cabo la proporciona el artista y diseñador norteamericano Ben Fry en su ya clásico Visualizing Data publicado por O'Reilly Media. Tal y como éste lo expone, el ciclo de una visualización consiste esencialmente en un proceso compuesto por un conjunto de fases claras y diferenciadas: delimitar en primer lugar el origen de los datos -cuáles nos interesan, dónde se encuentran-, construir un parser con el que recibirlos y utilizarlos, a continuación filtrarlos y procesarlos a base de algoritmos diseñados específicamente para ello y, finalmente, diseñar y desarrollar su apariencia visual.

El punto más interesante es que estas distintas fases no tienen por qué sucederse una tras otra en el tiempo. Pueden abordarse paralelamente de forma que durante su desarrollo puedan verse afectadas las unas por las otras, en un proceso de lo más fructífero tal y como puede comprobarse en esta excelente introducción por parte del artista canadiense Jer Thorp.

Trabajar de este modo es posible si se cuenta con un entorno de programación que permita de forma ágil y sencilla corregir, volver sobre nuestros pasos o probar rápidamente nuevas fórmulas. La plataforma open source Processing es sin duda la herramienta perfecta para esta forma de creación, y ha sido de hecho la empleada durante todo el desarrollo de este proyecto. Y no sólo la herramienta: la filosofía de hacer evolucionar un algoritmo desde sus formas más simples a las más complejas; un modo de proceder que tiene tanto que ver con un método como el de reducir y simplificar, elegantemente sintetizado por John Maeda en su libro The Laws of Simplicity, como con la estrategia de la continua remezcla, el copia y pega característico de los mundos editables y modulares, el modo Lego, en definitiva, de construir por bloques.

El primer contacto con los datos

Las dos primeras semanas del proyecto estuvieron dedicadas exclusivamente a la toma de contacto con los datos. La extraordinaria oportunidad de trabajar directamente con los responsables de la generación de estadísticas de una web como la de Canal+ permitió que estableciéramos desde el principio un formato ágil para los archivos de datos que pudiera por un lado ser fácilmente generado por un proceso automático y, por el otro, que pudiera ir recogiendo más conjuntos de parámetros a medida que los fuéramos necesitando.

Un usuario de un sitio web va dejando un rastro en las estadísticas del servidor a medida que va pinchando en uno u otro enlace durante su navegación. Los datos de estas estadísticas consisten esencialmente en series de contenidos (información sobre películas o series, búsquedas, etc) conectados por rutas de navegación de los usuarios. Un caudal de datos ordenados por navegaciones individuales cuya primera representación apareció ante nosotros de esta forma:

En este vídeo, una selección de los contenidos consultados por los usuarios es mostrada tal y como van apareciendo en los archivos de estadísticas del servidor web del canal. En líneas horizontales se apilan los contenidos recorridos durante la navegación de un usuario, de forma que cada nuevo usuario da lugar a una nueva línea horizontal. Esta fue la primera visión de esta corriente de datos, una secuencia de información que había que traducir a una experiencia visual más fácilmente interpretable.

En el vídeo cada uno de los contenidos aparece ya revestido de un color que lo pone en relación con el resto de contenidos. Con cada color estábamos señalando la pertenencia del contenido a un género o tipo, buscando así encontrar grupos con los que poder empezar a clasificar y diferenciar cada una de las consultas de los usuarios. Agrupar es una primera operación fundamental a la hora de buscar relaciones y patrones en el conjunto informe de datos de origen. Conseguir encontrar categorías adecuadas que cataloguen los datos y que desvelen a su vez algunas de las lógicas subyacentes a su generación es casi recorrer la mitad del camino hacia su visualización.

En nuestro caso, puesto que los datos de origen eran referencias a contenidos televisivos que contaban ya con su propia catalogación de género, este proceso de categorización quedó simplificado en gran medida: todos los esfuerzos se concentraron en averiguar el conjunto de géneros principales con los que significar a partir de un código de colores el conjunto de la actividad registrada. La técnica de visualización por TreeMaps (recurriendo para implementarla a la librería desarrollada por Ben Fry) y la superposición de rutas de navegación sobre estos mapas empezaron a revelar qué géneros articulaban el grueso de la actividad. La corriente de información comenzaba a dibujar formas.

Rutas de navegación

Además de los tipos de contenidos de origen y su relación con la actividad total, un paso importante en el desarrollo de la visualización consistió en el análisis cualitativo de las rutas seguidas por los usuarios durante su navegación. Esto es, se trataba de adquirir respuestas aproximadas a la pregunta de si se caracterizaban por algún tipo de propiedad común las navegaciones seguidas por los usuarios del sitio online del canal.

Una de las formas más interesantes de abordar esta cuestión proviene de una analogía con la biología que ya ha sido empleada con anterioridad. Imaginemos las conexiones entre dos contenidos de la web como enlaces vivos que nacen y desaparecen según haya usuarios recorriéndolos o no. Esto es, si modelamos la web como un organismo de conexiones vivas cuyos enlaces más activos sobreviven frente a los que apenas son empleados por los visitantes, tendremos una visión en tiempo real de los movimientos de los usuarios desde la perspectiva de sus rutas seguidas, donde aquellas más habituales destacarán sobre las menos seguidas. La técnica de este experimento, expuesta con más detalle en el libro ya mencionado Visualizing Data, fue empleada por primera vez en el proyecto Anemone, y su aplicación en nuestro caso sirvió para averiguar propiedades cualitativas con información relevante de las navegaciones de los usuarios.

Los resultados saltaban a la vista; además de las rutas esperables, tales como el papel distribuidor de la actividad ejercido por la portada como las conexiones entre el buscador y los resultados de la búsqueda, con esta representación se hacía evidente una característica importante de los movimientos de los usuarios por la web del canal: gran parte de las rutas aparecen separadas por géneros. Esto es, los usuarios que en un momento consultan la sección de deportes no son los mismos que en ese momento están visitando series o películas con su navegación. O lo que es lo mismo, en el interior de la trama de búsquedas y rutas de usuarios sobresalen las navegaciones guiadas por inclinaciones previas: disposiciones tales como la adicción a una serie, la afición a los deportes o el disfrute del cine en general.

Tras esta constatación era inevitable pensar en el espacio que se encuentra en el origen de gran parte de las rutas que allí tienen lugar. Un suelo de afectos, adicciones y curiosidad por saber más, previo a la navegación. Hablamos, naturalmente, del espacio de la televisión, una conexión ya construida entre los contenidos protagonistas de la web y sus usuarios, puesto que sin duda alguna estamos relacionados con los contenidos que consumimos. Y este espacio de relación es, por otro lado, desencadenante de unos patrones de actividad característicos que pueden ser apreciados a partir de nuestros movimientos en la red, una actividad que nace de la vinculación entre espectadores y contenidos más allá del consumo.

Este fue ese punto en el que se empieza a tocar algo de lo que se está buscando; habíamos dado con el suelo sobre el que tenía que apoyarse el conjunto de la visualización: una trama de relaciones contraídas reflejándose continuamente en las rutas de los usuarios. Sobre este espacio de relación construiríamos el resto de la visualización.

Representación de los contenidos

(...) No comprendo cómo puedes avistar una ciudad, pues yo sólo veo algo desde que me lo indicaste y no son más que algunos contornos imprecisos en la niebla”. La cita de Kafka, trampolín desde el que arranca su vuelo la intensa novela del uruguayo Mario Levrero sobre la incertidumbre, La ciudad, dibuja nítidamente el escenario en el que nos emplazamos en el proyecto una vez que la metáfora de ciudad, esencial para su desarrollo, empezó a dirigir el rumbo de la visualización. Frente a otros modelos muy elocuentes pero más abstractos como los propuestos en un inicio por la cadena, la imagen de una ciudad de contenidos se antojaba especialmente idónea para poder cubrir durante tantas horas el relato de la actividad online en tiempo real. En momentos de decisión como éste la libertad de creación es fundamental: permite arrancar nuevos caminos que de otro modo, a ciegas, no hubieran sido emprendidos.

Los contenidos en la web, en la nube, compiten entre sí en un mundo gobernado por la atención. Se condensan en la pantalla del usuario para evaporarse después en un espacio de bases de datos, cachés y directorios temporales. Son construcciones que se elevan y desmoronan continuamente, para las que las nociones de posición y distancia pierden todo su sentido, pues en todo momento cada uno de los contenidos se encuentra a apenas dos o tres clicks de separación.

Su capacidad de ubicarnos, sin embargo, su función como hitos en un espacio en el que compartimos experiencia y, consecuentemente, memoria y expectativas, los sitúa en un todo tan coherente y sólido como lo puede ser una ciudad para cualquiera de sus habitantes. El contenedor de un mundo cambiante, y el desencadenante de experiencias concatenadas.

A la hora de representar este equilibrio dinámico entre lo que construye una referencia compartida y lo que se disuelve por el arbitrio de la atención, los recursos visuales de la nueva imagen corporativa de Canal+, creada por la agencia Red Bee Media, aportaron ideas muy valiosas para comenzar a trabajar en tanto que desarrollaban un sentido similar de composición y agregación característicos de lo virtual y digital. Las primeras pruebas de construcciones con cubos como píxeles de color en el espacio que levantan continuamente estructuras proporcionaron resultados esperanzadores, que de hecho se mantuvieron hasta el final del proyecto.

Gracias a estructuras dinámicas como éstas pudimos pensar en materializar la comparación entre un contenido de la web del canal con un edificio en la visualización. Cada una de las páginas con información sobre contenidos de la televisión sería representada mediante un edificio cuya altura vendría dada aproximadamente por el número de visitas recibidas durante los últimos minutos. Estas alturas, por tanto, variarían dinámicamente en función de las páginas que estuvieran siendo visitadas por los usuarios de la web en ese momento.

Visualizar de este modo el conjunto de la actividad significa entonces construir una ciudad compuesta por edificios que se corresponden con las páginas vistas por los usuarios en tiempo real. Con la indicación del tipo de contenido -serie, película, deportes, etc.- mediante el código de colores que hemos comentado más arriba, una vista panorámica de esa ciudad proporciona ya información directa sobre qué es lo que está recibiendo más atención en ese momento.

Un algoritmo ponderador, que pasó a llamarse “algoritmo vida” en tanto que encuentra la “vida” de cada página en relación a la del resto, es el que decide en cada momento la altura que tiene cada uno de los edificios de la ciudad. Similar en su concepción al que establece el orden de los resultados de una búsqueda realizada por un motor como el de Google, este cálculo tiene en cuenta no sólo el número de visitas que recibe cada página, sino el tipo de contenido que ésta muestra más el conjunto de contenidos que está siendo expuesto en la visualización en ese momento. Cada contenido recibe de este cálculo un parámetro que es el empleado como altura en la representación. El algoritmo decide, además, si un contenido puede pasar a ser representado por varios edificios a la vez; tiene “hijos” cuando su actividad supera un umbral, por decirlo de forma sencilla, esto es: cuando supera un volumen de visitas aparecen más edificios con su imagen. Con estos ingredientes, nuestra ciudad es interfaz ya tanto de los momentos de equilibrio en las consultas habituales a la web por parte de sus usuarios, como de los fenómenos masivos propios de la comunicación:

Visualización del efecto en las visitas de canal+ de la entrevista de Robinson a Mourinho

A través de los edificios y de las capacidades del algoritmo, la información contenida en los servidores es recodificada en un lenguaje visual que tiene una mayor capacidad expresiva a la hora de ser mostrada en una pantalla de televisión. Reforzar esta capacidad a través del movimiento de la imagen fue sin duda una de las apuestas cruciales de cara a la representacion final. Ésta consistió en el desarrollo de un sistema de cámaras virtuales que van recorriendo el espacio de la ciudad continuamente y desde distintas perspectivas: movimientos de helicóptero, por un lado, cámaras a pie de calle, por el otro y, finalmente, una cámara fija y estática para obtener panorámicas de la ciudad.

Por otro lado, aquellas páginas que no presentan directamente información de un contenido televisivo, páginas intermedias o de servicio como pueden ser los formularios de contacto, participan también en el paisaje de Skyline. Aparecen como edificios blancos cuya misión, al jugar con el fondo blanco de la ciudad, consiste en ocultar y mostrar continuamente el espectáculo de la actividad. Gracias a estos y a su efecto con los movimientos de la cámara, la continua actividad de Skyline aparece y desaparece: el mundo inmaterial de la atención queda así escenificado en esta ciudad dinámica que sólo termina de construirse en la mirada del espectador.

Avatares

Aunque no hubiera habitantes en la ciudad, los espectadores los construirían con su mirada. Inevitablemente nos proyectamos en los espacios que contemplamos. Por eso, y dado que en Skyline los usuarios de la web pasarían a ser representados como paseantes de la ciudad, su diseño tenía que ser capaz de recoger este impulso hacia la proyección e identificación de todas las miradas de los espectadores. El trabajo de creadores contemporáneos en torno al lenguaje de los iconos nos servía de referencia. Así, los célebres retratos de Julien Opie y sus conocidas obras para pantallas de leds actuaron como indicadores de posibles caminos. El movimiento y la abstracción de creaciones tan originales como la representación de los usuarios de twitter como manifestantes nos proporcionaron también claves importantes.

En este apartado tan destacado del proyecto fue decisivo contar con la colaboración de Pablo Jiménez, artista visual cuyo trabajo en ilustración ya conocía. Tras un gran número de bocetos y pruebas de animación, logramos encontrar al personaje de silueta suficientemente abstracta y asexuada cuyos movimientos replicaran, por otro lado, el paso natural de una persona caminando con apenas unos pocos frames como referencia. De este laborioso proceso resultó una hoja de posturas (sprites) con la que, a partir exclusivamente de los dibujos del personaje en distintas posiciones crearíamos una representación totalmente funcional en un mundo 3D.

Extracto de la hoja de sprites empleada en Canal+ Skyline realizadas por Pablo Jimenez en el proyecto de The Croopier

La técnica para animar a un personaje a partir de una hoja de posiciones es sobradamente conocida en el mundo de los videojuegos. A partir de una librería que proporciona esta funcionalidad a Processing para gráficos 2D, desarrollamos un código que implementaba esta técnica para representaciones en tres dimensiones. Escogiendo qué imagen mostrar en cada momento de la hoja de posturas, según la posición del personaje y de la cámara y dibujándola en la pantalla en un plano siempre paralelo al de la cámara (una técnica llamada billboarding), logramos introducir en nuestro mundo una representación de los usuarios caminando tal y como la representación de la actividad hasta ese momento parecía sugerir.

Además de pasear por rutas calculadas como las más transitadas en cada momento, los personajes -puesto que representan cada uno a un usuario conectado en la web- hablan mediante bocadillos. Y lo hacen para anunciar su nickname, sus búsquedas o los concursos en los que están participando. Así, puede darse el caso de que alguien viendo Skyline en Canal+ Xtra encuentre a su avatar caminando por la ciudad, si es que ha estado previamente conectado a la web de la cadena. Con los avatares abrimos un espacio de representación que todavía hemos de explorar, es una vía abierta a futuros desarrollos. Por ahora los avatares se presentan a sí mismos; en un futuro, ¿que más podrían hacer?

La conexión y el lanzamiento

Alguien que como yo se dedique al terreno mutante de la creacion digital puede estar acostumbrado a montajes en salas de exposición, a instalaciones en servidores remotos o a desarrollos para plataformas experimentales de televisión. Sin embargo, difícilmente estará preparado para la impresión que provoca el descubrir un ordenador propio en un rack de una inmensa sala de máquinas o el tener que instalar el software en el interior de una habitación de continuidad de la televisión. Las múltiples pantallas con imágenes del resto de la programación del canal, la mayor parte de ellas provenientes de vídeos previamente codificados, construyen muros de emisión continua y sin interrupciones... ¿hasta qué punto la señal generada por un ordenador y a partir de datos de estadísticas ubicados en una red interna puede producir en tiempo real una sucesión de imágenes semejante? La unión de estos dos universos es un camino que apenas estamos empezando a recorrer.

Lo mejor de todo es que funcionó. Tras su lanzamiento a mediados de octubre, cada noche, y hasta las 12 de la mañana del día siguiente, Skyline produce y muestra en la pantalla sin interrupciones el recorrido de la actividad que ha tenido lugar en la web del canal unas horas antes -visualiza la actividad de las horas del día-. No hay razón técnica que garantize su rendimiento ni el ritmo al que hemos desarrollado la aplicación. Probablemente la explicación se encuentre en el apoyo constante del grupo de profesionales de Canal+ que no han dejado de colaborar con The Croopier para que el proyecto saliera adelante. En cualquier caso, el mundo de mundos que es la televisión cuenta con una nueva criatura. Que la disfruten.