Coup de tonnerre dans le microcosme du développement au Connect(); //2015 de New York : 6 mois après l’annonce d’une version gratuite Visual Studio Code, mais fortement édulcorée de Visual Studio, Microsoft passe la vitesse supérieure et fait passer sa plate-forme en Open Source.

Evidemment on change de braquet.

Car cela veut dire que Visual Studio Code, dont le code source est porté dans Github sous licence MIT, va pouvoir bénéficier des contributions volontaires de tous ceux qui seront inspirés par la bannière Microsoft. Ce qui change profondément la stratégie de l’éditeur, même si des signes avant-coureurs avaient déjà été détectés, qui témoignaient de ce qu’un vent nouveau soufflait du côté de Seattle.

En tout cas, le moins que l’on puisse dire, c’est que beaucoup d’eau a coulé sous les ponts de Redmont depuis la période sombre de Steve Balmer et que Satya Nadella est en train de transformer sa compagnie en profondeur.

.NET déjà en Open Source

Des morceaux importants de .NET étaient déjà passés en Open Source, il y a quelques mois, toujours sous licence MIT :

  • le .NET Core avec l’ensemble de la plate-forme de base, remodelée avec une version simplifiée des bibliothèques
  • les .NET Framework Class Librairies, autrement dit les bibliothèques nécessaires pour développer sous Windows
  • et tout ce qui touche à l’exploitation du code : la plate-forme d’exécution (run time), le « garbage collector » ( ramasse-miettes des objets instanciés en mémoire), ainsi que le compilateur 64 bits RyuJIT (Just in Time).

Là encore le code avait été porté sur Github, la licence MIT étant l’une des plus permissives qui soit, qui ne confère que peu d’obligations aux licenciés, contrairement à une licence  telle que GPL, marquée par sa clause Copyleft.

De ce fait, non seulement le code passe en Open Source, mais en plus les contributeurs pourront faire un peu ce qu’ils veulent, ajouter du code, sans avoir véritablement de comptes à rendre.

Décidément on ne reconnaît plus Microsoft.

Microsoft copie Eclipse

L’annonce Microsoft montre clairement quelle est la voie que compte suivre désormais l’hôte de Redmont : s’ouvrir au maximum et inciter les développeurs à adopter une plate-forme dont la version complète est considérée comme la plus pertinente du marché. Ce que Microsoft doit largement aux idées « magiques » d’Anders Hejlsberg, un ancien de Borland, architecte de Visual Studio, mais aussi de C# et Linq.

Visual Studio Code n’est cependant pas Visual Studio tout court. Il s’en faut même de beaucoup, mais comme pour Eclipse qui a totalement supplanté WSAD (Web Sphere Application Development) en son temps chez IBM, il nous étonnerait fort que dans les années à venir, la nouvelle plate-forme Open Source ne vienne pas supplanter la solution courante.

Car Nadella a évidemment compris que ce qui est important pour lui, ce n’est pas de gagner quelques $ avec Visual Studio (beaucoup quand même !!!), mais d’installer durablement  la plate-forme dans les ateliers de développement, de capitaliser sur son architecture et en faire un outil majeur pour les développements futurs.

Pour l’instant Visual Studio Code s’adresse plutôt aux applications Web et Cloud, mais il n’y a aucune raison pour que son périmètre ne s’étende pas à ce qui est le véritable objectif de Microsoft, les architectures centrales, applicatives en particulier.

Le plus important, les extensions

Au-delà de l’annonce de Visual Studio Code, c’est surtout celle de ses extensions qui nous semble la plus importante. Car avec ce système, qui ressemble étrangement aux plugins d’Eclipse, non seulement nous pourrons intégrer (le plus simplement du monde), les extensions disponibles chez Microsoft, mais aussi développer nos propres extensions, capacité qui est prévue dans l’outil.

De sorte que l’on se retrouvera très vite dans le même contexte qu’IBM avec Eclipse, la solution libre dotée d’extensions tous azimuts, qui s’est substituée à la plate-forme officielle et payante de Microsoft.

D’ores et déjà, la place de marché, dédiée aux extensions, comporte 60 modules installables, avec le support de langages particuliers : Ceylon, GO (développé par Google pour remplacer le C), Pascal, Erlang, Cobol, un assembleur x86 32 et 64 bits, PowerShell (langage de production Microsoft), le bon vieux LaTex, Scala (Université de Lausanne), etc.

Il ne manque plus que Java…mais là il ne faut pas être trop optimiste…encore qu’avec Nadella on ne sait jamais…

A côté de ces langages, de nombreux outils et utilitaires sont également disponibles, ceux liés à JavaScript par exemple ou HTML, des outils de mises au point, etc.

Une roadmap ambitieuse

Microsoft ne s’est pas attardé sur la seule version actuelle de Visual Studio Code et anticipe déjà pour les 6 prochains mois, en « prévenant » qu’il fera feu de tout bois, avec la prise en compte de C#, de TypeScript, le compilateur qui génère du Java Script, du composant Salsa qui permettra de développer du code mixte JavaScript et TypeScript, ainsi que de nombreuses autres améliorations.

Cela dit, ce n’est pas du jour au lendemain que les développeurs hostiles à Microsoft vont basculer sur Visual Studio Code Open Source. Par principe et presque par habitude.

Mais sur le long  terme, Microsoft a sans doute raison. C’est la bonne méthode. Car les générations de développeurs vont se succéder et les personnes qui auront installé la nouvelle mouture sur leur machine pour « se faire la main » seront les évangélistes de demain.