Monthly Archives: October 2007

Les Web Services sont les DRM du Software as a Service

Les Web Services sont les DRM du Software as a Service (SaaS) et les API Restfull en sont le mp3.

C’est Christian Fauré dans un commentaire sur un billet précédent qui m’a inspiré cette réflexion. Dis comme cela, ça semble un peu cryptique, un décodage s’impose donc.

Pour commencer quelques précisions sur le vocabulaire:

Web services: au sens du w3c ou “big Web services”, avec toute la stack SOAP + WS-*

DRM: Digital Right Management au sens CRAP: Contenu, Restriction, Annulation et Protection Ce sont ces technologies utilisées pour contrôler/limiter l’usage qui est fait de la musique téléchargée en ligne, par exemple pour restreindre la copie.

Software as a Service: Logiciel disponible sous forme de services accessibles en ligne au travers d’une interface web et d’une API.

API RESTfull: Interface de programmation respectant les principes énoncés par REST, en particulier API centrée sur la notion de ressource plutôt que de service.

Les Web Services, bien que se voulant réutilisables, imposent une manière d’accéder aux données au travers de l’interface qu’ils définissent. Ils présupposent certains type d’utilisation. Ce faisant ils limitent/contrôlent ce qu’il est possible de faire avec ces données comme le font les DRM avec la musique.

Les Web Services ne sont pas réellement intéropérable, ils fonctionnent bien sur la plateforme .net ou JEE, ils fonctionnent bien si l’on se sert des outils IBM ou Microsoft, ils fonctionnent péniblement entre .net et JEE, ils ne fonctionnent pas ou mal avec d’autres plateforme: php, ruby, python,… Tout comme un fichier aac d’apple fonctionne bien avec le logiciel itunes et les lecteurs ipod ou les fichiers wma DRMisés de Microsoft fonctionne bien avec les lecteurs “play for sure” et le logiciel windows media player. Mais ils ne marchent pas avec mon lecteur mp3 ou mon OS Linux.

Alors que les fichiers mp3 sont lisibles avec tous les lecteurs du marché et tous les logiciels. Il en va de même avec les services RESTfull, reposant sur des technologies simples et éprouvées: HTTP et XML, ils sont utilisables dans tous les environnements (java, .net, php, ruby, python, perl, script,…) avec n’importe quel outillage (du notepad à eclipse en passant par visual studio).

Enfin une API RESTfull en exposant des ressources plutôt que des services ne présuppose pas de l’utilisation qui sera faite des données exposées. Sans à priori sur les utilisations futures des données une API RESTfull ne limite pas l’usage qui sera fait des données (au contraire des DRM) et maximise les possibilités de réutilisation et de mash-up.

Un service web devrait être un site web navigable par des robots

RESTfull Web services

Information R/evolution

Nous sommes passé d’un monde analogique où l’information est porté par des éléments physiques (CD, étagères, livres, journaux, …) à un monde digital où l’information est libre de toutes contraintes physiques. Nous pouvons donc l’organiser de manière différente, plus efficace. Tout cela vous semble trop abstrait? Où trop abstrait pour tout ceux qui sont pas des “digital natives”? Heureusement Michael Wesch , de l’université de l’état du Kansas, l’illustre en vidéo.
[youtube=http://youtube.com/watch?v=-4CV05HyAbM]

Il n’en est pas à son coût d’essai puisqu’il était déjà l’auteur de cette vidéo sur le Web2.0: The Machine is Us/ing Us

[youtube=http://youtube.com/watch?v=NLlGopyXT_g]

Et ça ne s’arrête pas là puisqu’il a aussi produit cette vidéo: A Vision of Students Today, un message ses étudiants qui sont ce qu’on appel désormais la génération Y.

[youtube=http://youtube.com/watch?v=dGCJ46vyR9o]

Ces vidéos font partit d’un projet d’étude: Digital Ethnography

J’attends déjà avec impatience la prochaine vidéo

De l’open source à l’open data

“Le débat propriétaire vs open source vs free software est complétement obsolete aujourd’hui avec le SaaS qui a l’immense mérite de valoriser le logiciel.”
Julien Cordoniou Microsoft

Cette déclaration m’inspire deux réflexions:

“Le Saas valorise le logiciel” ???

Hum pas sûr de bien comprendre. Pour moi le Saas ne valorise pas le logiciel, il valorise les opérations: la capacité à exécuter, à capacité à monter en charge, la capacité à faire tourner le logiciel qui devient de plus en plus une commodité. On l’oublie trop souvent le succès de Google n’est pas seulement dû à la pertinence de son algorythme pagerank mais aussi à sa capacité à faire tourner la plus grande ferme de serveur du monde à un moindre coût.

“Le SaaS rend obsolete le débat propriétaire vs open source”

Oui, et ça doit être un sacré soulagement pour Microsoft. Un service en ligne ne peut pas être open source, on a accès au service, pas au code. Il n’est plus possible de “gratter là où ça démange, pas possible de “Scratching itches in the cloud” comme l’explique Tim O’Reilly. Le débat code fermé VS n’aura donc bientôt plus de sens (d’ailleurs même Microsoft commence à ouvrir son code) mais le débat fermé VS ouvert n’est pas prêt de s’éteindre.
Le problème est en train de se déplacer du code vers les données. Vous savez tous vos mails, votre agenda, vos vidéos, vos images qui sont stockés chez google… Heureusement pour l’instant la pluspart de ces données sont ouvertes vous pouvez les sortir de google en pop pour les mails, en utilisant gdata pour le reste. Mais en sera t-il toujours ainsi? Il était possible d’accéder aux résultat de recherche de google à travers une api ouverte (enfin presque s’était du soap quand même) mais google l’a fermé pour la remplacer par une api ajax fermé qui lui permet de garder le contrôle sur la représentation de la donnée et d’y mettre sa pub.

Le graphe social ou les réseaux sociaux
social-graph.jpg
Autre exemple le fameux “social graph”, vous savez les réseaux sociaux, qui connaît qui, qui est ami avec qui? Vous recevez à longueur de journée des mails vous demandant d’accepter untel comme ami sur fessebouck, linkedin, viadeo… Pourquoi cet effort dupliqué? Parce qu’aucun de ces sites n’ouvrent l’accès à la donnée du social graph.

Facebook a été très subtil, ils n’ont pas ouvert l’accès à la donnée mais ont ouvert une api permettant de développer dans facebook des applications utilisant le “social graph”, brillant ! Comme lockin on fait difficilement mieux.

A signaler cette initiative Thought on the social graph pour créer un “graph social” décentralisé, ouvert et libre.