Saltar al contenido

1

Desde hace mucho, mucho tiempo se espera la convergencia entre la tv y la web. Sin embargo no ha terminado de funcionar, a pesar de que existe la tecnología y se han creado muchos dispositivos con este objetivo.

Un estudio de nielsen puede haber encontrado la clave para comprender porqué no termina de funcionar. Segun Nielsen, la integración ya ha comenzado, pero no en la forma que se esperaba: en vez de utilizar la televisión para acceder a la web, se utiliza un ordenador a la vez que la televisión. Mac Slocum explica que la experiencia de ver la tele y acceder a la web es muy distinta. La web es una tecnología que requiere mucha más atención, participación y es más absorbente que la tv. Empezando por los periféricos de entrada, no es lo mismo un teclado  que un mando a distancia, están pensados para usos muy diferentes.

La navegación en la web es una experiencia más personal, que requiere más atención comparado con ver la tv, que es una experiencia más social y compartida. Por eso es posible que la convergencia no se produzca permitiendo  ver la web en la televisión, sino que puede que aparezca una web específica para la televisión, que permita interaccionar desde un ordenador o telefono móvil, mientras se han elegido unos programas para ver en la tv de forma más social, una web con dos modos de interacción que englobe a la actual tv y a la web actual.

En TechCrunch además de presentar las últimas novedades de Chrome, se han dedicado a rastrear las listas de correo del proyecto Chrome para buscar las pistas de por dónde puede ir el desarrollo de Chrome OS. Parece ser que Chrome integrará una barra de estado que muestre la carga de la batería (al estilo de las barras de notificación de los escritorios actuales) y un modo de navegación compacto, me imagino que para darle un aspecto más parecido a aplicación de escritorio a las aplicaciones web.

Por mi parte, he hecho una modificación similar a uno de los scripts de Prism, para ocultar completamente la barra de navegación inferior. Es un cambio relativamente sencillo, sólo hay que editar el fichero webrunner.js (aquí está mi versión de webrunner.js, por si alguien se atreve a trastear). Aunque es algo sencillo, ahora mis aplicaciones web están todavía más integradas en el escritorio, aunque la solución óptima sería mostrar la barra en algunos momentos (cuando una página está cargando por ejemplo), con alguna combinación de teclas, o con un menú en la ventana de la aplicación.

Este pequeño hack puede ser muy útil para los usuarios de netbooks mientras no llega Chrome OS. La barra inferior de prism ocupa bastante y normalmente no aporta demasiada información y por ahora no se puede ocultar con la configuración de Prism. La solución definitiva sería hacer algo parecido a lo que tiene Chrome OS: ocultar la barra excepto cuando se está cargando una página,  o bien permitir que se pueda habilitar la visualización de la barra desde una opción del menu de la ventana o mediante una combinación de teclas.

Por cierto, con este parche se consigue otro efecto que es el sueño de muchos desarrolladores de aplicaciones: una aplicación web a pantalla completa. Con la tecla F11 se maximiza la ventana y cómo tenemos oculta la barra de estado, sólo se muestra la aplicación web a pantalla completa.

1

Según TechCrunch, Chrome (navegador) integra notificaciones de escritorio en la última versión para Snow Leopard (Mac). Uniendo esta novedad, junto a los servicios de sincronización, creo que Chrome OS será mucho mejor que cualquier combinación de navegador + OS actual, convirtiendo las aplicaciones web en autenticas aplicaciones de escritorio.

La pena es que no se desarrollen api's abiertas para que esa integración sea independiente del OS y navegador, es el paso que desde aquí me gustaría que diesen en google...

Parece que google no quiere perder el ritmo de evolución de internet y considera que html5 es el futuro de la web. Y es que, según Jay Sullivan VP de Moviles en Mozilla, la definición de html5 permitirá salir de "la jaula de los plugin". Sorprendentemente,  aunque html5 es una especificación sin finalizar, ya está soportada ampliamante en la mayoría de navegadores, a pesar de que probablemente antes de 2010 no será un estándar definido. Pero el gran problema será internet explorer, el navegador de microsoft, que con una cuota de penetración altísima, todavía no soporta éste estándar ni siquiera parcialmente, aunque ha anunciado que lo hará.

Según el artículo de O'Reilly hay varias características que están disponibles ahora mismo o en muy poco tiempo (por ejemplo, Firefox soportará algunas características a partir de la versión 3.5 que estará liberada próximamente):

  • Etiqueta canvas que permite dibujar elementos 2D.
  • Etiqueta video que permite integrar elementos de video dentro de html.
  • Api's de geolocalización para que las aplicaciones web puedan adaptarse a la localización del usuario.
  • Bases de datos de navegador que permitirán almacenar datos en el navegador para trabajar offline (al estilo de Google Gears).
  • Web Workers: un mecanismo para disparar threads (hebras o hilos de ejecución paralela) desde una aplicación web.

Técnicamente, estas etiquetas nos acercan un poco más a flash y al desarrollo de aplicaciones de escritorio, pero es interesante el cambio que se ha producido en la especificación html. No sólo se especifican etiquetas, si no que se han definido una serie de apis, que los diferente navegadores han ido implementando. Creo que el mismo camino pueden seguir las etiquetas 3D, implementadas por google a través de un plugin, pero que permitirá definir unas etiquetas y/o apis estandarizadas, si se establece un diálogo entre las principales empresas de la web. Sólo echo de menos la integración en el escritorio, que google plantea a través de gears, pero viendo el ritmo que lleva la evolución de la tecnología del navegador, no creo que tarden demasiado en aumentar el nivel de integración pues parece el siguiente paso lógico en el desarrollo de aplicaciones web.

1

Finalmente se ha publicado la primera versión beta de prism, con un sitio web nuevo, por lo que parece que el proyecto sigue vivo. Al hilo de esta nueva versión, Matthew Gertner, responsable del proyecto, explica en su blog una idea interesante ¿quién se encargará de la integración la integración de las aplicaciones web actuales con el escritorio?

Lo explica con un ejemplo sencillo: la notificación de mensajes nuevos de correo electrónico en una ventana pop-up. Un usuario "normal" no tiene acceso al nivel de detalle necesario para realizar este cambio, hacen falta usuarios avanzados o desarrolladores de aplicaciones. El desarrollador de la aplicación web tiene la posibilidad de notificar eventos a través de un api, pero Matthew piensa que a corto plazo los desarrolladores web no van a hacer el esfuerzo y yo creo que si no se hace con cuidado se acoplaria demasiado la aplicacion web con la integración en el escritorio.

La opción que promueven en prism (y que me parece bastante correcta) es el desarrollo de un fichero que contenga el código específico de integración, lo que llaman un bundle. La opinión de Matthew es que a partir de ésta versión aparecerán más desarrolladores de bundles que personalicen el comportamiento de una aplicación web.

Esa personalización o integración con el escritorio deberían hacerla los responsables del sitio web, ya que son los que tienen el conocimiento de cómo funciona la aplicación: cuando generar eventos, qué uri's maneja la aplicación o cualquier otro detalle de la aplicación. Pero debería ser opcional: si se utiliza un cliente integrado en el escritorio cómo prism, se cargan los scripts de integración y si no se ignoran. Por eso se podría estandarizar el uso de una etiqueta al estilo de los iconos de aplicación o de flujos rss:


<link rel="shortcut icon" href="/favicon.ico" type="image/x-icon" />


<link rel="alternate" type="application/rss+xml" title="RSS Feed" href="/rss.xml"/>

Con una etiqueta meta al estilo de:

<link rel="desktop integration" type="application/desktop" title="Desktop integration" href="app.webapp" />

El cliente podría utilizar los scripts de integración con el escritorio en caso de que la soporte. Es decir si el cliente es prism (o un cliente con integración con el escritorio) es usa el fichero webapp y si no se ignora.

De está forma se podría promover un api común a varios navegadores, al estilo de lo que está haciendo google con gears, y se podría generalizar la integración de aplicaciones web en el escritorio.

Por este camino, puede que la "web 3.0" sea desaparición de las aplicaciones web, que se convertirán en aplicaciones integradas en el escritorio.