Google Wave en quelques mots

June 3, 2009 | In: Applications Web

Lars Rasmussen a annoncé tout récemment dans le blog officiel de Google ce qui pourrait bien être la killer app de Google : Google Wave. Il ne s’agit pas d’une simple application et elle ne sera ouverte au public que plus tard dans l’année mais elle fait déjà beaucoup parler d’elle.

Cet humble post s’adresse à ceux qui m’ont demandé de leur faire une mini-présentation de Google Wave, ainsi qu’à ceux qui n’ont pas le courage de regarder la démonstration qui a été présentée au Google IO, qui dure tout de même 1h20. On trouve en effet beaucoup d’articles qui traitent de Google Wave et des concepts associés, et il est difficile de s’en faire une idée claire car ces concepts sont réellement novateurs.

Les origines de Google Wave

Avant de rentrer dans le vif du sujet, il me semble essentiel de comprendre l’idée à l’origine de Google Wave. Je préfère citer Lars Rasmussen (qui est très clair à ce sujet) plutôt que de le paraphraser. Lars et Jens Rasmussen, les deux frères à l’origine de Google Maps, sont partis du constat suivant il y a moins de trois ans :

“[Jens] pointed out that two of the most spectacular successes in digital communication, email and instant messaging, were originally designed in the ’60s to imitate analog formats — email mimicked snail mail, and IM mimicked phone calls. Since then, so many different forms of communication had been invented — blogs, wikis, collaborative documents, etc. — and computers and networks had dramatically improved. So Jens proposed a new communications model that presumed all these advances as a starting point [...]“

Ils ont donc alors démarré un projet nommé “Walkabout” afin de donner vie à ce fameux “nouveau mode de communication”. Lars Rasmussen résume leur démarche en trois questions :

  • “Why do we have to live with divides between different types of communication — email versus chat, or conversations versus documents?
  • Could a single communications model span all or most of the systems in use on the web today, in one smooth continuum? How simple could we make it?
  • What if we tried designing a communications system that took advantage of computers’ current abilities, rather than imitating non-electronic forms?”

Ainsi, après plus de deux ans de travail, le projet Walkabout a pris vie, a été rebaptisé Google Wave, et a été présenté au grand public le 28 mai 2009.


Google Wave au premier abord

Le site officiel présente Google Wave de la manière suivante :

“Google Wave is a new tool for communication and collaboration on the web”

Google Wave propose en effet une application Web dont l’interface n’est pas sans rappeler GMail :

On retrouve en effet une présentation en colonnes avec un menu, une liste de contacts, une boite de réception et un cadre de visualisation de l’élément sélectionné dans la boite de réception.

Sauf que là, la boite de réception ne contient plus des e-mails mais des Waves.


Une Wave, c’est quoi ?

Une Wave est une entité à mi-chemin entre une conversation et un document. Cette entité est partagée par un ou plusieurs participants, qui peuvent être des humains ou des robots. Vous créez une Wave, ajoutez des participants et cette Wave peut être ensuite modifiée par les participants en temps réel :

“The wave is a dynamic entity which contains state and stores historical information. A wave is a living thing, with participants communicating and modifying the wave in real time.”

Que signifie “modifier une Wave” ? Tout simplement taper du texte riche ou ajouter des photos, des vidéos ou même des gadgets (une carte par exemple). De quelle manière ? En insérant une réponse ou en éditant la Wave directement.

Jusqu’ici, “rien d’extraordinaire” me direz-vous. Sauf que Google Wave supporte les modifications concurrentes des Waves : vous voyez la Wave évoluer en temps réel lorsque d’autres participants la modifient, caractère par caractère ! Ce nouveau mode de communication et de collaboration unifie donc les messageries instantanée (chat) et persistante (e-mail) au sein d’un concept plus avancé.


Les Waves, une nouvelle façon unifiée de communiquer et de collaborer avec ses contacts

Comme l’explique Lars Rasmussen dans sa démonstration au Google IO, on passe donc d’un mode de communication “point à point” (les e-mails) à un mode centralisé (à la façon d’un bus) : les participants participent aux Waves dès leur création ou au cours de leur vie. Ainsi, les participants peuvent visualiser les modifications des Waves :

  • en temps réel, dans le cas de modifications par d’autres participants connectés
  • en playback, dans le cas de modifications effectuées par des participants connectés ou non

La démonstration de cette fonctionnalité de playback est impressionnante. L’idée derrière cette fonctionnalité est simple, il s’agit d’indiquer aux participants :

“Who said what and when”

Les participants peuvent donc visualiser l’historique des modifications, modification par modification, d’une manière animée ou par clics successifs.


Google Wave, une “simple” application Web ?

En fait, l’application Web décrite précédemment n’est qu’un des trois éléments qui constituent Google Wave, les trois “P” : il s’agit du Produit. Google Wave, c’est également une Plateforme et un Protocole.


Un Produit

L’objectif de l’application Web Google Web, c’est-à-dire du Produit, vous l’avez compris, est de permettre d’accéder aux Waves et de les éditer. Cette application a été développée en GWT et repose sur des apports de HTML 5.

Les intéressés pourront découvrir ces fameux apports de HTML 5 dans ce post très clair de Tim O’Reilly, mais on peut en retenir au moins un : pour effectuer l’upload d’un fichier, avec HTML 5, on n’est plus obligé de passer par l’habituel bouton “Parcourir”. On peut par exemple le faire via un drag and drop du fichier depuis l’explorateur vers une zone de la page HTML. Cet apport est largement exploité par Google Wave, notamment lors de l’attachement de fichiers à une Wave. La démonstration montre ainsi l’insertion de plusieurs images dans une Wave grâce à un seul drag and drop.


Une Plateforme

Google Wave, c’est également une Plateforme ouverte et extensible constituée de plusieurs APIs :

  • Embed : API JavaScript permettant d’intégrer des Waves dans des pages Web, des blogs, etc.
  • Extensions : APIs permettant de créer des extensions à l’application Web. Ces extensions sont faites pour travailler au sein des Waves.


Un Protocole

Google Wave, c’est enfin un Protocole ouvert spécifiant le stockage et l’échange des Waves, en gérant les accès concurrents. Pour plus d’informations concernant ce protocole, consultez le site officiel.

Notons que le code de Google Wave sera Open Source. L’objectif de Google est de le faire adopter par le plus de monde possible. Ainsi chaque entreprise pourra installer son propre Google Wave : on est loin de l’image de “Big Brother” si souvent attribuée à Google (néanmoins compréhensible concernant certaines applications)…


Quelques mots sur les Extensions Google Wave

Les Extensions peuvent être de deux natures : il y a les Gadgets et les Robots.


Gadgets

Les Gadgets sont des extensions côté client afin d’enrichir l’IHM des Waves. Elles peuvent bénéficier des interactions multi-utilisateurs (pour créer des jeux multi-joueurs par exemple). Notons que les Gadgets iGoogle et OpenSocial fonctionnent sur Google Wave, ce qui apporte des milliers d’applications d’entrée de jeu.

Exemples de Gadgets présentés :

  • Are you coming? : permet de mettre en place un sondage dans une Wave
  • Maps : permet une collaboration sur une carte Google Map au sein d’une Wave


Robots

Les Robots sont des extensions côté serveur afin d’automatiser des tâches. Il s’agit de participants à des Waves qui peuvent en modifier le contenu, interagir avec d’autres participants, ou encore transmettre de l’information à d’autres Waves ou au monde extérieur.

Exemples de Robots présentés :

  • Tweety : synchronisation d’une Wave avec Twitter
  • Bloggy : synchronisation d’une Wave avec un blog
  • Un robot qui affiche une liste de suggestions lors de la saisie
  • Un robot de correction automatique lors de la saisie (qui repose comme le précédent, apparemment, sur le Web et non sur un dictionnaire lexical “statique”). La démonstration nous le montre par exemple capable de remplacer le phrase tapée “Icland is an icland” par “Iceland is an island”, au fur et à mesure de la saisie !
  • Un robot qui détecte “intelligemment” les liens lors de la saisie
  • Un robot qui transforme une Wave en un outil de reporting de bugs
  • Et surtout, Rosy, un robot de traduction lors de la saisie : je vous invite à regarder la fin de la démonstration, elle est vraiment impressionnante. En effet, on y voit qu’il suffit d’inviter le robot de traduction à la Wave puis de taper une phrase en Français pour que le robot la traduise en Anglais, au fur et à mesure de la saisie ! J’ai tout de même hâte de tester ce robot moi-même afin de voir si l’outil dépasse réellement les outils de traduction actuellement proposés…


Revenons à nos Waves : une Wave, ce n’est “que” cela ?

En fait, il y a un découpage fin : une Wave rassemble des Wavelets. Par exemple, lorsque vous entamez une discussion privée avec un participant particulier au sein d’une Wave rassemblant plusieurs participants, cela crée des Wavelets privées au sein de cette Wave (en plus des autres Wavelets partagées avec les autres participants).

Ces Wavelets rassemblent elles-mêmes une hiérarchie de blips. Une blip consiste en l’unité de base des conversations et leur contenu est un document.

Voilà, vous connaissez tout le vocabulaire ! En fait l’utilisateur n’a pas à connaître cette terminologie, mais elle est essentielle pour le développeur. Elle est donc clairement définie dans la documentation de l’API.

Notons également que vous pouvez attacher des tags à vos Waves, ou les relier entre elles par du drag and drop.


Un peu de recul…

Ceux qui m’ont demandé de leur présenter Google Wave m’ont parfois demandé s’il ne s’agissait pas d’un énième outil à la Twitter, Facebook, E-mail, IM, Wiki, etc. En fait, Google Wave est un outil centralisé pour toutes vos communications et rassemble d’une certaine manière tous ces outils en un seul. Et, nous l’avons vu, c’est un outil extensible et ouvert.

Cette ouverture est essentielle : Google Wave et ses trois “P” est un outil révolutionnaire tant il change notre façon de communiquer et de collaborer. Tellement révolutionnaire que son succès n’aura lieu que s’il est largement adopté. C’est pour cela que son ouverture est essentielle.

Je suis plutôt optimiste quant à son succès à moyen/long terme : sa flexibilité et son ouverture le rendent “facilement” intégrable au sein du SI. En effet, il semble destiné à remplacer tous nos outils habituels, mais d’ici là il peut s’intégrer avec chacun d’eux afin d’en être complémentaire.

En tout cas, vivement son ouverture au public ! Il semble qu’il reste quelques soucis à régler sur les autres navigateurs que Google Chrome : notamment sur les terminaux Mobiles (Androïd et iPhone). Car oui, Google Wave s’adresse également à ce monde là !

Enfin, il est clair que Google Wave ne laisse pas indifférent alors qu’il est tout juste annoncé. A titre d’illustration, le fameux cabinet Gartner y a déjà consacré deux posts dont un sur les bases algorithmiques de Google Wave (notamment l’OT, ou Operational Transformation, la théorie à la base de la gestion des accès concurrents de Google Wave). De mon côté, je pense que ce n’est pas mon dernier article sur le sujet…



6 Responses to Google Wave en quelques mots

Avatar

Bruno

June 4th, 2009 at 20:13

Enfin un article qui présente Google Wave en profondeur, avec des termes simples !
Un must, merci François !

Avatar

GeoVah

June 17th, 2009 at 11:06

Par contre, un petit détail, (C’est peut-être un détail pour vous mais pour moi, ca veut dire beaucoup), on arrive encore à de plus en plus de concentration de nos données chez Google. J’essaye actuellement de ne pas lié mes données blog, microblogging, photo, mail, calendrier au même fournisseur (donc pas Google pour tous)…
Quand on voit déja ce que 123people arrive à recouper comme informations (par exemple des informations sur les acteurs dans Imdb ;-) ) – ok c’est facilement recoupable à la mimine, ca deviendra encore plus facile..

Enfin petit question, Google Wave, application pour usage personnel ou en entreprise ? La limite des deux devient de plus en plus mince ?

Avatar

François

June 17th, 2009 at 13:20

@Geovah : concernant la vie privée, ça peut être un long débat mais sur le cas précis de Google Wave il ne se pose pas, tu pourras installer ta plateforme Wave sur ton domaine. On revient sur leur ouverture, facteur de succès nécessaire. Et concernant la limite entre usages perso et pro, effectivement, il va falloir s’organiser un peu !

Avatar

Le Touilleur Express » Google Wave : premiers tests

July 19th, 2009 at 15:37

[...] – Je vous recommande l’article de François Goldgewicht qui présente Wave en quelques mots. – Faire une demande pour un compte Google Wave – La page de [...]

Avatar

Espace de François » Blog Archive » Google Wave : premiers tests !

July 30th, 2009 at 22:44

[...] présentation officielle de Google Wave à sa fameuse conférence Google IO, j’avais rédigé une présentation de cet outil en quelques mots. Je vous avais également fait part de ma hâte de tester cet outil qui a déjà tant fait parler [...]

Avatar

unlimited

October 16th, 2009 at 01:14

Bonjour! Quelqu’un ici a un invite de Wave à partager? Ça serait très apprécier! ;)
Merci!

Comment Form