lundi, septembre 17, 2007

Internet / Web 2.0 comme plate-forme: les 3 niveaux de Marc Andreessen

Marc Andreessen, père du 1er navigateur Internet Mosaic puis fondateur de Netscape (qui a ouvert la voie à toutes les entrées en Bourse de la première bulle) livre aujourd'hui une analyse très profonde sur l'Internet ou le web en tant que plate-forme. Il veut ainsi recadre ce terme que la majeure partie des startups du moment ont tendance à utiliser pour "être (paraître ?) dans la tendance"!

Plate-forme, késako ? Pour M. Andreessen, c'est très simple: un système peut prétendre au titre de "plate-forme" si et seulement si il est programmable (i.e. adaptable) par des programmeurs distincts de ses concepteurs pour lui faire faire des choses non prévues par ces concepteurs ou hors de leur sphère d'intérêts / de priorité.

C'est la définition de toutes les générations précédentes de matériels informatiques précédentes: mainframes, mini, PCs, etc... voire de certains logiciels applicatifs (de type ERP par ex.) offrant des interfaces de programmation (APIs) permettant d'en modifier le comportement.

Partant de ce principe, M. Andreessen propose d'ignorer voire renier tous les services qui s'appellent plate-forme alors qu'ils ne sont pas programmables "de l'extérieur".

Au-delà des plates-formes informatiques "standards" citées plus haut, l'Internet permet de réaliser des plates-formes distribuées (... donc plus complexes!) à travers les liaisons permanentes à très haut débit avec lesquelles il a capillarisé la planète.

Les applications basées sur la plate-forme Internet sont composées de multiples éléments souvent répartis au travers de la planète. C'est ce que j'ai déjà appelé "Linternux"plusieurs reprises).

M. Andreessen classe ensuite ces plates-formes actuellement émergentes en trois niveaux (sans jugement de valeur):
  • Niveau 1 = API de service (distant): les services distants (avec API): Flickr, Del.icio.us, EBay, Amazon, Google, Yahoo ont été les premiers prestataires à offrir ces APIs de service distantes qui permettent de piloter leurs systèmes pour en extraire des données et leur faire faire des choses autres que les services rendus par l'interface Web de l'application de base du prestataire. Ce niveau 1 a permis l'émergence des mashups où un développeur combine via ces APIs de service (de manière additive ou multiplicative) les données disponibles pour fabriquer sur son propre site un nouveau service bien distinct tant "géographiquement" (autre serveur) que graphiquement (interface utilisateur différente).
Commentaire: Pour Andreessen, le défaut de ce niveau 1 est justement la séparation de l'application utilisatrice du niveau 1: il faut construire un nouveau site en entier avec le logiciel, le matériel, un design agréable, etc... Heureusement que les S3 ou EC2 d'Amazon ont été conçus pour limiter les dégâts: Jeff Bezos, le CEO d'Amazon, estime qu'il peut ainsi faire économiser jusqu'à 70% de cet effort d'infrastructure par l'utilisation de ses services qui sont d'ailleurs eux-mêmes des plates-formes. Ce niveau 1 représente donc pour M. Andreessen une barre financière et technologique encore trop élevée qui freine ainsi l'innovation.

Bien sûr, le niveau 1 est le plus sûr pour l'offreur d'APIs: son client est externe et il est ainsi facile de limiter les dégâts de mashups mal architecturés: ils ne font de la casse que chez eux!
Commentaire: dans le cas du niveau 2, l'application est toujours externe: elle tourne sur le même serveur distant qu'au niveau 1 mais le résultat est présenté sur le "grand site" au lieu du site de mashup. Le cas d'école dramatique du niveau 2 est bien illustré par ce billet de Jean-Marie: le développeur de talent se trouve submergé par son succès et ne peut pas faire face financièrement. Il n'a pas encore réfléchi à la monétisation solide de son service qu'il lui faut déjà faire face à la horde de visiteurs en provenance de Facebook et louer des tonnes de serveurs.... Résultat: le service s'écroule ou le développeur doit vndre à la sauvette en laissant ainsi beaucoup d'argent sur la table si on compare à une situation où il aurait gagné plus mais moins evite en prenant le temps de construire solidement via des partenaires investisseurs.

Le grand avantage initialement perçu ('audience énorme instantanée) du niveau 2 devient finalement le coup fatal , c'est que le développeur voit son application immédiatement bénéficier de l'audience directe du site Le niveau 1 est plus graduel donc meilleur pour celui qui veut construire pour l'avenir: il faut en effet toujours plus de temps que prévu pour se faire connaître si on part isolé.

Dans le niveau 2, le Facebook-like prend aussi un risque: son image peut être chahutée si les services pluggés cafouillent. La majorité des utilisateurs vont lui attribuer le souci. Mais bon, il dispose du tableau de commande alors il peut couper!...
  • Niveau 3 = plate-forme runtime: C'est l'extension du niveau 2 pour annihiler les problèmes d'infrastructure. Le prestataire offre un environnement d'exécution complet au développeur sur lequel celui-ciC télécharge son application et ne s'occupe ensuite pas de son exploitation. Adieu les soucis de matériel et coûts afférents! Le développeur n'a plus besoin de ressources financières: son temps suffit... Il peut par ailleurs rester 100% focalisé sur la correction de ses bugs et l'implémentation de nouvelles fonctions. [Le prestataire a lui bien sûr une problématique très complexe: sécurité, "gérabilité", performances, etc...). Puisque l'environnement d'exécution devient homogène et pour en accélérer encore l'évolution, M. Andressen suggère de lui appliquer une dynamique favorisant l'échange (gratuit ou payant) de code entre les développeurs

Commentaire: Marc Andreessen développe actuellement une telle plate-forme: c'est Ning qui est déjà riche de 100'000 applications (de "granularité" très diverse sûrement ...) selon son billet . Il suggère aussi que SalesForce.com devient une telle plate-forme de niveau 3 (restreint à sa spécialisation du support aux forces de ventes). Second Life est aussi dans ce créneau avec toutes les extensions logicielles qu'il permet.

Ma conclusion: les niveaux 2 et 3 me paraissent très dangereux pour le développeur isolé:
  • il livre aux grands sites qui l'accueille toutes ses idées
  • il les réalise "en live" ce qui permet de voir tout de suite ce qui marche de ce qui ne marche pas
  • cela se passe tellement vite (puisque le site a déjà des millions d'utilisateurs...) que le développeur doit décider très vite: je vends mon prototype tout de suite (en tant que tel donc moins cher...) ou je risque de tout perdre
Finalement, les niveaux 2 et 3 ne font qu'exacerber ce que promettait le niveau 1 (les mashups): un outsourcing (gratuit!) pour les grands de leur R&D qu in'ont plus qu'à acquérir ou recopier ce qui marche avec une dose de risque devenue infime...

Même s' ils jouent le jeu de la monétisation partagée par ses règles, les goliaths sortiront toujours vainqueur par le truchement du nombre très limité d'agrégateurs que permet un Internet global. Ce reseau favorise une concurrence forte où tout service se bat sans frontière ni distance contre tous ceux qui font la même chose: il n'y aura toujours que quelques grands fleuves financiers basés sur la consolidation des multiples ruisselets-mashups!

Et vous, qu'est-ce que cela vous inspire ces niveaux de plate-forme Internet?

Source: blog Media & Tech (par didier durand)

4 commentaires:

Jean-Marie Le Ray a dit…

Wow! Intéressantissime, je viens de découvrir ton billet, que je vais m'empresser (dès que j'aurai un peu de temps :-) de décortiquer, il y a matière !
J-M

d.durand a dit…

Salut Jean-marie,

merci!

didier

Raphael a dit…

Tres intéressant cet article. En plus c'est basé sur l'observation d'un des fondateur de l'internet moderne. Dans mon blog j'ai moi aussi écrit sur les API et sur les implications de leurs utilisations.

http://internetdiscovery.blogspot.com/2007/08/be-api.html

d.durand a dit…

Salut Raphael,

Je viens de découvrir adonomics grâce à ton article.

merci!
didier