Google Wave : une bonne nouvelle pour le logiciel libre ?

Rappensuncle - CC by-sa« Google Wave, c’est ce que pourrait être le mail si on devait l’inventer aujourd’hui » s’exclame le grand Tim O’Reilly, se mettant ainsi au diapason de cette autre citation, « Wave va rendre caducs tous les outils actuels de communication », entendue au moment même de la présentation de ce nouveau projet, il y a quinze jours de cela.

Le dévoilement de Wave a d’abord valu à Google une standing ovation au sortir de la conférence inaugurale. Puis, dans la foulée, des articles souvent dithyrambiques sont apparus sur la Toile. C’est donc clairement la sensation du moment, avant même que le moindre utilisateur ait pu tester quoi que ce soit. Une nouvelle vague (wave en anglais) va-t-elle déferler sur le Web ?

Si vous voulez en savoir plus quant à son approche originale et à ses fonctionnalités, je vous invite à lire theClimber, TechCrunch ou Transnets. Outre tout ce qu’il nous propose de faire, retenons qu’on a besoin du HTML 5 et surtout que le protocole sera Open Source, basé sur XMPP (Jabber), avec un serveur qui sera libre et qu’on pourra installer chez soi (cf Minitel 2.0).

Cet aspect libre (ou prétendu tel) est très important et n’a pas forcément été mis en avant par la blogosphère (sauf l’inévitable journal LinuxFr). Pour marquer le coup et nous interroger ensemble sur l’impact potentiel d’une telle nouveauté sur le logiciel libre, nous avons choisi de traduire un article enthousiaste (peut-être trop ?) issu de la revue Free Software Magazine.

Cet article envisage Google Wave sous l’angle de ce qu’il pourrait apporter à une communauté agrégée autour d’un logiciel libre. Jusqu’à se demander si Wave ne va pas se substituer aux bons vieux outils que sont les logiciels de gestion de versions (CVS, etc.), les wikis, et autres listes de discussion. Ce qui, au sein des développeurs, serait effectivement une petite révolution dans la manière de travailler et de communiquer.

Mais il n’entre pas dans le détail des licences, dans l’évalutation du degré réel ou supposé de l’ouverture annoncée par Google (à sa décharge, on ne dispose à l’heure actuelle que le peu d’informations qu’a bien voulu nous donner la société). Et surtout il oublie d’évoquer une, pour ne pas dire la, question majeure que l’on résume souvent dans la formule « Google everywhere ». Ok pour la possibilité d’avoir son petit serveur à domicile mais dans la pratique la grande majorité se connectera à n’en pas douter chez Google. Du Google partout, tout le temps, qui va finir par devenir problématique (si ça ne l’est pas déjà !). On peut, par exemple, compter sur Google pour nous proposer son navigateur Chrome configuré aux petits oignons pour Google Wave, si vous voyez ce que je veux dire.

Aussi puissant, séduisant et ouvert (protocole, API…) soit Google Wave, le logiciel libre a-t-il intérêt à surfer tête baissée sur cette vague[1], ou bien laisser couler et continuer tranquillement dans son coin à ériger sa petite berge qui deviendra un jour si haute que pas même un tsunami ne pourra l’emporter ?

Google Wave va-t-il révolutionner la collaboration dans le logiciel libre ?

Will Google Wave revolutionise free software collaboration?

Ryan Cartwright – 15 juin 2009 – Free Software Magazine
(Traduction Framalang : Poupoul2, Daria et Tyah)

Si vous n’en avez pas encore entendu parler, Google a publié une version de développement de Wave, son nouvel outil de réseau social et collaboratif. Quel impact cela peut-il avoir sur les utilisateurs et les développeurs de logiciel libre ?

Wave est ce que Google appelle un « nouvel outil de communication et de collaboration sur le Web ». Voyez-le comme un carrefour entre le courriel, le réseau social, la messagerie instantanée, l’IRC et Twitter. Wave apporte (ou plus exactement apportera) non seulement de nouveaux moyens de communication, mais offre également un retour instantané aux autres participants. En utilisant la base d’une vague comme une conversation, il permet aux destinataires de vos conversations de voir ce que vous écrivez en temps réel, au moment où vous l’écrivez. Plus besoin d’attendre que votre contact de messagerie instantanée termine son message. Wave offre également aux participants, dans le même outil, des messages de type panneau d’affichage, afin de savoir à quel moment ils se reconnectent. Il propose des fonctionnalités sympathiques qui permettent contextuellement de répondre à différentes parties d’un message. De nouveaux participants peuvent entrer à n’importe quel moment, tout en bénéficiant à la fois de l’historique complet de la vague, mais aussi en ayant la possibilité de « rejouer la vague » telle qu’elle s’est formée, en voyant qui a écrit quoi et dans l’ordre chronologique.

Ouais, ouais, encore un outil de réseautage social… allez, circulez !

Aussi intéressant, ou pas, que cela puisse paraître, quel impact cela aura-t-il pour nous, utilisateurs de logiciels libres et plus particulièrement développeurs ? Et bien, tout d’abord, Wave est développé grâce à un nouveau protocole ouvert et Google souhaite que nous l’aidions à le développer. Ce protocole est disponible sous les termes ouverts d’une licence que Google considère « libérale » (Un oxymore peut-être ?). En plaçant un protocole ouvert derrière cette technologie, Google nous invite activement à contribuer, distribuer et propager cette technologie. Cela signifie que nous, utilisateurs de logiciels libres, pouvons créer des outils libres qui utilisent le protocole Wave. Un protocole ouvert est assurément une bonne chose dans ce contexte : Pas d’accord de confidentialité, pas de royalties liées à des licences telles que pour les formats GIF ou MP3. Google nous demande également que nous aidions à donner forme au protocole. Les contributions sont réalisées sous un contrat de licence contributeur, qui insiste sur le fait que vous donnez à Google, le droit de « reproduire, construire des travaux dérivés, publier, exécuter en public, sous-licencier et distribuer vos contributions et les travaux dérivés associés ». Google semble être parti sur la bonne voie. Le temps nous en dira bien sûr plus, mais nous ne devrions pas être trop sceptique, c’est une opportunité réelle. Là où Android est un système ouvert sur un matériel fermé, en devenant ainsi de fait semi-fermé, nous avons une chance de développer Wave avec une foule d’outils libres et ouverts basés sur l’API et le protocole de Wave.

Google a livré quelques informations sur le fait de conserver le code source ouvert. Mais jusqu’à présent, ils n’ont publié aucun code source (à l’exception peut-être pour la version développeur, dont je ne fais pas partie), Cependant, même s’ils conservent les sources de l’API fermées, disposer d’un protocole ouvert (et d’une licence libérale) signifie que nous pouvons créer des outils qui utiliseront ce protocole et que ceux qui utiliseront les outils de Google pourront collaborer avec ces outils libres, du moins en théorie.

Mais qu’est-ce que cela peut nous apporter ?

Pensez à la manière de développer du logiciel libre. Peut-être plus que n’importe quel autre type de produits, le logiciel libre a besoin d’un effort collaboratif intense de la part de ses créateurs. Grâce à SVN, Sourceforge et consorts, nous avons des moyens de partager du code source et nous possédons des outils de communication durant le cycle de développement : wiki, panneaux d’affichage, liste de dicusssions, etc. Imaginez que vous disposez d’une « vague » pour les développeurs d’un projet logiciel. Chaque contributeur, en temps réel s’il le souhaite, dispose d’une conversation sans peur de perdre le fil dans de multiples embranchements. Les nouveaux membres peuvent rejouer la discussion pour comprendre l’état présent. Des fragments de code pourraient être placés à l’intérieur de la conversation et édités en temps réel par les autres membres. Et tout cela se déroule dans un des outils les plus communs, le navigateur. Les rassemblements de développeurs pourraient inclure ceux qui ne peuvent participer physiquement grâce à l’utilisation d’une vague. Les meilleurs esprits ne seront plus exclus parce qu’ils n’ont pu réserver une place dans l’avion[2].

Si cela semble excitant, c’est parce que je m’exalte. Google Wave a le potentiel pour aller bien au-delà du simple buzz pour foules numériques. Wave a la possibilité de réellement faire du bruit et de représenter un grand pas dans la manière dont nous développons du logiciel libre. Évidemment, il m’est venu à l’esprit que les développeurs de logiciels propriétaires pourraient utiliser le même système pour produire leurs logiciels, mais soyons honnêtes : qui de deux est le plus habitué à la collaboration (en réalité, en dépend même) ?

J’ai entendu certaines personnes dire que Google Wave pourrait dépasser Twitter et Facebook d’ici 2011. Je n’en sais rien, et même peu m’importe, mais je crois que Wave peut avoir un impact aussi fort sur le développement de logiciel libre que CVS ou les wikis.

Notes

[1] Crédit photo : Rappensuncle (Creative Commons By-Sa)

[2] Non pas que j’ai entendu que cela arrive, je conjecture juste.