novedades en chrome

Según leo en maestros del web, chrome incorporará servicios de sincronización de bookmarks. Un servicio que anteriormente ofrecía Google para Firefox a través de un plugin, pero que finalmente abandonó. En su momento yo usaba éste servicio y me pareció un error su abandono, pero ahora se puede entender mejor. En arstechnica explican que la diferencia de éste servicio de Google para Chrome con otros servicios similares cómo mozilla weave, es que funcionará a través de un protocolo push, curiosamente basado en XMPP el mismo que usa Jabber o gtalk, lo que hará que consuma menos recursos y sea más rápido notificando cambios.

Parece una buena solución técnica: protocolos abiertos, código fuente abierto, etc. Se reservarán el código fuente del servidor, pero por lo menos es posible que otros navegadores implementen las misma funcionalidad a través de plugins.

Y puede que sea el principio de la integración de servicios online con el sistema operativo, recordemos que Chrome OS está en desarrollo, por lo que incorporará éste cambio y los que vengan a continuación.

escenario de chrome os

Voy a describir un escenario en el que Chrome OS tiene sentido cómo desarrollo nuevo:

  • Introduzco un DVD y se abre un reproductor de video. La novedad técnica sería que el reproductor estaría basado en un navegador web y se integraría con sitios cómo youtube ó last.fm de forma sencilla y transparente al usuario. Los drivers para gestión del dvd y la integración de la reproducción de video en el navegador no existen.
  • Conecto una cámara de fotos a un ordenador. Se abre un explorador de ficheros y puedo pulsar el boton derecho del ratón y enviar las fotos directamente con gmail ó compartirlas con flickr. La integración de los menús contextuales del escritorio con aplicaciones web todavía no existe.
  • Arranco Facebook como si fuese una aplicación de escritorio más. Arrastro una de las fotos sobre uno de mis contactos para compartir con él la foto. Gracias a Prism ya se pueden arrancar aplicaciones web como si fuesen aplicaciones de esritorio, sin embargo no puedo arrastrar ficheros para que una aplicación web lo utilice..
  • Con Facebook abierto arrastro un contacto de Facebook a gmail. No sólo necesitamos manejar el evento de arrastrar elementos entre aplicaciones, sino que además se debe permitir identificar el tipo de elemento arrastrado y permitir que la aplicación lo trate adecuadamente (no es lo mismo arrastrar un fichero que un contacto).

Prism tiene un pequeño api javascript para enviar notificaciones al escritorio. Creo que sería bueno estandarizar todo este tipo de eventos mediante un api javascript que es lenguaje de la web, sin cerrarlo a otros lenguajes. Idealmente no habría más que publicar un api de escritorio cómo free desktop para que fuese accesible desde las aplicaciones web de forma segura, lo que permitiría escribir aplicaciones de escritorio a partir de aplicaciones web.

Si google se limita a ofrecer una distribución de linux más, no creo que gane muchos usuarios. Pero si Chrome OS avanza en este sentido de integración web-esritorio, me pareceria una verdadera innovación. Y personamente no creo que goole se meta “en este fregado” para hacer una distribución más.

Con este post termino la “semana chrome” con el que google puede crear su producto más interesante y novedoso o el fracaso más estrepitoso de su historia.

chrome os (y II)

El lanzamiento de Chrome OS pone de manifiesto que la web se ha convertido en la plataforma de desarrollo de aplicaciones más importante y está sustituyendo al sistema operativo en este sentido. Las aplicaciones residen cada vez más en la web y menos en el ordenador y si la web es el principal punto de acceso a las aplicaciones informáticas, el siguiente paso es eliminar o mejor dicho ocultar o integrar al intermediario que es el sistema operativo.

Sin embargo, creando un sistema operativo propio, google ha tomado un camino demasiado “anti-microsoft”. La tendencia hasta ahora ha sido clara en el sentido unificador de la web y el sistema operativo: aplicaciones web sustituyendo muchas aplicaciones de sistema operativo (correo, calendario, organizadores de tareas), plugins en el navegador para trabajar offline, un navegador que permite ejecutar páginas web cómo aplicaciones de escritorio, e incluso un plugin con un motor 3D para navegadores.

En este punto, el siguiente paso es integrarlo todo junto al sistema operativo para que funcione cómo un único sistema. Pero se debería haber creado un api multiplataforma de integración entre escritorio y web, para mantener la libertad de uso de sistema operativo y no forzar una combinación específica de sistema operativo + navegador. A las alternativas existentes (Windows XP + Explorer, Ubuntu + Firefox, OS X + Safari, etc) sólo les falta añadir la integración con el escritorio. Y en este sentido tanto Prism, cómo Silverlight cómo Adobe Air son opciones independientes del sistema operativo y google ha tomado una posición distinta, creando su propio sistema operativo. La ventaja es que google publicará su código fuente mientras que Microsoft o Adobe no. Y en el caso de que Prism consiguiese despegar será la única alternativa de codigo fuente libre que ejecute en diferentes sistemas operativos.

No sé a qué nivel se pondrá esta integración en Chrome OS, parece que se hará con javascript y en el blog de google se habla de respetar los estándares actuales cómo html 5. Todavía podemos esperar que se publique un api común y abierto. Y en el peor de los casos, al tratarse de un proyecto que se publicará cómo open source, sería posible tomar el código y portarlo a otros sistemas, por lo que parece que la posición de google no es exclusiva, sino que parece que quieren explorar nuevas ideas.

Así que la integración de la web con el escritorio es el aspecto más importante en el proyecto Chrome OS, porque ya existen combinaciones de navegadores y sistemas operativos ligeros, pero no suponen un claro avance en este aspecto. Y cómo google estaba notando esa carencia, van a trabajar para que la web se convierta en la plataforma de desarrollo del sistema operativo, es decir que las aplicaciones escritas para Chrome OS sean aplicaciones web y aplicaciones de escritorio al mismo tiempo, sin distinción. Y este es el elemento que me parece más innovador de la propuesta de google, aunque no han definido cómo lo van a hacer.

Si se hace mediante librerías abiertas, podríamos ver estas librerías portadas a otros sistemas operativos (incluso windows!). Pero si la integración de la web con el escritorio es débil, entonces no existiría una ventaja técnica para utilizar Chrome OS frente a Windows + Explorer o cualquier otra combinación de sistema operativo + navegador. Podrían existir otros elementos a tener en cuenta, cómo la posibilidad de que los fabricantes de netbooks se ahorren la “tasa” de Windows, pero puede que no sea tan importante (no sé dónde leí que pese a que la mayoría de netbooks son más baratos con linux, se venden más con windows).

Creo que el elemento diferencial será que las aplicaciones web y de escritorio seran iguales y ésta será la gran aportación de Chrome cómo sistema operativo. Aunque cómo bien apuntan en techcrunch, a microsoft no le dejaron integrar su navegador con el sistema operativo. Aunque este caso puede ser distinto, ya que google planea distribuir su sistema operativo con una licencia open source. Pero ¿le dejaran a google integrar su navegador con su sistema operativo con su motor de búsqueda? Mientras todo el conjunto de software se mantenga open source, yo aceptaría la posición de google, pero cualquier movimiento en la dirección de restringir las libertades de los usuarios debería ser vigilado.

chrome os (I)

Se confirma una de las noticias más esperadas: google va a desarrollar su propio sistema operativo. En un principio orientado a los netbooks, no se descarta su uso en ordenadores de escritorio y/o portátiles. Finalmente se ha descartado la posibilidad de usar android en netbooks y han decidido crear un sistema operativo nuevo. Según comentan en el blog de google, el objetivo es diseñar un sistema operativo pequeño, estable y seguro que permita ejecutar un navegador y potenciar la idea de la web cómo plataforma de ejecución de aplicaciones.

Cómo bien se explica en microsiervos, un sistema operativo se compone de diferentes componentes módulos y técnicamente no se puede ver a Chrome (navegador) cómo una sustitución del sistema operativo. De hecho van  utilizar el núcleo (la parte técnicamente más importante de un sistema operativo) de linux para desarrollar Chrome OS. Para explicarlo de forma sencilla, es cómo si un fabricante de carrocerías de coche de la marca X dice que empieza a fabricar coches de la marca X. Obviamente la carrocería no es el coche entero aunque se le ponga el mismo nombre y no significa que la carrocería se convierta en el coche entero. Así que para añadir las piezas que Chrome (navegador) necesita para convertirse en Chrome OS (sistema operativo), google necesita hasta 2010 (y eso reutilizando el núcleo de linux).

Sucedió lo mismo en los 90, con las tecnologías de escritorio, que técnicamente tampoco son el sistema operativo sino un componente más, pero hoy en día nadie se imagina un sistema operativo sin interfaz gráfico y se asocia todo cómo si fuera un único sistema. Volviendo al ejemplo del coche, la mayoría de la gente asocia el coche con el aspecto que tiene la carrocería, sin importar demasiado el fabricante del motor.

El anuncio de Chrome OS viene precipitado por la llegada de Windows 7 en otoño, que cuando salga Chrome OS en 2010 estará bastante rodado. Probablemente en Google apostaban por un nuevo retraso de Microsoft, al igual que pasó con Vista, pero cómo parece que no hay retrasos, han decidido anunciar Chrome OS anticipadamente. En este lanzamiento no hay ningún tipo de detalle técnico, ni de presentación, sólo un post en un blog, que incluso para google es una información demasiada escueta (el lanzamiento de open social, android o chrome tenían más información).

Con este lanzamiento, google continua con su estrategia empresarial: si existe un producto que no puedes atacar, convierte a ese producto en “comodity” de forma que tu rival no pueda sacar ventaja económica. Con open social querían contrarestar a Facebook lanzando un api libre y gratuito frente al api más cerrado de Facebook. Con android atacar a Microsoft y Apple en los sistemas operativos de los teléfonos móviles. La estrategia es siempre parecida, lanzar un producto similar pero open source/gratuito/más abierto que los rivales para neutralizar su ventaja competitiva.

En cualquier caso es una buena noticia, sobretodo para muchos usuarios que ni distinguen el navegador del sistema operativo ni necesitan entender la diferencia. Puede ser una buena opción para que se planteen abandonar microsoft y que por fin haya competencia en el mercado de sistemas operativos (apple no ha conseguido una penetración amenazadora para microsoft).  No es lo mismo usar una variante de linux, desconocido para la mayoría de usuarios, que un sistema operativo apadrinado por google.

Actualización: Parece que el anuncio de Chrome OS llega por el anuncio del “Office In the Cloud”. En cualquier caso no tenía la pinta del anuncio normal de una aplicación de google.

algo más que chrome

Acabo de leer un artículo interesante de Enrique Dans sobre el navegador cómo sistema operativo. Estaba escribiendo un comentario, pero al final he escrito un artículo. Comparto la idea general: google no quiere reemplazar al sistema operativo técnicamente hablando, sino capturar la experiencia de usuario.

Aunque esto probablemente marque la estrategia de google, no creo que sea el objetivo de chrome. La prioridad de google para capturar la experiencia de usuario es llevar las aplicaciones a su terreno, la web, y sacarlas del escritorio (o del sistema operativo). Pero a pesar de chrome, google podría usar firefox para conseguir ese objetivo.

Lo más razonable es que el navegador termine desapareciendo, pero a largo plazo. Creo que no es más que una herencia de la época de windows 98 y actualmente no es más que un proxy a las aplicaciones web que debería ser sustituido directamente por éstas: búsquedas en internet, aplicaciones sociales para gestionar nuestros contactos, calendarios, procesadores de texto, lectores de noticias, etc. Casi todo ya está on-line y si alguien hiciese una estadística, la mayoría de páginas web que visitamos pertenecen a verdaderas aplicaciones web y a páginas web sueltas.

Pero hay elementos que se escapan (por ahora) del control de los navegadores. Por ejemplo, algo tan tonto cómo las notificaciones de escritorio no se pueden hacer con una aplicación web. Tampoco arrastrar ficheros ó gestionar las aplicaciones instaladas en un ordenador. Y si el objetivo es construir un sistema operativo sobre internet, estas operaciones tienen que funcionar. Hay plataformas que están intentando la integración del escritorio y la web en esta línea: prism de mozilla, air de adobe y silverlight de microsoft.

Así que tal cómo está planteado chrome actualmente, si bien mejora el acceso a las aplicaciones web, necesitará algo más para reemplazar al sistema operativo. Si google desarrolla un producto en esta línea, con soporte de múltiples sistemas operativos, entonces microsoft debería asustarse. Y yo creo que terminarán haciéndolo (o están ya en ello), pero necesitarán algo más que chrome.

A corto plazo, google tiene más opciones en los netbooks, se está empezando a hablar de usar android en estos aparatos. Quien sabe, lo mismo antes de lo que pensamos terminamos usando un sistema operativo de google.

Actualización: acabo de ver que Google Gears tiene un api para integración en el escritorio. Así que Google sí que está desarrollando ese algo más necesario. De momento no tiene una integración fuerte con el escritorio, pero probablemente la terminará teniendo.