La culture Microsoft

La culture de toute entreprise est fortement influencée par deux facteurs. La personnalité de son(ses) fondateur(s) – du moins le plus proéminent – ainsi que les challenges que l’entreprise a du surmonter à ses débuts. Ces deux aspects façonnent une très grande partie de la « personnalité » d’une entreprise.

Après Apple et avant Google, j’examine cette semaine Microsoft. S’il a également été co-fondé par Paul Allen, c’est Bill qui a plus influencé Microsoft – en partie parce qu’Allen a du se retirer en 1983 du fait de problèmes de santé.

Bill Gates l’hyper-compétitif

Bill Gates est de notoriété publique hyper-compétitif. Quel que soit le jeu, aussi insignifiant soit-il, il veut gagner. Bill ne veut pas être le meilleur mais le numéro un.

Aux débuts de Microsoft, il y avait un pari au sein de la compagnie: qui partirait le dernier pour l’aéroport sans louper son vol? Bill a gagné en garant sa voiture devant le terminal et non pas au parking. Cet épisode est caractéristique du géant du logiciel: gagner à tout prix, même si le coût ne justifie pas la victoire (comme  sa voiture embarquée à la fourrière).

Et Microsoft s’est rendu célèbre pour des coups fourrés plus ou moins légaux. A tel point que ces pratiques lui a attiré plusieurs procès pour abus de position monopolistique. Pendant leur procès contre la justice américaine, Microsoft a même été jusqu’à truquer une vidéo qu’ils ont produit pour tenter de prouver un de leurs arguments.

Une autre conséquence est que Microsoft doit avoir un adversaire. C’est presque vital pour Redmond. Repérer un nouveau marché, combattre les géants établis sur ce marché et les renverser est presque sa raison d’être.

Cela se traduit pour la compagnie par un mélange d’excitation et de peur. Lors de la guerre entre Microsoft et Netscape pour le contrôle du navigateur Web, les développeurs d’Internet Explorer travaillaient jour et nuit – ils avaient tous leur sac de couchage dans leur bureau. La lutte contre Netscape n’était pas simplement gagner un nouveau marché mais était vécue comme une question de survie pour Redmond. Une war room a été mise en place. Les slogans de Marc Andressen (surtout ceux visant Microsoft) étaient placardés sur les murs.

Cette obsession paranoïaque est peut-être exagérée, mais c’est ce qui fait avancer Redmond. On disant pendant un temps que Bill Gates connaissant ses adversaires mieux qu’ils ne se connaissaient eux-même. Ce n’est peut-être plus vrai, mais Microsoft sous-estime très rarement ses adversaires.

Bill, un geek businessman

Bill Gates est à la fois un geek et un businessman. Il peut discuter des avantages et inconvénients d’IPv6 et la seconde d’après parler stratégie de haut niveau.

Son point fort est cependant son côté businessman. Autant Steve Wozniak, co-fondateur d’Apple, était connu pour être un génie de l’électronique, autant Bill Gates n’a jamais été connu pour être un génie de la programmation. Il était sans doute d’un bon niveau, mais pas du niveau d’un Sergey Brin ou d’un Larry Page qui ont conçu un moteur de recherche qui dépassait tout ce qui existait.

La véritable force de Gates c’est son sens des affaires. Sur ce point, c’est un excellent businessman.

L’épisode de la création du PC est révélateur. Lorsqu’en 1980 IBM a cherché un système d’exploitation pour son futur PC, ils ont tout d’abord contacté Microsoft. N’ayant que le langage (MS-BASIC) mais pas de système d’exploitation, Bill Gates les a invités à contacter Gary Killdal, fondateur de Digital Research, qui avait un système d’exploitation: CP/M. Mais lorsque IBM est venu frapper à la porte de Killdal, ce dernier les a envoyés paître! Microsoft a donc proposé à IBM de s’occuper du système d’exploitation.

Paul Allen, co-fondateur de Microsoft, connaissait une petite société locale, Seattle Computer Products, qui avait développé un système d’exploitation pour Intel nommé QDOS (pour Quick & Dirty Operating System). Pour$25000 Microsoft a acquis les droits de vendre QDOS à un seul fabriquant d’ordinateur – mais s’est gardé de dire qu’il s’agissait d’IBM. Il a acquis par la suite les droits complets pour $50000 de plus.

On voit la différence entre Seattle Computer et Microsoft. D’un côté une société qui a développé un produit qu’en bons geeks ils ont appelé « Quick & Dirty » (« vite fait mal fait ») et qui l’ont vendu pour $75000, sans doute pensant faire une bonne affaire. De l’autre côté une société qui a renommé le même produit PC-DOS (Personal Computer Disk Operating System) et battit un empire avec.

On voit également la différence entre Digital Research qui n’était pas plus intéressé que ça de faire affaire avec IBM (Digital Research a par exemple refusé de signer l’accord de confidentialité que demandait Big Blue) et Microsoft qui était près à tout pour traiter avec IBM, voyant le marché que ce dernier pouvait leur apporter. Microsoft a signé tous les accords de confidentialité que Big Blue demandait et s’est décarcassé pour leur trouver un système d’exploitation.

Il est intéressant de noter que s’il est un homme d’affaire hors pair, Bill Gates n’est pas un visionnaire, contrairement à ce que beaucoup de gens pensent. Microsoft s’est lancé dans le marché des systèmes d’exploitation non pas parce qu’ils ont vu un gros marché mais uniquement pour faire plaisir à IBM, ayant peur que ce dernier trouve une autre compagnie à qui acheter un BASIC. Plus tard, dans son livre The Road Ahead (1995), Bill a complètement ignoré l’avènement d’Internet. Tout comme il a été pris de court par la montée en puissance de Google. La seule exception à la règle est le tout premier marché visé par Microsoft, lorsque Gates et Allen ont décidé d’écrire des logiciels dés que le tout premier micro-ordinateur est sorti (l’Altair en 1975).

Bill et l’argent

En parallèle avec son sens aigu des affaires, Bill (et par extension Microsoft) est fortement motivé par l’argent. Les porte-parole de Gates affirment que la seule chose qui motive ce dernier est de concevoir des bons produits. Il n’empêche:

  • L’un de ses jeux favoris à l’école était le poker (on retrouve une fois de plus son aspect compétitif)
  • Bill n’a pas vu initialement l’intérêt d’Internet, considérant ce dernier comme un réseau où tout était gratuit. « Il n’y a pas d’argent à se faire. En quoi est-ce un business intéressant? » a-t-il répondu à un de ses employés qui tentait de le convaincre de l’utilité du Réseau des réseaux.
  • Microsoft ne s’est intéressé à Google que lorsque celui-ci a commencé à dégager d’importants bénéfices.
  • L’action de Microsoft est (était?) visible partout au sein de la compagnie. Ceci est à contraster avec Google où ils infligent une amende à tout employé pris en train de jeter un coup d’œil à l’action Google.

Le besoin de renverser des géants

Bill Gates n’est pas un visionnaire comme Steve Jobs. Il ne sait pas voir un marché avant tout le monde. Microsoft a donc dû développer d’autres compétences pour compenser.

Parfois Redmond a eu de la chance. Cela a été le cas lorsque IBM a frappé à sa porte pour construire son PC. Mais la chance seule ne suffit pas au long terme. Microsoft a donc du apprendre à conquérir des marchés déjà occupés plutôt que d’être un pionnier – chose facilité par l’aspect hyper-compétitif de la compagnie.

Et Redmond a un bon palmarès en la matière. Les méthodes employées ont été multiples: s’appuyer sur ses produits existants (Windows), continuer d’attaquer jusqu’à ce que les concurrents fassent des erreurs… et parfois en utiliser des méthodes discutables.

Créer des produits

Aucune entreprise de high tech ne peut tout créer en interne et survivre. Sur ce point, Microsoft est agnostique et est une des compagnies qui a utilisé le plus de moyens pour ajouter de nouveaux produits à son catalogue.

Redmond a en effet acheté des compagnies pour leur base installée (comme Hotmail en 1997) mais a également racheté de nombreuses petites compagnies pour leur technologie. Il a également démarché des développeur pour concevoir des nouveaux produits. Le cas le plus célèbre est Dave Cutler, architecte du système d’exploitation VMS, embauché pour concevoir Windows NT et par la suite Windows Azure. A noter que Microsoft a été également accusé de nombreuses fois d’avoir initié des fausses tentatives de rachats dans le seul but d’identifier les développeurs-clé des entreprises cibles pour les démarcher après que les négociations de rachat aient « échouées ».

Fait assez inhabituel, Microsoft a même parfois acheté les droits d’un produit sans pour autant racheter l’entreprise (MS-DOS acheté à Seattle Computer, SQL Server acheté à Sybase). Pour beaucoup d’entreprises, racheter un produit sans acheter son éditeur implique une absence d’avantage compétitif (vous êtes deux à avoir le même produit). Mais Redmond a su trouver d’autres avantages compétitifs que le produit seul.

Gérer des grands projets

Depuis son tout premier produit, Microsoft a du faire fonctionner ses logiciels avec un grand nombre d’architectures matérielles. A l’heure actuelle, pour chaque nouvelle version de Windows, Microsoft doit interagir avec des milliers de vendeurs tiers. Les fabricants de PC ont besoin de Windows pour le pré-installer sur leurs ordinateurs, les fabricants de périphériques ont besoin de mettre à jour leurs pilotes, les éditeurs de logiciels veulent s’assurer que leurs programmes tournent correctement sur la nouvelle version, et des millions de développeurs sont intéressés de tirer partie des nouvelles fonctionnalités disponibles.

Afin de surmonter ce challenge, Microsoft est passé maître dans l’art du partenariat. Un programme OEM qui permet aux constructeurs de PC de préinstaller Windows, le programme Microsoft Developer Network (MSDN), le programme Microsoft Certified System Engineer (MCSE), plusieurs partenariats commerciaux avec les compagnies qui développent des logiciels sur la plate-forme Microsoft, etc.

Côté technique, Redmond a dû standardiser l’accès à ses produits en fournissant une interface de programmation publique, afin que des logiciels tiers puissent interagir avec Windows. L’API (Application Programming Interface) Windows permet de savoir comment interagir avec Windows. La couche HAL (Hardware Abstraction Layer) de Windows isole le gros du code du système d’exploitation du matériel, rendant plus facile de supporter de nombreuses configurations matérielles, etc.

Au final, Microsoft a appris à gérer des larges projets impliquant des grosses équipes et un très grand nombre de partenaires. Certains détracteurs trouvent que toutes les versions de Windows ont subi des sérieux retards et son plein de problèmes techniques, mais en général Microsoft a fait un très bon travail quand on considère le nombre de partenaires impliqués.

Une relation dissymétrique avec ses partenariats

Mais la relation entre Microsoft et ses partenaires est bien plus importante qu’une histoire de compatibilité matérielle ou logicielle. C’est une affaire d’ordre stratégique. Le premier programme de Microsoft a été MS-BASIC, un langage de programmation. A l’époque, le BASIC (de Microsoft ou d’autres) était incorporé dans l’électronique des micro-ordinateurs. Autrement dit, Microsoft était grandement à la merci des constructeurs, car son succès dépendait grandement de leur désir de licencier les produits de Redmond.

Microsoft a donc toujours cherché à influencer le plus possible le rapport de force en sa faveur. Bill Gates n’a jamais voulu forger des partenariats d’égal à égal. Microsoft offre souvent des conditions très favorables sur le court terme, mais va toujours chercher à prendre le contrôle de la relation sur le long terme.

Cela implique d’une part éviter le plus possible d’être lié à ses partenaires. Bien qu’il ait fait le dos rond à IBM, Microsoft a demandé – et obtenu – de ce dernier qu’il puisse vendre MS-DOS à d’autres constructeurs.

D’autre part cela implique essayer le plus possible de lier les constructeurs. Faire qu’ils aient besoin de Microsoft. La stratégie de ce dernier a donc été de marqueter ses produits au grand public – faire qu’ils réclament Windows – afin d’avoir plus de pression sur les constructeurs d’ordinateur (l’exemple le plus brillant a été la promotion de Windows 95, et l’engouement qu’elle a suscité).

Cette stratégie s’est non seulement révélée payante mais fort lucrative. Microsoft n’a qu’à envoyer un pack de CDs Windows à Dell (coût minime), mais il touche des sous sur chaque PC que ce dernier vend. Et c’est Dell qui doit se charger d’installer (et de tester) Windows sur chacune de ses machines. C’est la raison principale – ça et les économies d’échelles – pour laquelle Windows et Office ont des marges tellement importantes – dans les 80%. Si Microsoft devait vendre toutes ses copies de Windows dans des magasins comme la Fnac, ses marges en pâtiraient grandement (coût de production, d’emballage, de distribution, plus la marge que se fait la Fnac)

En proposant dans les années 90 aux constructeurs de PC d’avoir une réduction sur les prix de Windows s’ils l’installaient en série sur tous leurs ordinateurs, Microsoft proposait apparemment un bon deal: le constructeur économise de l’argent et fournit un PC prêt à l’emploi – à une époque où les utilisateurs devaient installer Windows eux-même. A première vue tout le monde gagne. Le seul problème est que lorsque quasiment tous les fabricants de PC ont signé un accord OEM (Other Equipment Manufacturer) avec Redmond, un partenariat qui était un avantage compétitif devient un désavantage compétitif si l’on ne le signe pas. Signez un accord OEM avec Redmond et vous aurez les mêmes ristournes que les autres constructeurs. Ne signez pas d’accord et vous devez doit payer plus cher la licence Windows que la concurrence. Microsoft a pu ainsi dicter ses conditions aux constructeurs: c’est à ces derniers de supporter Windows, le premier logo qui s’affiche doit être le logo Windows et non le logo du constructeur, etc.

Limiter l’importance des partenaires

Finalement, Redmond veut s’assurer que ses partenaires d’aujourd’hui ne deviennent pas l’ennemi de demain. Microsoft se souvient très bien qu’avoir été un partenaire d’IBM pour construire son PC lui a permit de voler à Big Blue le contrôle de ce dernier.  La firme de Bill Gates a donc toujours cherché à éviter que le même sort lui arrive et de garder pour lui la plupart des profits de l’industrie du PC.

Ce but est cependant contradictoire avec des partenariats à grande échelle. En effet, pour travailler avec autant de compagnies, Microsoft a dû standardiser la manière d’utiliser ses produits. Or qui dit standardisation implique un risque de comoditisation: rien n’empêche un systéme d’exploitation concurrent de fournir les mêmes API que Windows pour faire tourner les applications de ce dernier. De fait, les émulations de Windows ont été nombreuses.

La solution pour Redmond a été de constamment enrichir les API de ses produits.  Plus c’est complexe et plus ça change vite, plus c’est difficile à imiter. La programmation sous Windows n’a jamais été facile et ne le sera sans doute jamais. En rajoutant constamment de nouvelles API, non seulement Microsoft force les développeurs Windows à constamment se mettre à jour – moins de temps à apprendre Java – mais il a également empêché que quelconque émulateur Windows soit efficace. La seule manière d’utiliser des programmes Windows correctement sous d’autres systèmes d’exploitation est d’utiliser la virtualisation – processus qui utilise une licence Windows.

En 1996 Microsoft s’est basé sur sa technologie COM pour développer ActiveX, une technologie sensée « embrasser et étendre » le Web.  J’ai été l’un des co-auteurs du livre ActiveX Programming Unleashed (publié en février 1997) à une époque où il n’existait aucun livre sur le sujet (juste quelques documents Microsoft). A la même époque j’ai appris Java en autodidacte. 12 ans plus tard, ce que j’ai appris en Java à l’époque m’est toujours utile. Ce que j’ai appris sur ActiveX, par contre, l’est nettement moins. Depuis 12 ans Microsoft a rajouté couche sur couche à ActiveX pour devenir la mouture actuelle, .NET.

Des produits de plus en plus gros et complexes

C’est une caractéristique des produits Microsoft: chaque version est plus complexe et demande plus de ressources que la précédente. Windows NT 3.5 et 4.0 demandaient 12 Mb de mémoire minimum pour fonctionner. La version suivante, Windows 2000, en demandait 32 Mb, et Windows XP 64 Mb. Windows Vista, lui, ne demande rien de moins que 512 Mb de mémoire minimum. Windows 7 finalement, en demande 1 GB.

Ironiquement, Microsoft a une forte culture de code le plus compact possible (par compact j’entends le plus petit possible, pas le plus « lourd »). Peut-être est-ce du au fait que les premiers ordinateurs avaient des capacités de stockage limitées. D’autres soutiennent que cela vient d’une contre-réaction à IBM qui a la manie de mesurer n’importer quel projet en termes de KLOC (Kilo Lines of Code – milliers de lignes de code), que ce projet soit bien écrit ou pas.

Quoi qu’il en soit, comment expliquer qu’avec une culture de code compact Microsoft sort des produits qui consomment de plus en plus de ressources?

Tout d’abord, code compact ne veut pas forcément dire code qui tourne rapidement ou peu gourmand en mémoire – du code trop compact peut d’ailleurs produire le contraire. Je peux vous programmer une calculatrice qui utilise la fonction d’addition en guise de multiplication et qui calcule 2 + 2 + 2 + 2 + 2 au lien de multiplier 2 x 5. Le code sera certes compact – pas de fonction de multiplication à coder! – mais le résultat sera tout sauf rapide.

Mais la culture Microsoft a deux autres traits: d’une part une forte culture d’ingénieur – et donc avec un goût prononcé pour les fonctionnalités. D’autre part, Redmond s’est historiquement fait de l’argent principalement lorsque les utilisateurs achetaient une nouvelle version de ses produits. En d’autres termes, il faut convaincre les utilisateurs que la mise à jour vaut le coût d’être achetée. Pour un développeur cela veut dire rajouter des fonctionnalités.

Ces deux facteurs font que Redmond aime ajouter des fonctionnalités à chaque nouvelle version. Or, Ajoutez suffisamment de fonctionnalités au code bien optimisé et vous obtenez quelque chose de lourd. Tant pis si le résultat est complexe.

Maintenant, certains noteront qu’Apple aime rajouter des fonctionalités, et a parfois mis en avant les « centaines de nouvelles fonctionalités » de certaines versions de MacOS X (eux aussi doivent convaincre ses clients de mettre à jour). La différence est qu’à Cupertino les experts en ergonomie ont un grand poids sur les décisions et qu’Apple a une obsession de la simplicité. A Redmond ce sont les développeurs qui ont pignon sur rue.

Conclusion

Le problème de tout géant est d’être confronté un jour aux fameuses technologies disruptives. Sur ce point, Microsoft a de nombreux atouts. Sa paranoïa perpétuelle fait qu’il ne sous-estime aucune technologie émergente, aussi minime soit-elle. C’est ainsi qu’il a mis la main au portefeuille pour racheter Hotmail en 1999 pour une coquette somme. Redmond a également investi des milliards pour se lancer dans de nombreux autres marchés – comme les consoles de jeu – juste au cas où ces marchés deviennent stratégiques.

Bien que Redmond ait une soif d’argent (dur dur d’augmenter son chiffre d’affaire de plus de 100 milliards de dollars tous les ans), il a su tempérer ses ardeurs au court terme pour gagner sur le long terme. C’est ainsi qu’il a réussi à s’attaquer au marché chinois en bradant ses produits et en fermant les yeux sur le piratage.

Mais le plus gros défaut de Microsoft face aux technologies disruptives est qu’il ne sait pas faire simple. Tout doit avoir encore plus de fonctionnalités, et tout doit être lié à Windows. Redmond ne peut admettre que parfois, avoir moins de fonctionnalités est une bonne chose.

Explore posts in the same categories: Microsoft

2 commentaires sur “La culture Microsoft”

  1. alefebvre Says:

    Il ne faut pas oublier aussi une qualité de Microsoft : la ténacité !
    Quand la société s’est fixée un objectif, elle ne renonce pas, quels que soient les obstacles, quitte à y passer des années…
    Ceci dit, je crois que l’épisode Vista représente un gros tournant dans l’histoire Microsoft et donc dans sa culture. Jusque-là, MS n’avait jamais connu un échec aussi cinglant, tant sur le plan technique que commercial. Je crois que cela laissera des traces.


  2. […] semaine je me penche sur le cas d’Apple (voir également la Culture Microsoft et la Culture […]


Laisser un commentaire