domingo, 23 de mayo de 2010

Google TV = web + TV en pantalla grande

Hace unos días, durante el Google I/O 2010, hemos ido conociendo algunas ideas sobre cómo entiende Google el futuro tecnológico más inmediato.

Todas la novedades que han presentado son muy interesantes, pero de entre todas ellas (Android 2.2, Google Apps for Business, Google Chrome OS, etc.) quizá sea la nueva plataforma de televisión, Google TV, la que más puede llamar nuestra atención en los próximos años.


Google TV es un nuevo concepto que combina la televisión tradicional que vemos habitualmente, con la navegación por internet que realizamos desde nuestros portátiles, PCs, móviles, etc. Incorpora Google Chrome, pudiendo acceder a tus sitios y aplicaciones web, y cambiar fácilmente a tus programa de televisión favoritos.

Esta arquitectura, abre la televisión convencional a todo el contenido de entretenimiento disponible en la web. La televisión, se convierte en un potente navegador web con acceso a los canales tradicionales, y a la vez, al enorme contenido y programas disponibles en la web. Ahora tienes en un solo dispositivo, la televisión, la vídeoconsola, el reproductor de música, de vídeo, el portátil, y mucho más.

Google TV utiliza el concepto de caja de búsqueda como medio para encontrar el contenido que quieres ver, tanto si es un canal de televisión, como tu aplicación de correo.

Por ejemplo, sólo tienes que escribir el nombre de tu programa de televisión favorito, para empezar a visualizarlo. De la misma forma, reproducir un vídeo de Youtube en una pantalla de 40" es ahora trivial, sin cables, ni adaptadores, lo haces igual que lo harías en tu PC o portátil.

Además, con las nuevas librerías gráficas disponibles en los navegadores modernos y el nuevo estándar HTML5, podréis jugar directamente en la pantalla de vuestra televisión dentro de no mucho tiempo y sin conectar todos esos cables. Podéis echar un vistazo a una demo de QuakeII funcionando en un navegador web.

¿ Pero esta genial idea no se le ha ocurrido a nadie antes ?

Pues sí. Algunas empresas ya vieron la necesidad de hacer converger los contenidos de la televisión, radio, web, etc. en el salón de cada casa, pero la aproximación tecnológica, o no contar con los socios y contenidos adecuados, parecen haber sido los motivos del escaso éxito.

Apple TV no parece que acabe de despegar, quizá porque el contenido que ofrece es restringido y no permite una navegación libre por la red. Microsoft Mediaroom tiene un enfoque bastante parecido al de Apple, restringido a la visualización de TV y vídeo, y de la misma forma, tampoco parece que vaya a dominar el mercado. Microsoft también ofrece MSN TV, con una arquitectura semejante a la de Google TV, aunque de momento, con poca demanda.

Para intentar triunfar donde otros han fracasado, Google ha establecido acuerdos con importantes socios tecnológicos como Sony o Logitech para incluir Google TV dentro de las televisiones, en lectores Blu-ray y en dispositivos externos para conectar al televisor. También ha firmado acuerdos de distribución y gestión de contenidos. La disponibilidad anunciada es el próximo otoño, y de momento sólo en EEUU.

Por favor, vota nuestra encuesta en la columna que tienes a tu derecha...

lunes, 29 de marzo de 2010

Realidad aumentada

Detrás de estas palabras se esconde una tecnología de gran potencial que, aunque todavía está poco explotada, ya está dando grandes resultados.

Desde hace años se perfecciona la realidad virtual para que la podamos integrar cada vez más en entornos que simulan otra realidad. Con el avance de la velocidad de proceso de los ordenadores, se ha alcanzado un gran nivel de realismo, hasta el punto de resultarnos fácil movernos por esos entornos. Por ese motivo, la calidad y la sensación de inmersión que podamos experimentar depende, en gran medida, del equipo en el que ejecutemos la simulación.

La realidad aumentada intenta integrar el universo "virtual" en nuestro entorno "real". Parece lógico pensar que si ya tenemos un entorno real no haría falta crear otro, sino integrar en él los elementos que queramos crear para interactuar. Ahí es donde la realidad aumentada abre un nuevo universo de opciones, al poder soportar varios escenarios, soportes, participantes, formatos, etc.

Es evidente que la tecnología promete revolucionar tanto el mundo del entretenimiento como cualquier ámbito en el que representar una idea, como publicidad, centros de divulgación (museos, prensa, revistas...) ya que admite que el tipo de "contenido virtual" a mostrar se pueda adaptar sin problemas al entorno donde se va a integrar.

Pero, ¿ cómo funciona realmente?. Para que tengamos la posibilidad de experimentar esta mezcla del universo virtual y real, necesitamos la intermediación de una aplicación de nos muestre sobre la imagen del mundo real los objetos virtuales a añadir. La opción más extendida es hacerlo directamente con un equipo dotado de una webcam, y con el software adecuado para superponer las imágenes virtuales y ver el resultado final en el monitor. También se está experimentado con éxito otros formatos, como el móvil o las gafas de inmersión.

El principio básico de interacción, se basa en el reconocimiento de objetos. Para que todo esto funcione realmente, los objetos virtuales tienen que ser capaces de integrarse, no solo con otros objetos del universo virtual, sino también con objetos que se encuentran en el mundo real, y es ahí donde reside todo el potencial de esta tecnología.

Una técnica se basa en identificar los objetos a representar a través de una imagen que funciona como identificador único de ese objeto (al estilo de un código de barras), y éste objeto, en mayor o menor medida, se limita al área o zona que ocupa su identificador.


Otra faceta consiste en dejar que todos los objetos virtuales interactuen libremente sobre el universo real o centrando la identificación en los objetos que hay en primer plano. Microsoft, a traves de su plataforma de juegos XBox, está desarrollando un sistema de control de juegos muy interesante denominado Proyecto Natal que, al igual que la consola Nintendo Wii nos permite interactuar con los juegos con un mando sin cables, en el caso de Microsoft, le permite al jugador interactuar con el sistema con los movimientos de su cuerpo, sin necesitar ningún interface adicional.


Para móviles ya hay aplicaciones que nos permiten, por ejemplo, reconocer dónde estamos y sugerirnos localizaciones en base a la imagen que captamos con el teléfono. Existen aplicaciones que aplican el reconocimiento facial para acceder a los datos de un contacto en nuestra agenda. En los dispositivos móviles es donde se abre un futuro más prometedor, ya que evolucionan muy rápido y además permite que se utilice en cualquier parte.



También Google integra el sistema de reconocimiento de objetos con su sistema de búsqueda, de forma que sin necesidad de saber como se llama el concepto que quiero buscar, puedo obtener toda la información asociada al mismo teniendo tan solo su representación.


El mundo del automóvil también ha puesto sus miras en esta tecnología. De hecho, General Motors, en colaboración con la >Universidad Carnegie Mellon y la Universidad del Sur de California, están trabajando en un sistema que proyecta sobre el parabrisas del vehículo lineas luminosas que delimitan los contornos de la carretera y de las señales, lo que posibilitaría la conducción incluso en situaciones de visibilidad reducida, como niebla, oscuridad, etc.


Seguro que te apetece probarlo en primera persona. Aquí encontrarás un ejemplo muy sencillo de cómo funciona la realidad aumentada. Sigue las instrucciones y disfruta hoy de lo que más se va a hablar en los próximos años...

martes, 22 de diciembre de 2009

Web Sockets: El TCP de la Web

Desde la versión 4.0.249.0 de Google Chrome tenemos disponible los Web Sockets. Los Web Sockets son la siguiente generación en la tecnología de comunicación bidireccional para las aplicaciones web que está siendo estandarizada como parte del documento Web Applications 1.0.

Hasta hace poco, la comunicación para las aplicaciones web era implementada por los desarrolladores usando XMLHttpRequest. La comunicación bidireccional usando esta tecnología, forzaba al programador a crear una complejidad innecesaria en el lado del servidor. Web Sockets nos proporciona una comunicación bidireccional real con el navegador, solucionando este problema ya que, una vez establecida la conexión, podemos enviar datos desde el navegador al servidor llamando al método send(), y recibir datos desde el servidor implementando el evento onmessage.


if ("WebSocket" in window) {
var ws = new WebSocket("ws://example.com/service");
ws.onopen = function() {
// Web Socket is connected.
// You can send data by send()
// method.ws.send("message to send"); ....
};
ws.onmessage = function (evt) {
var received_msg = evt.data;
};
ws.onclose = function() {
// websocket is closed.
};
}
else
{
// the browser doesn't support WebSocket.
}


Como parte de los Web Sockets, también se ha desarrollado un nuevo protocolo "Web Sockets Protocol", que el navegador usará para comunicarse con los servidores.

En el código de ejemplo, verás una URI diferente usada para utilizar el nuevo protocolo.

ws://example.com/service

Y te preguntarás, para qué otro protocolo de comunicación si podemos usar los más que probados TCP o HTTP. Pues sencillo, el protocolo no puede ser TCP porque necesitamos mantener el mismo modelo de seguridad proporcionado en el origen. Tampoco puede ser HTTP porque el tráfico manejado difiere del modelo petición-respuesta de éste. Además, el uso del nuevo protocolo también debería de proporcionar un menor uso del ancho de banda, ya que no es necesario el envío de cabeceras una vez establecida la conexión inicial.

Para poder usar la nueva API, el protocolo, hacer uso de un modelo de programación más sencillo y obtener un tráfico de red más eficiente, necesitamos una nueva implementación del servidor. Google ha desarrollado una extensión para Apache, llamada pywebsocket, que puede ejecutarse como módulo o incluso como servidor.

Desde Google nos piden ayuda para que reportemos cualquier sugerencia, ya que tanto la API como el protocolo siguen en diseño y en discusión en la IETF.

martes, 15 de diciembre de 2009

Herramientas para desarrolladores en Google Chrome

Si te dedicas al desarrollo o explotación de páginas web y aplicaciones online, debes probar las herramientas de desarrollo de Google Chrome. Son el complemento ideal para ayudarte en el diagnóstico y resolución de los problemas de carga, ejecución, presentación, y en general, todas las incidencias que suelen aparecer durante el desarrollo y puesta en producción de tus proyectos en internet.

La plataforma te proporciona un entorno integrado para depurar, optimizar y comprender realmente el comportamiento de tu página web o aplicación online. Las herramientas se han desarrollado parcialmente a través del proyecto de código abierto WebKit, donde éstas mismas herramientas se conocen como Web Inspector.

Si quieres disponer de la última versión de las herramientas de desarrollo, debes instalarte la versión de Google Chrome especial para desarrolladores que puedes encontrar en el canal del desarrollador. En dicho canal, puedes encontrar las tres versiones del navegador disponibles:
  • Estable: Es la versión estándar que utilizan la gran mayoría de los usuarios. Es la más sólida y probada. Dispone de algunas herramientas de desarrollo.
  • Beta: Es la versión que dispone de las últimas actualizaciones estables del producto. Se actualiza con más frecuencia que la estable. Dispone de herramientas avanzadas como la gestión de extensiones.
  • Desarrollo: Es la versión más avanzada, pero también la más inestable. Dispone de todas la herramientas de desarrollo. Aquí se prueban todas las opciones que llegarán a la versión estable después de estar un tiempo en la beta.
En el siguiente conjunto de vídeos, puedes ver algunas de las características de las herramientas disponibles:



Como has podido ver en los vídeos, las herramientas están organizadas alrededor de las tareas que puedes realizar con cada una de ellas, y puedes acceder a cada opción a través de los iconos que se encuentran en la parte superior de la ventana.

Cada icono de la barra de tareas te permite trabajar con un tipo especial de página o bloque de información de una aplicación, así como elementos DOM, recursos, bloques de código javascript, etc. También dispones de opciones de búsqueda dentro del panel para encontrar propiedades o valores entre todos los elementos.

Lo mejor es que empieces a probar todas ellas y nos cuentes tus impresiones sobre la utilidad de las mismas...

lunes, 14 de diciembre de 2009

Google goggles te va a sorprender

La carrera por hacer de nuestro móvil la herramienta básica de navegación en internet no ha hecho más que comenzar. Este inicio tardío se ha debido a varios factores: la baja calidad y alto coste de la tecnología de acceso, la escasez de software realmente útil, un precio poco asequible para el usuario final y pocas plataformas de desarrollo compitiendo en el mercado.

La presencia de BlackBerry, Windows Mobile, Nokia, etc. no parecía hacer despegar un mercado que, según todos los análisis, debía crecer más rápidamente. El hito que marcó el punto de inflexión en el mercado de los smartphones, fue la aparición de un nuevo actor con gran prestigio entre los usuarios, Apple.

La llegada de Apple con su fantástico iPhone y más tarde de Google con Android, así como la disponibilidad de una tecnología de acceso más rápida y a unos precios más asequibles, han marcado el inicio de una trepidante carrera que, no sé a ti, pero a nosotros, nos tiene fascinados.

Aparte de las muchas aplicaciones que hoy en día ya puedes instalar gratis (o casi) en tu propio smartphone, a diario aparecen nuevas utilidades que buscan hacerte la vida más fácil. De entre todas ellas, hay algunas que merecen especial atención, por la tecnología que implementan y la funcionalidad que ofrecen. Es el caso de Google goggles.



Google goggles, es un software gratuito para tu móvil Android que te permite realizar búsquedas visuales. Si te parece que suena bien, verás cuando lo pruebes.

En la aplicación encontramos dos funcionalidades de búsqueda, una mediante fotos a objetos y el posterior procesamiento para devolver los resultados, y otra, enfocando con la cámara un emplazamiento determinado para identificar de forma interactiva lugares y empresas. Ambos procesos son casi instantáneos y nos proporcionan los resultados sin tener que teclear, hablar o realizar interacción alguna con el terminal.

En la modalidad de búsqueda mediante fotografías a objetos, la técnica consiste en realizar simplemente una foto al objeto del que queremos obtener información. El software escanea la imagen y realiza de forma automática una consulta al motor de búsqueda, teniendo en cuenta varios parámetros. Una vez ha procesado los resultados, obtenemos la lista completa en nuestro teléfono, incluyendo enlaces, imágenes, etc. Y todo esto, con unos tiempos de respuesta bastante aceptables.

Algunos ejemplos de distintos tipos de objetos que podemos fotografiar:
Como puedes suponer, la calidad de la cámara influye en la precisión de la búsqueda, por lo que podemos esperar importantes mejoras con la nueva generación de móviles equipados con cámaras de alta resolución. Imagina poder reconocer caras, vehículos, ... las posibilidades son infinitas.

En la modalidad de enfoque interactivo, la técnica consiste en realizar una panorámica del lugar donde nos encontramos. De forma automática, nos aparecen en la parte inferior de la pantalla unas etiquetas que muestran el nombre del edificio o negocio que estamos enfocando, ofreciendo la posibilidad de ir directamente al sitio web de la empresa pulsando en la pantalla. El software obtiene la información apoyándose en la información del GPS y ajustándola con la brújula, para obtener el lugar y dirección de enfoque que realizamos. Sorprende el bajo tiempo de respuesta a cambios de orientación, siendo el resultado  bastante impresionante por su rapidez y precisión.

Y todo esto, gratis. Me gustaría ver de lo que es capaz el software con cámaras más avanzadas, y capacidad de reconocimiento facial. El concepto asusta un poco y  promete mucho.