Microsoft rachète GitHub
La stratégie d’acquisition de Microsoft ces dernières années a de quoi surprendre par sa diversité. Non pas qu’il s’agisse de sociétés en difficulté ou qui n’ont rien à voir avec l’activité de l’éditeur de logiciel. Mais la variété des domaines applicatifs apporte une certaine originalité, quand on se pense au Microsoft d’il y a une dizaine d’années. Après Minecraft en 2014 et LinkedIn en 2016, Microsoft vient en effet d’annoncer le rachat de GitHub. Quoi, vous ne connaissez pas GitHub? Quelques explications s’imposent…
GitHub est un sites qui permet à des équipes de développement de collaborer sur des logiciels en partageant les documents nécessaires à leur activité, comme les fichiers sources ou tout document partagé. Peu importe le langage utilisé, tout peut y être stocké. Créé en 2008 par trois développeurs visionnaires mais inconnus du grand public, Tom Preston-Werner, Chris Wanstrath et PJ Hyett, GitHub s’appuie sur un logiciel de gestion de version (en anglais versioning) appelé Git.
Qu’est ce que le versioning, allez-vous demander? C’est très simple. Quand plusieurs développeurs contribuent au développement d’un même logiciel, le code source est découpé en plusieurs blocs, dans des documents séparés, afin que chacun puisse contribuer à sa partie sans modifier les fichiers des autres. Parfois, un développeur doit modifier plusieurs fichiers à la fois quand son intervention concerne plusieurs parties du logiciel. Il effectue donc ses modifications dans son coin, s’assure que tout fonctionne bien, puis les mets à la disposition des autres. Mais des problèmes peuvent surgir au moment de la livraison: certains fichiers peuvent avoir été « réservés » par un autre développeur: un conflit se produit alors, qu’il faut résoudre, entre les deux versions des mêmes fichiers. Parfois, il arrive qu’on décide de supprimer une version, et de revenir à l’état précédent. Bref, sans support d’un logiciel de gestion de versions, le développement à plusieurs deviendrait vite un cauchemar…
Du temps où je travaillais chez Dassault Systèmes, nous utilisions un logiciel de versioning maison, appelé Adèle, développé par une équipe en interne dirigée par Nathalie Irvine, au milieu des années 90. D’autres logiciels de gestion de version existent, comme CVS, gratuit, ou ClearCase. On distingue cependant deux types de systèmes de gestion de version: ceux dits centralisés, comme CVS, où un seul dépôt des fichiers source fait foi, et ceux dits décentralisés, comme Git, offrent une plus grande souplesse.
Enfin, il faut savoir que GitHub est gratuit pour les logiciels open source, mais qu’il existe une version payante. Toutefois, je ne connais pas les revenus de cette société, qui revendique plus de 10 millions de dépôts hébergés, pour près de 26 millions d’utilisateurs et plus de 700 salariés…
Et pour la petite histoire, sachez que le code source du logiciel Parcoursup est disponible sur GitHub…
Découvrez d'autres articles sur ce thème...
Hervé Kabla, ancien patron d’agence de comm’, consultant très digital et cofondateur de la série des livres expliqués à mon boss.
Crédits photo : Yann Gourvennec