Google+ : Un développeur critique la faiblesse de la plateforme Google+ (traduction complète)
Steve Yegge, développeur sur Google+ et ancien de chez Amazon a publié un (très) long billet sur son profil Google+, au départ uniquement destiné aux employés de Google, mais malencontreusement partagé avec la Terre entière. Dans son billet, Steve Yegge critique ouvertement l’extrême faiblesse de la plateforme derrière Google+ en comparant le réseau social de Google avec les plateformes créées par Amazon, Microsoft, et bien sûr Facebook.
Cet article étant particulièrement intéressant, j’ai pris mon courage à deux main pour vous le traduire, en mettant en gras les passages qui me semblent les plus intéressants. Si vous avez le temps et la volonté de lire ce qui suit, gardez à l’esprit que Steve Yegge s’adresse tout le temps aux employés de Google.
Bonne lecture !
J’ai travaillé chez Amazon pendant six ans et demis, et chez Google depuis aussi longtemps. Il y a une chose qui m’a frappé chez les deux entreprises, une impression qui s’est renforcée de jour en jour : Amazon fait tout mal, et Google fait tout bien. C’est bien évidemment une généralisation un peu facile, mais très juste. Il y a sans doute cent ou deux cent façons de comparer les deux sociétés, et Google surpasse Amazon en tout sauf sur 3 points. J’avais même dressé une liste, mais le département juridique n’a pas voulu me laisser la montrer à qui que ce soit.
Pour vous donner un bref aperçu : Le processus de recrutement chez Amazon est basé sur les équipes, ce sont elles qui recrutent leurs membres, ce qui fait que le niveau est très disparate. Et leurs manières de travailler sont un vrai bordel ; ils n’ont aucune équipe chargée des relations extérieures, ce sont les développeurs qui font tout, ce qui leur laisse très peu de temps pour développer. Ils se foutent complètement du caritatif, leurs bureaux ressemblent à des espèces de grandes granges poussiéreuses sans aucun décor ou zone commune. Les salaires sont dérisoires, et les bénéfices inexistants, jusqu’à ces derniers temps où ils ont du se mettre à niveau par rapport à Google et Facebook. Mais ils n’ont aucun de nos petits extras, ils essayent juste de rester au même niveau salarial, et c’est tout. Leur base de code est un vrai désastre, sans aucun standard sauf ceux choisis par les différentes équipes.
Pour être honnête, ils ont un bon système de versionning que nous essayons d’émuler, et un bon système de souscription sans équivalent chez nous. Mais pour la plus grande partie, ils n’ont que des outils merdiques tout juste capables de lire et écrire des informations sur des bases de données relationnelles. Nous ne voudrions d’aucun de ces outils, mêmes s’ils étaient gratuits.
Je suppose que leur aptitude à lancer de nouveaux produits sans arrêt est quelque chose qu’ils font bien, mais c’est discutable. Lancer de nouvelles fonctionnalités est leur priorité numéro 1, et prime sur absolument tout. Donc même si cette philosophie présente de sérieux avantages sur le marché actuel, elle a créé suffisamment de problèmes pour en faire un énorme défaut.
Il y a toutefois quelque chose qu’ils font vraiment, vraiment très bien, et qui compense à peu près tout le reste.
Jeff Bezos est un micro-manager tristement célèbre. Il micro manage le site d’Amazon jusqu’au moindre petit pixel. Il a engagé Larry Tesler, un ancien de chez Apple, et sans doute l’expert en interaction humain-machine le plus respecté du monde, puis a simplement ignoré en bloc tous les conseils prodigués pendant trois ans, jusqu’au jour où Larry a décidé de partir. Larry a pondu des tonnes d’études concernant l’ergonomie prouvant par A + B que le site est simplement incompréhensible, mais Bezos n’a pas pu lâcher prise sur les millions de pixels sémantiques composant la page d’accueil. Ils sont comme ses enfants, et ils sont resté, contrairement à Larry.
Le micro-management n’est pas cette troisième chose qu’Amazon fait mieux que nous. Je veux dire, ils micro-managent très bien, mais ce n’est pas une force. Pour vous replacer dans le contexte, nous parlons ici d’un homme qui a maintes fois dit lors de conférences publiques que ceux désirant travailler pour Amazon devrait le payer. Il brandit des post-its jaunes avec son nom dessus, rappelant à tous “qui gère cette entreprise” lorsque quelqu’un est en désaccord avec lui. Cet homme est du même calibre que Steve Jobs… Sans le sens de l’innovation et du design. Bezos est super intelligent, ne vous méprenez pas.
Un jour, Bezos a publié un mandat. Il fait ça tout le temps, et tout le monde tremble à chaque fois que cela se produit. Mais à une occasion, vers 2002 je pense, son mandat a été si violent, si énorme, qu’à côté tous ses autres mandats ressemblaient à des bonus non sollicités.
Son énorme mandat ressemblait à ceci :
- Toutes les équipes devront dorénavant exposer leurs données et leurs fonctionnalités via des services interfacés.
- Les équipes doivent communiquer entre elles via ces services.
- Il n’y aura plus aucune autre forme de communication autorisée : pas de liens directs, mais des consultations de données d’autres équipes, pas de modèles partagés, etc. La seule forme de communication autorisée est via ces services sur le réseau.
- Peu importe la technologie utilisée : HTTP, Corba, Pubsub, protocoles maison. Bezos s’en fou.
- Tous les services, sans aucune exceptions, doivent être conçu afin d’être externalisables. C’est à dire que chaque équipe doit prévoir que leurs services seront exposés aux développeurs dans le monde extérieur. Aucun exception.
- Quiconque ne suivant pas ces règles sera viré.
- Merci, passez une bonne journée !
Le 7) est évidemment une boutade que j’ai rajouté ! Bezos se tape complètement de votre journée.
le 6) par contre est très réel, alors tout le monde s’est mis au travail. Bezos a désigné deux Bulldogs en chef pour superviser les projets, dont Rick Dalzell, ex ranger de l’armée, ex boxer, ex tortionnaire en chef slash CIO de chez Wal*Mart. Autant vous dire que les projets ont avancé à vitesse grand V.
Cette initiative était encore en cours lorsque j’ai rejoint Google à la mi-2005, mais touchait à son terme. Du moment où Bezos a dicté sa volonté, au moment où je suis parti, Amazon s’était transformé culturellement en une société résolument tournée vers les services. C’est désormais fondamental dans leurs façons de travailler.
A ce jour, ils ne se plient plus à cette règle par peur d’être viré. C’est sur ils redoutent toujours cette éventualité, mais cela fait partie de la vie quotidienne. Ils font des services parce qu’ils ont compris que c’était la chose à faire. Bezos s’était rendu compte avant tout le monde que Amazon devait être une plateforme.
Vous ne pensiez pas qu’une boutique de vente de livres en ligne avait besoin d’une plateforme extensible, n’est-ce pas ?
La première chose qu’a réalisé Bezos, c’est que l’infrastructure qu’ils ont construit pour vendre des livres pouvait être transformée en une vaste plateforme informatique. Ils disposent maintenant de Amazon Elastic Compute Cloud, et de Amazon Elastic MapReduce, et du Service Amazon de Bases de données relationnelles, et tout un tas d’autres services disponibles sur aws.amazon.com. Leurs services sont utilisés par de nombreuses sociétés, comme Reddit.
La seconde révélation de Bezos est que vous ne pouvez pas toujours créer le bon produit, vous ne pouvez pas proposer un produit qui conviendra à tout le monde. Il a compris ceci. Et cet concept a un nom : l’accessibilité. C’est le terme le plus important dans le monde informatique.
C’est le plus important.
Si vous pensez “hm? l’accessibilité pour les aveugles et les mal-voyants ?”, vous n’êtes pas seul, énormément de gens réduisent le concept de l’accessibilité aux utilisateurs handicapés. Lorsqu’un logiciel, ou un site Web dans ce cas, n’est pas accessible à tout le monde, c’est un défaut d’accessibilité.
Comme tout dans la vie, l’accessibilité a un jumeau maléfique, nommé la sécurité.
J’aimerai cependant vous convaincre que l’accessibilité est plus importante que la sécurité, car réduire l’accessibilité à zéro vous laisse sans aucun produit, alors que réduire la sécurité à zéro vous laisse tout de même avec un produit ayant du potentiel, comme Playstation Network.
Donc oui, comme vous l’avez remarqué, je pourrai écrire un livre sur le sujet. Un gros livre bien épais, rempli d’anecdotes désopilantes et de références sur les entreprises chez lesquelles j’ai mis les pieds. Mais aucun éditeur n’accepterait de publier un tel essai, et vous ne pourrez jamais le lire, sauf si je commence à résumer.
Ce dernier point que Google ne fait pas bien, c’est la plateforme. Nous ne comprenons pas le concept même de plateforme. Nous n’avons pas de plateformes. Cette vérité s’est imposée à moi au cours des six dernières années. J’ai un temps espéré que la pression exercée par Microsoft, Amazon, et plus récemment Facebook nous réveillerait collectivement et nous pousserait à créer des services universels.
Mais non, c’est devenu une des nombreuses priorités secondaires. Certaines équipes prennent l’idée très au sérieux, mais la plupart n’y pensent tout simplement pas. Ils considèrent qu’ils font créer des produits, pas des plateformes.
Un produit est totalement inutile sans plateforme. Pour nuancer, un produit sans plateforme sera toujours remplacé par son équivalent avec une plateforme.
Google+ est l’exemple parfait de notre échec à comprendre les plateformes, jusqu’aux plus hauts niveaux hiérarchiques (salut Larry, Sergey, Eric, Vic !). Personne ne comprend. La règle d’or des plateforme est : Mangez votre propre nourriture. La plateforme Google+ est pathétique. Nous n’avions aucune API au lancement, et la dernière fois que j’ai vérifié, nous avions un seul appel à une API, celle qui permet de récupérer le flux de quelqu’un.
Microsoft applique la règle d’or depuis au moins vingt ans. Elle fait partie intégrante de leur culture depuis une génération. Vous ne mangez pas des mets de luxe pour donner de la nourriture pour chien aux développeurs. Faire ça revient tout simplement à privilégier le succès à court terme. Les plateformes sont sur le long terme.
Google+ est un produit basé sur des études sur le court terme, fondé sur la notion erronée selon laquelle Facebook connaîtrait le succès grâce à leur excellent produit. Ce n’est pas la raison de leur succès. Facebook marche du tonnerre car il est créé une constellation de produits permettant à d’autres de faire le boulot. Facebook est unique selon la personne à qui vous parlez. Certains passent leur temps sur Mafia Wars, d’autres sur Farmville. Il existe une multitude de façon d’utiliser Facebook, chacun y trouve son bonheur.
Notre équipe Google+ a étudié le marché, et s’est dit “oh, il semble que nous aillons besoin de jeux ! Allons passer quelques contrats avec des gens qui créeront des jeux pour nous”. Vous commencez à voir pourquoi cette façon de penser est si mauvaise ? Nous essayons de prédire les besoins des gens, et de les satisfaire.
Vous ne pouvez pas faire ça. Pas de façon fiable. Très peu de personnes dans le monde ont su fonctionner de la sorte, comme Steve Jobs. Nous n’avons pas de Steve Jobs chez nous, désolé de vous l’apprendre.
Larry Tesler a su convaincre Bezos qu’il n’était pas Steve Jobs, mais Bezos a réalisé qu’il n’avait pas besoin d’être Steve Jobs pour proposer à tout le monde le bon produit : des interfaces et des cadres de travail que tout le monde sait utiliser. Il lui suffisait de permettre à des développeurs tiers de le faire, et ce serait automatique.
Donc oui, Microsoft a compris. Et vous savez aussi bien que moi que c’est très surprenant, puisqu’ils ne comprennent en général pas grand chose. Mais ils comprennent les plateformes, et c’est sans doute parce qu’ils ont commencé leur métier en offrant des plateformes. cela fait trente ans qu’ils maîtrisent le sujet. Et si vous allez sur msdn.com pour la première fois, préparez-vous à être impressionné. C’est tout bonnement énorme. Ils ont des milliers d’API. Ils ont construit une plateforme gigantesque. Peut-être trop grosse pour la gérer correctement, mais ils ont le mérite de l’avoir fait.
Amazon l’a compris. aws.amazon.com est incroyable. Allez-y, vous allez voir, c’est embarrassant. Nous n’avons aucune de ces choses.
Apple l’a compris, évidemment. Ils ont fait des choix fondamentalement opposés à l’ouverture, surtout au niveau de leur plateforme mobile, mais ils comprennent le concept d’accessibilité et ils comprennent le potentiel des développeurs tiers. Les équipes d’Apple utilisent les mêmes outils que les autres développeurs. Leurs APIs sont beaucoup plus propres que celles de Microsoft, et sont devenues incontournables.
Facebook l’a compris. C’est ce qui m’inquiète le plus. C’est ce qui m’a poussé à écrire ce billet. Je déteste bloguer, je déteste … plusser, ou quelque soit le nom que vous donnez au fait de publier un énorme article sur Google+. Mais je veux vraiment que Google réussisse, vraiment. Je veux dire, Facebook me veut, et je pourrai y aller. Mais Google c’est chez moi, j’insiste donc pour que nous ayons cette intervention familiale, aussi désagréable que cela puisse être.
Après avoir visité les plateformes de Microsoft, Amazon et Facebook, allez donc voir developers.google.com. Vous voyez la différence ? C’est un peu ce que votre neveu de 12 ans pourrait faire s’il devait démontrer ce qu’une grosse entreprise peut faire en ayant comme unique développeur un un élève de 6ème.
Ne vous méprenez pas. Je sais de source sûre que l’équipe chargée des relations avec les développeurs a du se battre bec et ongle pour que ce site soit accessible de l’extérieur. Ils font un excellent travail, ils comprennent l’idée de plateforme, et ils se démènent comme ils peuvent pour en créer une dans un environnement résolument anti-plateforme.
Le site developers.google.com est une énigme pour moi. Où est l’API Maps ?? certains des projets sont des labs. Et les API sont toutes minables. Comparées aux API que nous utilisons en interne, c’est de la pâtée pour chien.
Les rares équipes qui ont su externaliser les plateformes dès le départ ne sont pas légion. Maps et Docs sont un exemple, et je sais que Gmail est en train de s’y mettre. C’est cependant très dur pour eux d’avoir du financement, car ce n’est pas dans notre culture. L’équipe de Google Docs sait qu’ils ne seront jamais compétitifs face à la plateforme soutenant Microsoft Office. Prenez par exemple App Scripts, qui ne fonctionne que dans les feuilles de calcul, et sans prendre en charge les raccourcis clavier. Cette équipe semble un peu délaissée.
C’est ironique, mais Wave était une excellente plateforme, qu’elle repose en paix. Être une plateforme ne vous garantit pas le succès. Une plateforme a besoin d’un produit phare. Pour Facebook, le service principal, c’est à dire les murs et les amis etc, est leur produit phare de la plateforme Facebook. Et il serait idiot de penser que le produit Facebook en serait à ce stade sans la plateforme.
Conséquence de tout ça, nous avons un navigateur qui ne vous permet même pas de choisir la taille de la police. Parlez d’un affront à l’accessibilité. Je veux dire, je ne rajeunis pas, et je devient tous les jours un peu plus aveugle. Pour de vrai. La sélection de la police devient un point crucial. Mais l’équipe de Chrome est particulièrement arrogante sur le sujet : ils veulent construire un produit ne nécessitant aucune configuration, et ils en sont très fiers, et allez vous faire voir si vous êtes aveugle ou autre. Vous pouvez toujours faire Ctrl +/- sur chaque page que vous visitez pour le reste de vos jours.
L’intégralité de Google est dans ce cas. Nous sommes une entreprise de produits. Nous avons créé un produit qui a connu un énorme succès, je parle de notre moteur de recherche, et ce succès a obscurci notre jugement.
Amazon était aussi une entreprise à produit, et il a fallut un argument solide pour faire comprendre à Bezos la nécessité de se doter d’une plateforme. Cet argument étaient les marges toujours plus minces d’Amazon, Bezos devait trouver une solution. Mais tout ce qu’il avait était quelques ingénieurs et tous ces ordinateurs… Si seulement ils avaient pu être monétisés… Voilà comment l’idée de AWS est née.
Microsoft a débuté en tant que plateforme, ils avaient donc beaucoup d’expérience en la matière.
Facebook, par contre, ils m’inquiètent. Je ne suis pas un expert, mais je suis à peu près certain qu’ils ont débuté avec seulement un produit, et qu’ils ont su prendre les bonnes décisions aux bons moments. Mais je ne sais pas comment ils ont effectué la transition vers la plateforme. C’était il y a longtemps, puisqu’ils devaient déjà être une plateforme avant le lancement d’applications comme Mafia Wars.
Peut-être nous ont-ils regardé et se sont demandé : “Comment pouvons-nous battre Google ? Qu’est-ce qu’il leur manque ?”
Le problème auquel nous faisons face est assez énorme, et il nous faudra affronter un changement d’ordre culturel pour y arriver. Nous ne faisons pas de plateformes orientées services en interne, et sûrement pas en externe. Personne chez Google ne comprend l’intérêt de la plateforme : les chefs de projet ne comprennent pas, les ingénieurs ne comprennent pas, les équipes produits ne comprennent pas, personne ne comprend. Même si certains individus comprennent, même si VOUS comprenez, cela ne changera rien à moins que nous y fassions face ensemble en urgence. Nous ne pouvons pas continuer à lancer des produits en prétendant que nous les transformerons en de magnifiques plateformes extensibles plus tard. Nous avons essayé, ça ne fonctionne pas.
La règle d’or des plateformes pourrait être reformulée en “Commencez avec une plateforme, et utilisez-la pour tout“. Demandez aux équipes de MS Office ou d’Amazon : si vous ne le faites pas tout de suite, ça sera dix fois plus compliqué de le faire plus tard. Vous ne pouvez pas tricher. Vous ne pouvez pas créer des API secrètes en interne ayant des priorités supérieures. Vous devez résoudre les problèmes complexes d’abord.
Je ne dis pas que c’est trop tard pour nous, mais plus nous attendons, plus nous nous rapprochons du point de non retour.
Je ne sais pas trop comment conclure. J’ai dit à peu près tout ce que j’avais à dire aujourd’hui. Je suis désolé si je n’ai pas été assez gentil, ou si j’ai mal parlé d’un produit, d’une équipe ou d’une personne, ou si nous faisons en fait énormément de plateformes et que je n’en ai jamais entendu parler.
Mais nous devons commencer à faire les choses bien.
>>> Il fait encore partie des équipes de Google ce monsieur ??? <<<
… parce que quand même, il y va pas avec le dos de la cuillère !
C'est un peu long mais très instructif.
Matt
Eh bien en fait c’est hyper intéressant ce que dit ce fameux Steve.
Je m’étais dit mince quand même il est gonflé, même si google a fait des erreurs selon moi, il n’y a tout de même pas dénigrer..
Mais en fait ce mec aime Google et son entreprise..
Tout simplement énorme. Et vrai. Et bien écrit !
Un grand merci pour cette fastidieuse traduction !
PS: sur mon chrome 14, le ctrl+ et – fonctionne ?!
Pour le reste, je trouve aussi que les interactions entre les diffrents produits de google pourraient etres meilleurs.
Je peux balancer mon flux Greader sur facebook et pas sur Gplus … cercher l’erreur
Oui ctrl+ et – fonctionne mais tu dois le faire pour chaque page que tu visites, tu peux pas regler la police pour toutes les pages.
C’est vrai que google fait des produits super mais les liaisons entre reste limitées.
Avec l’ancien reader, je pouvais balancer mes flux préférés sur mon site pro sans que les lecteur fasse le lien avec mon profil et surtout sans avoir à créer un compte.
depuis la nouvelle version et plus d’export de flux, c’est fini.
le pire c’est que le peut le mettre dans mon facebook pro mais sur blogger, ça merde.
bravo les gars