A l’occasion du mois de l’Open source chez Cellenza, nous avons donné la parole à Frank Villaume, Cloud Solution Architect chez Microsoft.

Avec bientôt 20 ans d’expérience dans le monde informatique, Franck participe au mouvement du logiciel libre à travers ses contributions personnelles et les rôles qu’il a eu au sein des sociétés pour lesquelles il a travaillé. Responsable technique du premier marché de support de logiciels libres pour le Ministère des Finances dès 2007, puis du contrat interministériel de 2012 à 2015 au sein de Capgemini, Franck a été en charge de l’outillage industrielle des projets Capgemini au niveau européen construisant une plateforme dockerisée intégrant 100% des technologies opensource.

Franck a rejoint Microsoft depuis de 2 ans en tant qu’architecte Azure spécialisé sur les technologies issues du monde libre, il est le co-animateur de la communauté OpenSource au sein de Microsoft France. A présent, Franck est le responsable de l’équipe d’architectes Azure au sein de la division « One Commercial Partner ».

Franck est le mainteneur principal du projet Fusionforge, moteur de forge issu du code initial de SourceForge.

 

Pourquoi ce virage vers l’open source chez Microsoft ?

Cette question revient régulièrement sur la table. Elle mérite une réponse claire. Tout d’abord je voudrais mettre en lumière un point important : qui pose cette question ?

Cette question m’est surtout posée par des personnes qui connaissent Microsoft depuis les années 1990 ou au tournant des années 2000. Ces personnes ont suivi l’émergence et l’évolution des logiciels libres, voyant le mouvement open source devenir un standard. Ces personnes ont scruté les actes, les paroles de Microsoft depuis plus de 20 ans. Il faut avouer que Microsoft dispose d’un historique assez important dans le domaine du logiciel libre ce qui a amené à une certaine réserve de la communauté quant à l’engagement de Microsoft.

Mais c’est une question qui ne m’est posée que rarement par des développeurs nés avec le mouvement open source. C’est-à-dire des personnes arrivées sur le marché du travail après 2015.

On peut parler ici de changement de génération. C’est la première raison de la transformation de Microsoft.

 

Une transformation humaine

Lorsqu’en 2001, Microsoft, via son CEO, a fait des déclarations fortes envers l’open source, les personnes capables de comprendre le mouvement des logiciels libres étaient assez peu nombreuses et c’était d’autant plus vrai chez Microsoft. John Gossman en parle très bien et je ne peux que conseiller de suivre la keynote d’ouverture de l’Open Source Virtual Conference du 13 septembre 2018 Entre 2000 et 2010, les développeurs et architectes sont bercés par l’open source. Ces personnes ont pris des responsabilités chez Microsoft. La transformation de Microsoft est là. C’est une transformation humaine.

La transformation de Microsoft est là. C’est une transformation humaine.

 

Vers une transformation de la culture interne de Microsoft

C’est aussi une transformation de culture interne. Lorsqu’en 2014, Satya Nadella prend le rôle de CEO, la transformation est démarrée. Satya l’accélère en faisant tomber des barrières internes. L’Innersource est rendu obligatoire. Le livre “Hit Refresh” de Satya et co-écrit avec Greg Shaw et Jill Tracie Nichols publié en fin 2017 appelle tous les employés de Microsoft de passer d’un mode « je sais tout » à « je m’intéresse à tout ». C’est la deuxième raison de la transformation de Microsoft.

 

Le Cloud comme changement de paradigme

La troisième raison de la transformation de Microsoft est l’émergence du Cloud Computing. En 2008, Steve Ballmer annonce le projet « Windows Azure ». La version commerciale est rendue publique en 2010. L’approche présente une limite : Quid des clients qui ont un système d’information hétérogène ? La réponse sera « Microsoft Azure » avec le support des machines virtuelles « Linux » dès 2012. Ce support veut dire s’assurer que « Linux » fonctionne parfaitement sur l’infrastructure Hyper-V. La première version du pilote Hyper-V est publiée sous licence GPLv2 en 2009.

Le Cloud Computing a permis à Microsoft de se rendre compte de l’hétérogénéité de l’écosystème dans lequel les logiciels libres jouent un rôle prédominant.

 

Une nouvelle opportunité de marché, les logiciels libres

Cela m’amène à la quatrième raison : l’opportunité de marché que représentent les logiciels libres. Le mouvement open source est sorti de la niche financière pour devenir un acteur majeur de croissance. C’est un élément à ne pas négliger et c’est assez logiquement que Microsoft investit dans ce domaine. Depuis Microsoft est passé de « j’utilise » des logiciels libres à « je contribue et je publie » des logiciels libres.

Des pans entiers de l’infrastructure de Microsoft Cloud (c’est-à-dire Azure mais aussi Dynamics et Office365) mettent en œuvre des logiciels libres. Par exemple, la couche logicielle qui gère le switch network repose sur le projet SONiC. Ce projet s’inscrit dans la démarche Open Compute Project. Second exemple, l’orchestrateur de microservices utilisé pour héberger des services tels que Dynamics, Power BI, Azure IoT Hub et d’autres encore, Azure Service Fabric est sous licence MIT (https://github.com/Microsoft/service-fabric).

Même sur le poste de travail, Microsoft suit la transformation vers l’open source. VisualStudio Code est un éditeur de code sous licence MIT très utilisé, au sein de Microsoft évidemment, mais aussi hors des murs de Microsoft. Et puis pour donner le sourire, même la calculatrice de Windows 10 est libre.

Enfin, je ne me voudrais pas trop angélique, la transformation de Microsoft est un travail de longue haleine, le chemin est encore largement devant nous. Et j’espère que la communauté open source continuera son travail de scrutateur pour mettre en évidence nos manques afin que Microsoft s’améliore encore. Je compte aussi sur la communauté open source pour prendre en compte les avancées et les engagements de Microsoft.

Pour les curieux et voulant en savoir plus, rendez-vous sur https://opensource.microsoft.com/

 

Quoi de neuf sur Github depuis le rachat de Microsoft ?

Depuis le rachat par Microsoft, GitHub reste autonome et donc je dirais qu’il vaut mieux contacter GitHub directement. Toutefois quelques chiffres. Si on parle en nombre d’utilisateurs, GitHub est passé de 24 millions d’utilisateurs à 35 millions en 1 an. Le nombre de repositories dépasse les 100 millions avec plus de 2 millions d’organisation.

On rappellera aussi les nouveautés telles que la modification de l’offre GitHub Free avec un nombre illimité de repositories privés pour 3 collaborateurs, et l’arrivée de GitHub Actions permettant l’automatisation de workflows.

Date à ne manquer sous aucun prétexte, le 23 mai, rendez-vous à Berlin pour l’événement GitHub Satellite (https://githubsatellite.com/) pour avoir toutes les nouveautés.

Si on parle en nombre d’utilisateurs, GitHub est passé de 24 millions d’utilisateurs à 35 millions en 1 an. Le nombre de repositories dépasse les 100 millions avec plus de 2 millions d’organisation.

 

Comment ont été choisis les brevets apportés à l’OIN ?

Le choix a été le plus simple du monde. Microsoft n’a rien choisi, ni fait de tri. Microsoft a mis à disposition l’ensemble de son portefeuille de brevets logiciels à l’OIN, c’est-à-dire à ce jour plus de 60.000 brevets logiciels.

Je voudrais en profiter pour rappeler la portée de cet apport à l’OIN car j’ai lu ici ou là des articles qui me semblaient incomplets. Microsoft met à disposition son portfolio de brevets aux membres de la communauté OIN de façon gratuite dans le cadre du développement du “Système Linux” qu’on peut résumer au kernel Linux (et qu’on m’excuse pour ce raccourci rapide). Les brevets logiciels Microsoft n’ont pas été publiés sous licence libre. J’insiste : c’est l’accès au portfolio qui est « gratuit » pour les membres de la communauté OIN dans le respect des conditions OIN.

En complément à la communauté OIN, Microsoft a rejoint LOTNetwork. Ce réseau a pour objectif : “limiter le patent troll“. C’est-à-dire : si un brevet est revendu à un PAE (patent assertion entity), alors le vendeur fournit un droit d’usage de ce brevet aux membres du LOTNetwork.

 

Quels sont les prochains outils DevOps open source qui seront intégrés à Azure (après Terraform, Ansible, Chef, …) ?

Voici un exercice bien difficile : prévoir le futur.

« Microsoft Azure » est une plateforme ouverte permettant d’utiliser et/ou d’héberger tous types de technologies. Certains composants libres sont directement mis en œuvre en interne par la plateforme Azure. Packer est utilisé pour la construction des images de machines virtuelles. Azure Functions est sous licence MIT et cela inclut le runtime et les outils de développement.

D’autres composants Azure sont des intégrations de versions communautaires. Azure Database for PostgreSQL repose sur un moteur PostgreSQL en version communautaire sans modification, ce n’est pas un fork caché !

Dans le domaine Infrastructure as Code (IaC), la littérature met souvent en avant les outils tels que Terraform, Ansible, Chef, Puppet. D’autres ne sont pas en reste, SaltStack par exemple qui supporte Azure depuis 2014.

Dans le monde Kubernetes, les solutions Helm, Draft et Brigade sont à regarder de très près.

On l’aura compris, je ne prends pas de risque et je laisse les communautés libres de décider de leur futur, du support Azure et au besoin de me contacter pour en savoir plus sur Azure et comment travailler ensemble.