Eduardo Ramos, Director del proyecto "Speaking Image"

06/02/2011 por Administrador

Ayer comenzó a correr como la pólvora en internet el lanzamiento de una nueva aplicación web Open Source que demuestra que los desarrolladores españoles tienen mucho que decir a la hora de crear herramientas innovadoras. Speaking Image permite, gracias a la interacción de Drupal y Open Layers, anotar imágenes de una forma realmente interesante que puede aplicarse a muchos entornos: desde la Investigación y Desarrollo a otros usos mas mundanos como las redes sociales, el deporte de aventura, entornos médicos y mas.

Hablamos con Eduardo Ramos, Director de proyectos en 2mdc, la empresa que ha desarrollado junto con la Fundación General CSIC esta nueva forma de interactuar con las imágenes en un entorno colaborativo que va a dar mucho que hablar durante los próximos meses.

logo_completo_alta.pngFM: Encantados de tenerte hoy aquí con nosotros, Eduardo

ER: El que está encantado soy yo de que me ofrezcáis la posibilidad de hablar de alguno de nuestros últimos desarrollos.

FM: ¿Cómo nació el proyecto Speaking Image?

ER: Hace tiempo que en 2mdc.com estamos interesados en tecnologías de geolocalización. Hace ya unos años desarrollamos un producto para un cliente que permitía añadir comentarios sobre mapas de Google a la manera en que lo hace la aplicación MyMaps. Durante el desarrollo, empezamos a pensar en otros posibles usos que se le podían dar a la herramienta y de qué forma podíamos “desligarnos” de la tecnología ofrecida por Google que en buena medida nos restringía a la funcionalidad ofrecida por su API.

En primer lugar, una mapa, tal y como se consulta a través del navegador, es poco más que una serie de fotografías pegadas con una pequeña capa de información geográfica: relación entre la posición en píxeles y sus coordenadas geográficas (latitud-longitud). ¿Por qué limitarnos a mapas de carácter geográfico? ¿Por qué no construir un mapa a partir de cualquier imagen?.

Por otro lado, empezamos a familiarizarnos con la tecnología de OpenLayers, que es una librería de código abierto para la gestión de mapas con un amplio abanico de posibilidades que van mucho más allá de lo que nos ofrece la API de Google.

La tercera pata de la mesa, requisito indispensable para que ésta no se caiga, la aportó nuestra relación con la Fundación General CSIC. Durante estos últimos años, hemos estado colaborando con ellos para el desarrollo de una serie de paquetes open source dedicados a la planificación estratégica de la I+D, algo de lo que, si sois tan amables, me gustaría hablaros en otra ocasión. También hemos colaborado en el desarrollo de un “Mapa de Estado de la I+D”, que permite visualizar y geolocalizar la producción científica española (podéis ver cómo funciona en http://mapaestadoid.fgcsic.es). Nuestra relación con la Fundación General CSIC va más allá de la de proveedor/cliente y desde el principio vieron el potencial que podía tener para la comunidad científica un sistema de colaborativo de anotación de imágenes, por lo que decidieron apoyar activamente la iniciativa, tanto desde el plano conceptual como el financiero.

FM: ¿Puedes describirnos cómo funciona?

ER: Como ya he comentado, la funcionalidad principal de la aplicación consiste en permitir la anotación online de imágenes de manera colaborativa.

Creo que la mejor forma de entender la aplicación, aparte de utilizarla (hay una beta disponible en http://www.speakingimage.org) es mediante un ejemplo.

Supongamos que queremos comentar online la pintura de “Las Meninas” de Velázquez. Tradicionalmente, tenemos dos opciones:

  1. Incluir la foto y añadir aparte los comentarios aludiendo a las distintas características mediante referencias como, por ejemplo, “la infanta que está en el centro de la composición”, etcétera.

Abrir Photoshop o nuestro editor de imágenes preferido y empezar a añadir información directamente sobre el cuadro marcando zonas de interés.

Ambas opciones tienen serios problemas. La primera de ellas no es clara y nos obliga a “navegar” continuamente entre el texto y el cuadro con obvias dificultades para entender en muchos casos a qué elemento preciso del cuadro nos estamos refiriendo. La segunda, además de engorrosa es “destructiva”: modificamos el cuadro sin que el usuario pueda ocultar a voluntad la información sobrescrita.

Además, ambas opciones limitan el trabajo colaborativo a la mera inserción de comentarios.

¿Qué podemos hacer con Speaking Image?

Subimos la foto (preferiblemente de alta resolución) de “Las Meninas” al servidor donde está instalado Speaking Image.

Lo primero que hace el software es generar un “mapa” con la imagen:

  • El software detecta todos los niveles de zoom disponibles.

Crea las teselas para cada nivel de zoom.

A cada nivel de zoom solo se muestran aquellas teselas que se van a visualizar (al igual que, por ejemplo, en Google Maps), por lo que se puede navegar por imágenes de alta resolución sin sobrecargar la conexión del usuario.

A continuación, uno introduce mediante un sencillo formulario:

  • El nombre y la descripción de la imagen(también puede incluir las dimensiones físicas reales del cuadro si se desea utilizar posteriormente la herramienta de medida).

Determina los permisos de edición y visualización de la imagen (pública, restringida a grupos de usuarios o incluso usuarios individuales)

La imagen ya está disponible como un mapa navegable para todos los usuarios que tengan permisos de visualización.

Edition_Screenshot.jpg

Si tienes permisos de edición (obviamente la persona que ha subido la imagen siempre y por defecto tiene ese permiso), puedes empezar a añadir, mediante una sencilla herramienta de dibujo, “capas de información” sobre la imagen:

Zonas de interés que pueden crearse mediante polígonos o dibujo a mano alzada y que tienes asociados globos de información que pueden contener texto enriquecido, fotos, vídeos, etcétera.

Puntos de interés señalados mediante marcadores a los que igualmente se puede añadir información multimedia asociada.

Toda esta información puede ser distribuida en diferentes capas que pueden ser mostradas o visualizadas a elección del usuario (tanto en la interfaz de edición como visualización).

Al crear la imagen, también se crea automáticamente un (mini)Wiki que permite, de forma colaborativa, ofrecer un espacio de trabajo para una navegación más tradicional sobre información de carácter textual. Cabe destacar que este espacio wiki consiste en un artículo principal asociado a la imagen en su conjunto pero que también se pueden asociar artículos a zonas o puntos específicos de interés en la imagen.

multimedia_Screenshot.jpg

En caso de que algún otro colaborador o tú mismo se arrepienta de una edición puede:

Deshacer la acción si se encuentra en el mismo proceso de edición.

Utilizar el sistema de gestión de versiones para recuperar un “estado previo” de edición sin los últimos cambios introducidos.

El resultado puede o bien visualizarse directamente en la interfaz o mediante un API (al estilo de YouTube o Google Maps) incrustarlo en otro website o blog.

Compare_screenshot.jpg

Como os podréis imaginar se quedan muchos detalles y funcionalidades en el tintero, pero tampoco quiero aburriros con multitud de datos que en ningún caso podrán ser sustitutos de la experiencia propia con la aplicación. Aquellos que estéis mas interesados en descubrir todo su potencial, podéis echar un vistazo al set de videotutoriales que cubren prácticamente todos los aspectos básicos del manejo de esta aplicación.

Solo comentar que desde el punto de vista técnico, la aplicación se basa en Drupal, para su núcleo y todas las herramientas tipo vinculadas a redes sociales, y en OpenLayers para la gestión de las herramientas de visualización y edición en la interfaz del usuario.

Y algo muy importante que se me olvidaba comentar: Speaking Image no necesita de ningún tipo de plugin o de la descarga de ningún tipo de aplicación, cualquier navegador razonablemente moderno como Internet Explorer 7, 8 y 9 o aún mejor, Firefox, Chrome o Safari son más que suficientes para disfrutar de todas estas funcionalidades.

FM: ¿Cómo ha sido de complicado unir dos tecnologías Open Source tan diferentes como Drupal y Open Layers?

ER: El producto no ha sido sencillo de desarrollar porque ofrece un amplio abanico de herramientas y un alto nivel potencial de personalización, pero las dificultades no han venido de la integración de Drupal y OpenLayers ya que una plataforma es utilizada en el lado del servidor mientras que la otra está relacionada, casi exclusivamente, con el lado del cliente.

FM: ¿Cuánta gente ha trabajado en Speaking Image? ¿Cuántas horas se han invertido?

ER: De forma directa en el proyecto unas 8 personas durante más de año y medio, aunque no todas a tiempo completo durante este periodo. En lo que respecta al número de horas, prefiero no contarlas de momento, ☺.

FM: ¿Cómo se coordina un proyecto de semejante magnitud? ¿Cuánto apoyo habéis recibido de la Fundación General CSIC?

ER: La coordinación no ha sido complicada pues contamos con un equipo entusiasta de desarrolladores que desde el principio ha considerado este proyecto no sólo como un desafío profesional sino también como un reto personal, lo que nos ha facilitado en gran medida el desarrollo.

Hemos conseguido implementar más funcionalidades de las que previamente estaban previstas en el plan de trabajo con sólo una pequeña desviación en los plazos predefinidos. Aunque, como no podía ser de otra forma, tenemos una larga lista de peticiones en nuestro sistema de gestión de proyectos para la versión 2.0.

En lo que respecta a la Fundación General CSIC, su apoyo ha sido inestimable, no sólo desde el punto de vista financiero sino también conceptual. En particular, su Director General, Javier Rey Campos, ha sido un constante apoyo desde los mismos inicios del proyecto aportando valiosas ideas y sugerencias, y su equipo ha sido igualmente imprescindible para asegurar que la funcionalidad de Speaking Image cumplía los requisitos y estándares de calidad que demanda la comunidad científica.

FM: Speaking Image tiene todo el aspecto de ser una herramienta estupenda ¿cómo se define en un proyecto así los usos de lo que aparentemente es algo "muy especializado"?

ER: Creo que las buenas herramientas son aquellas en las que sus posibles usos van mucho más allá de lo que sus creadores pudieron incluso imaginar.

Aunque Speaking Image es muy joven, prácticamente una recién nacida, nuestra experiencia hasta el momento parece indicar que en este caso es así.

Cada vez que hemos presentado Speaking Image a conocidos o clientes estos siempre han sugerido nuevos e interesantes usos que desbordaban claramente nuestras previsiones iniciales.

En cualquier caso el tiempo dirá... pero no comparto la idea de que sea una herramienta especializada: Speaking Image es una herramienta de amplio espectro que, eso sí, puede ser adaptada y utilizada en entornos altamente especializados.

FM: ¿Cómo ha sido recibido Speaking Image por la comunidad Open Source? ¿Reacciones positivas?

ER: De momento el recibimiento ha sido espectacularmente positivo, aunque teniendo en cuenta que hemos empezado a “publicitar” el producto hace apenas unos días todavía estamos a la espera de más “feedback”.

En principio el producto tiene todas las características necesarias para ser un éxito entre los miembros de esa comunidad: es abierto, altamente personalizable y de una clara utilidad en los entornos relacionados con la I+D+i.

FM: El desarrollo de aplicaciones Open Source ¿es económicamente viable o es una pérdida de tiempo como proclaman algunas grandes empresas?

ER: Una pérdida de tiempo obviamente no lo es. Cada vez más empresas y administraciones públicas utilizan aplicaciones de código abierto en sistemas críticos para su buen funcionamiento.

En lo que respecta al retorno económico, éste ya es un tema más espinoso en el que resulta difícil generalizar. Ya hay casos de grandes empresas que hacen del código abierto la base de su negocio, pero hacer negocio es algo que, en general, no es sencillo por lo que utilizar o desarrollar una u otro tipo de tecnología no es garantía de éxito.

FM: Cuando se crea una aplicación de estas características que se ejecuta contra un navegador, el desarrollo para cada uno de ellos puede ser una aventura: ¿Cuál ha sido el navegador que más trabajo os ha dado? ¿Y el que menos?

ER: Internet Explorer suele resultar siempre el más complejo porque no se ajusta a estándares. En particular, todo el proceso de dibujo está sustentado sobre el estándar SVG (Scalable Vector Graphics) mientras que IE utiliza VML (sólo utilizado por Microsoft), lo que obliga a un desarrollo extra para esta familia de navegadores.

De todas formas, todos los navegadores, en menor o mayor medida nos han dado sus problemas como suele ser habitual, lo que hace del desarrollo multiplataforma una pequeña odisea. Pero es lo que hay ☺.

Por otro lado, desde el punto de vista de la experiencia de usuario los navegadores con potentes intérpretes de JavaScript como Chrome, Safari y últimas versiones de Firefox ofrecen una interacción más fluida, aunque las últimas versiones de IE también ofrecen un rendimiento más que aceptable.

FM: Por cierto, ¿El Mac ha entrado en el desarrollo de esta aplicación? ¿Cómo?

ER: Speaking Image es una aplicación multiplataforma y como tal no podíamos obviar la amplia base de usuarios de Mac. La aplicación ha sido testeada en Safari y Firefox para Mac y parece funcionar correctamente en todos los navegadores que utilizan como motor WebKit.

Aún quedan por afinar algunos detalles para ofrecer plena funcionalidad en dispositivos táctiles como el iPad (ahora es compatible en modo lectura, pero no es posible editar una imagen), algo que esperamos solucionar para la versión 2.0 que lanzaremos esta primavera.

FM: Muchas gracias por tus amables palabras, Eduardo, y muchos éxitos con Speaking Image

ER: Gracias de nuevo a vosotros por ofrecerme esta oportunidad y gracias a todos vuestros lectores que han mostrado suficiente interés para llegar hasta este punto de tan larga entrevista. Por cierto... ¡¡¡tirad todos vuestros iPods a la basura y comprar Zunes!!! (¡¡¡risas!!!)

0

Comentarios

No se ha enviado aún ningún comentario. ¡Tú puedes ser el primero en comentarlo!

Escribe un comentario

Regístrate o identifícate para poder comentar