Mezcla de páginas web a través de MASHUPS
En los últimos años se ha generado un nuevo auge de la Web que ha tenido como elemento principal la aparición de grandes redes sociales que funcionan a través de aplicaciones de Internet con interfaces ricas desarrolladas mediante un conjunto de tecnologías que nos permiten hacer páginas de Internet más interactivas facilitando, así, el uso de la Web por los usuarios, quienes han pasado de lectores a generadores de contenido. Auxiliados por estas tecnologías nacen los mashups, que son sitios híbridos que mezclan contenidos de aplicaciones web ya existentes para generar un sitio web a medida.
El objetivo del presente trabajo es ofrecer una visión preliminar de la tecnología mashup para la construcción de sistemas distribuidos para organizaciones que deseen adoptar una nueva técnica de desarrollo de software. Se presentan también los orígenes de los mashups, sus aplicaciones y las plataformas de desarrollo que influyen en el éxito que puede tener un mashup.
Mashups: Orígenes y principios
La aparición de la Web 2.0 en el entorno virtual se ha expandido de forma extraordinaria durante los últimos años debido a la necesidad de crear aplicaciones poderosas y sencillas de utilizar, y a la enorme importancia del entorno web para prestar servicios al usuario.
La creciente implantación de servicios web ha permitido la creación de entornos de programación altamente confiables para aplicaciones distribuidas. La aplicación de tecnologías novedosas como Ajax, Wiki, Google Maps, Google Earth, Mashup, redes P2P, Gnutella, o Kazaa, entre otras, ha multiplicado la versatilidad del entorno web haciéndolo más atractivo, dinámico e interactivo para el internauta.1 Por otro lado, estas herramientas también han permitido a los desarrolladores ser capaces de crear fácilmente nuevos servicios apoyándose en la composición de servicios y fuentes de datos distribuidos en Internet.
Un mashup es un aplicación híbrida en el estilo Web 2.0 que obtiene contenido de varias aplicaciones web para crear algo nuevo, una mezcla interesante de contenidos como galerías de los videos más populares, las noticias más relevantes, la localización de un artículo o personas en un mapa, etcétera.2 Otros autores afirman que es una palabra que proviene de un término musical en inglés, que significa la creación de una nueva canción a partir de la mezcla o pedazos de otras canciones; de este concepto proviene el mashup de software.3
Un mashup debe presentar una interfaz muy práctica de fácil navegación y utilidad para mostrar al usuario información de mayor calidad y cantidad mediante la mezcla de diversas fuentes.
La funcionalidad de los mashups se justifica por el crecimiento exponencial de la información disponible en la Web y al interior de las empresas. Tanta información es necesario manipularla de manera rápida y sencilla, puesto que es distribuida en diferentes fuentes de información, misma que debe ser integrada por el usuario para lograr un acceso rápido mediante una mezcla dinámica de diferentes páginas web.
Un mashup se distingue de dos formas:
1. Orientado hacia el navegador (browser). Está dirigido a la mezcla o composición de información con imágenes del lado del navegador, principalmente usando Java-Script como lenguaje de programación para lograrlo.4 Un ejemplo clásico de este tipo de mashups es aquel en que se usa el servicio de Google Maps, con otro servicio, por ejemplo, una lista de precios de casas mostrando en una sola pantalla el precio y la ubicación en donde se encuentra la casa en venta.
2. Orientado hacia el servidor (mashup empresarial). En éste, la integración y manipulación de la información suceden en ambos lados: servidor y navegador; su uso principal es interactuar con información de diferentes sistemas generando vistas necesarias para la toma de decisiones. 4
Ejemplos de aplicaciones
Como ya se mencionó, los mashups combinan la información y los servicios de múltiples páginas web. En otras palabras, son aplicaciones web que permiten combinar información que se encuentra disponible en diversas páginas web. Sin embargo, la importancia o el valor de un mashup no está en el contenido ofrecido sino en la manera de mezclar y presentar los datos utilizando una nueva interfaz que refleje la creatividad y el ingenio del creador.
Existen sin duda, ejemplos diversos sobre la aplicación de mashups. En este apartado se mencionan algunos de ellos, diversos en cuanto al contenido y servicio que ofrecen.
1. La Policía de Chicago combina sus estadísticas de crimen con Google Maps para mostrar las partes más peligrosas de la ciudad. La Web ilustra la ubicación de todo tipo de actos delictivos en la ciudad, desde los asesinatos en primer grado hasta falsas alarmas de incendio, de robos e interferencias en procesos judiciales. Esta herramienta muestra una manera muy clara de concentrar datos tras los que se oculta tanta violencia.3
Esta aplicación es, sin duda, particular, pues permite ver a detalle una larga lista de la ubicación del crimen; la información está acompañada de fotografías y datos relevantes del suceso; su uso se ha extendido ya a otras ciudades norteamericanas, dado que la mayoría de los mapas se encuentra publicados en medios de comunicación como es el caso de Los Ángeles Times.3
2) Panoramio es un mashup cuyo fin es combinar Google Maps con fotos de los usuarios para permitir visualizar su localización, y al mismo tiempo permite escribir una breve descripción de dicho usuario; este mashup también combina foros y blogs que permiten estar en constante comunicación con el usuario.
3) También existen mashups creados para conocer personas, como es el caso del sitio JIFFR, en que se puede usar álbumes de fotos, permitiendo notificar la foto que se desea publicar y si alguna persona es elegida mediante la foto, entonces es posible enviar un correo para hacer contacto más personal y programar una cita.
4) Wikimapia es un sitio donde los usuarios dan una referencia a lugares localizados en Google Maps mediante el enlace a un artículo de Wikipedia a una posición en el globo terrestre (más información en wikimapia.com).
5) Popurls es un mashup que muestra lo más popular de las redes sociales, las noticias de mayor impacto, las canciones populares del momento y noticias de trascendencia social (más información en www.populrs.com).
6) Weblisty es un mashup que muestra los sitios más populares por país, basándose en palabras clave y estadísticas de tráfico. Es un buscador que permite al usuario conocer sitios nuevos, así como encontrar los diez sitios más visitados en diferentes países mediante palabras clave dadas por el usuario. El ranking de los sitios en los resultados se da de acuerdo a los rankings de tráfico en Alexa y Quantcast, luego se categorizan de acuerdo con sus etiquetas; se puede buscar utilizando una o varias palabras con operadores booleanos AND u OR. Hasta el momento el sitio está integrado por USA, India, China, Japón, Alemania, Brasil, Inglaterra, Francia, Corea, Italia, Rusia, Canadá, Turquía, España, Indonesia, México, Irán y Pakistán. (más información en Weblisty.com).
7) Otro ejemplo brillante de mashups es la información ofrecida actualmente por múltiples compañías aéreas, adjunta al pase electrónico. En estas aplicaciones se muestra al viajero un enlace directo a la información meteorológica de la ciudad destino en los próximos días. Básicamente se trata de extraer de los datos del viaje las ciudades de origen y destino, así como la fecha del viaje, y enlazar con uno de los múltiples servicios que ofrecen la información sobre previsión de tiempo.
Existen innumerables ejemplos de cómo aplicar mashups. La gran mayoría de ellos están basados en Google Maps debido a que cuenta con una amplia documentación. Casi un tercio de las aplicaciones mashups son realizadas bajo el empleo de mapas. Muchas otras están relacionadas con las aplicaciones de redes sociales y fotografía, seguidas por el rubro de compras en línea y reservación de viajes. No obstante, no son estas las únicas aplicaciones posibles de realizar, y la combinación de los datos deriva en una infinita posibilidad de crear mashups de cualquier tipo, finalmente limitadas por la imaginación del creador.2
Plataformas de desarrollo
Los sitios comúnmente utilizados para la creación de estas aplicaciones son Google Maps, del.icio.us, Amazon Web Services, eBay, Flickr, Microsoft, Yahoo, YouTube y Twitter y algunos de ellos contienen recursos muy poderosos para ayudar a los creadores en el diseño de mashups.
Sitios como del.icio.us y Flickr, son compañías que han recibido mucha atención últimamente por la promoción del llamado "folksonomy" (término que se refiere a un conjunto de personas que colaboran de forma espontánea con el objetivo de organizar la información en diferentes categorías), un estilo de clasificación colaborativa de sitios usando palabras clave libremente elegidas, a menudo denominadas etiquetas (tags).4
En contraste, eBay crece orgánicamente en respuesta a la actividad del usuario; la ventaja competitiva de esta plataforma proviene casi enteramente de la crítica de compradores y vendedores, lo que convierte a sus competidores de servicios similares en menos atractivos.
No obstante, para crear un mashup es necesario contar con herramientas que permita crearlos de forma sencilla y no forzosamente utilizando código. En el siguiente apartado se listan algunos ejemplos de ellas.
Herramientas para la creación de mashups
A continuación se describirán algunas de las herramientas listadas que son comúnmente utilizadas para la creación de mashups.
A) Google Mashups es un entorno de programación que ofrece a los desarrolladores un conjunto de herramientas con las que pueden crear aplicaciones web y mashups sencillos de forma rápida a través de servicios de Google tales como Google Maps y Google Base. Es considerada una herramienta ideal para recopilar información, permitiendo a los usuarios consultarla y manipularla (más información en pipes.yahoo.com).
B) IBM Mashup está diseñado para ofrecer una solución fácil en cuanto al uso de mashups en los negocios. También ofrece soporte en línea para la creación de mashups de usos específicos y dinámicos con las capacidades de seguridad requeridas por las modernas tecnologías de información. Con este ambiente ligero de mashups, las organizaciones pueden abrir y transformar su empresa en cuanto a la información web, personal y departamental; pudiéndose publicar dinámicamente en las nuevas aplicaciones que tratan desafíos diarios del negocio.
C) Yahoo Pipes es un servicio en línea gratuito que permite mezclar entradas de usuarios, sitios web, resultados de búsqueda, feeds, contactos y toda la información personalizada que el usuario necesite. Entre las características del servicio encontramos una extensa librería de módulos que puede ser utilizada por los usuarios; los módulos también pueden ser creados directamente por el usuario. Además, cuenta con una interfaz gráfica que facilita el diseño y programación de pipes sin utilizar código. Es importante mencionar que el término pipes deriva de los populares "pipes" de la línea de comando del sistema operativo Linux.
D) Facebook Mashup es más que una red social para ver fotos de amigos, pues está siendo usado por las empresas para construir sus propias redes.
Entre las características principales de esta tecnología destaca el hecho de que reúne los programas de alerta de escritorio en una interfaz para ver notificaciones recientes, fotos, una lista alfabética de amigos, recibir alertas y subir fotos, utiliza Flickr, Twitter y los blogs, esto permite configurar la visualización de lo que quiere mostrar y la velocidad en la que se ve; tiene una aplicación para la localización de amigos, y un servicio de gestión de video que permite publicar, administrar y entregar video en línea, permite a los usuarios añadir feeds rss, aplicaciones, correo electrónico y sitios Web personales, entre otras características que hacen de esta tecnología una de las más utilizadas por empresas y usuarios curiosos (más información en facebook.com).
G) WSO2 Mashup Server by Oxigen es una potente pero sencilla y rápida manera de adaptar la Web a la información basada en las necesidades personales de los individuos y organizaciones. Ofrece anotaciones de Java Script para configurar los servicios desplegados, genera automáticamente metadatos en tiempo de ejecución así como los recursos desplegados para los mashups, tiene capacidad para una interfaz de usuario personalizada, apoya a los ciclos de vida del servicio, muestra una consola de administración para manejar fácilmente los mashups, ofrece múltiples opciones de autentificación, etcétera (más información en wso2.org).
La lista de herramientas gratuitas y con licencia para crear mashups de forma sencilla es vasta; sin embargo, la información presentada puede dar una idea clara de la importancia de elegir adecuadamente la plataforma de desarrollo para la creación de mashups propios que permitan satisfacer una necesidad empresarial o personal.
Conclusiones y recomendaciones
Los mashups suponen uno de los avances más importantes en el desarrollo web, pues facilitan la combinación de información de una manera sencilla, visualmente atractiva y eficaz. Están siendo utilizados tanto para uso público como privado en multitud de combinaciones que facilitan, ordenan y presentan la información de una manera innovadora. Aunque las empresas obtienen grandes beneficios con la aplicación de mashups, los usuarios finales son los principales beneficiarios de esta poderosa herramienta creada en torno a Internet, pues ellos pueden ser creadores de estos servicios y a la vez usuarios de cientos de aplicaciones basadas en mashups.
Es necesario resaltar particularmente el beneficio significativo para las empresas que conlleva el uso de los mashups, pues ofrecen nuevas formas de conectividad, interconexión y productividad sin barreras tecnológicas o de plataforma que les permiten ofrecer mejores servicios a los usuarios finales y, con ello, brindan oportunidades de conocer productos o tecnologías de diferentes empresas que les favorezca evaluar y mejorar los servicios que ofrece su propia compañía.
La facilidad con que los mashups pueden ser creados y personalizados bajo herramientas gratuitas como Yahoo Pipes o Microsoft Popfly permite que el usuario pueda consultar en una sola aplicación diversa información que tendría que buscar en varias páginas. Sin embargo, si de control o de seguridad en la información se trata, es conveniente recurrir a una plataforma de desarrollo bajo licencia, como IBM Mashups.
En general, los mashups son una tecnología que está en constante desarrollo debido a las ventajas que ofrece en el ámbito empresarial, educativo y de entretenimiento. Este nuevo tipo de aplicaciones está provocando un cambio radical que conllevará a una nueva generación de aplicaciones centradas en los usuarios.
Referencias
1 Catalán Aldunate FA. Un marco conceptual para la evaluación estratégica de Mashups. Departamento de Ciencias de la Computación, Universidad Católica de Chile, publicado el 14 de noviembre de 2008 del sitio web dcc.puc.cl.
2 Cetin S, Altinas NI, Oguztuzun H, et. al. A mashup-Based strategy for migration to service oriented computing, Cybersoft Information Technologies, Department of computer Engineering, Middle East Technical University. (2007)
3 Cervantes J. Mashups: Una guía práctica, Reforma, Sección Interfase. México (2009) 1-5.
4 Denodo Technologies USA, Plataforma Denodo para el desarrollo Enterprise data mashups. Consultado el 10 de junio de 2009, del sitio web Denodo Technologies, pdf disponible en denodo.com.
5 Joyanes LA. Web 2.0 y Redes Sociales: Los nuevos paradigmas de la Sociedad de la Información. Retos y oportunidades (2008).
6 Publicaciones mkm, Mashups Empresariales, isv Magazine, Editorial mkm, publicado el 06 de noviembre de 2007, del sitio web mkm Publicaciones, disponible en: mkm-pi.com.
– Argelia Berenice Urbina Nájera, Universidad Politécnica de Puebla, aurbina AT uppuebla.edu.mx
– Juan Antonio Zamora Rodríguez, Universidad Tecnológica de Xicotepec de Juárez, zamoraju AT hotmail.com
Descargar versión PDF de este trabajo aqui.
Información complementaria: Definición de Mashup en el Glosario Técnico.
Imagen de cabecera: bp2.blogger.com.
Fuente: Argelia Berenice Urbina Nájera y Juan Antonio Zamora Rodríguez – elementos.buap.mx