Une pluie d’annonces, quelques grosses surprises, beaucoup d’open source, la Build 2019 tient toutes ses promesses. Voici ce qu’il faut retenir du premier jour de la conférence…

La conférence Build 2019 de Microsoft est dédié aux développeurs, qu’ils soient hobbyistes, indépendants, embauchés par un éditeur ou une ESN, ou intégrés aux entreprises pour leurs propres besoins logiciels. On y parle donc essentiellement plateformes et outils de développement, ces fondations qui définissent le profil des applications d’aujourd’hui et de demain.

Chaque année, la Build 2019 est l’occasion pour Microsoft de lancer de nombreux nouveaux services et outils destinés à accélérer, simplifier et moderniser les développements en s’appuyant sur les quatre grandes plateformes de Microsoft : Azure, Dynamics 365 & Power, Microsoft 365 (qui inclut Office 365 mais aussi Windows 10 et deux plateformes Cloud clé : Microsoft Graph et Microsoft Identity), et Microsoft Gaming (avec un Xbox Live devenu multiplateforme et l’arrivée de xCloud).

Voici, selon nous, les annonces les plus impactantes pour les entreprises et le développement en entreprise…

Outils de Développement

Microsoft a lancé « Visual Studio Online », un éditeur de code hébergé sur le Web pour permettre aux développeurs de rapidement éditer du code et participer à une session de codage partagé « Live Share » sans avoir à lancer Visual Studio Code (l’éditeur natif multi-plateforme et open source) ou Visual Studio 2019 (l’IDE complet de Microsoft).
Visual Studio Online est une version « webisée » de Visual Studio Code et en supporte toutes les extensions ainsi que ses Workspaces. Il ne faut pas confondre ce nouveau Visual Studio Online avec l’ancien environnement collaboratif « VSO » désormais renommé et remplacé par Azure DevOps.
Visual Studio Online s’inscrit dans cette philosophie de rendre le développement plus souple et plus productif que l’on retrouve également dans Visual Studio Live Share (le service qui permet une collaboration en temps réel autour du code entre plusieurs développeurs).

Autre nouveauté, VS Code Remote Development est un pack d’extensions qui permet de développer en toute convivialité sans impacter sa configuration locale. Le cœur du développement réside sur un système distant (un container, un serveur, une machine distante ou même WSL, le Linux embarqué dans Windows), tous comme les codes sources, seul l’éditeur Visual Studio Code étant local. Le pack comprend les extensions Remote-SSH (pour piloter une machine distante), Remote-Containers (pour développer dans un container), et Remote-WSL (pour une expérience de développement Linux sous Windows).

Développement cross-plateforme

Côté développement Windows, on retiendra surtout le lancement des XAML Islands, une nouvelle fonctionnalité qui permet d’intégrer des contrôles de la plateforme UWP (avec support de Windows Ink et de Fluent Design) au sein d’applications Win32, Windows Forms et WPF. Un moyen simple de moderniser et de rendre plus tactile les applications métiers existantes sans les remettre totalement en question et sans lancer de développements lourds.

Côté développement multiplateforme, l’arrivée de React Native for Windows permet de créer des applications Windows natives avec React. React Native est un framework et une librairie JS qui permet de créer des applications natives pour iOS, Android et Windows partageant le même code JavaScript.

Mais l’annonce phare en la matière est celle de la mise en chantier de .NET 5 ! Microsoft dispose de deux versions de .NET : le .NET Framework 4.8, propriétaire et intégré à Windows, et sa version plus récente .NET CORE 3, open-source et multiplateforme. Désormais, il n’y en aura plus qu’une ! « .NET 5 » est le futur commun de ces deux frameworks de développement. Cette version sera open-source et permettra de cibler des développements Windows, Linux, macOS, iOS, Android, tvOS, watchOS, WebAssembly ainsi que d’autres plateformes non encore annoncées. Cette version sera disponible en preview début 2020 pour une disponibilité finale en novembre 2020. L’objectif est clairement de produire un seul et unique framework et runtime qui a puisse être utilisé sur n’importe quelle plateforme et qui combinera le meilleur de .NET, .NET CORE, Xamarin et Mono.

Windows 10

Voici peut-être les deux annonces les plus spectaculaires et les plus inattendues de cette Build 2019 : WSL2 et Windows Terminal.

Microsoft cherche à faire de Windows 10 la plateforme de développement la plus universelle et la plus souple du marché. Il y a trois ans, la firme a intégré une sorte d’émulateur Linux dénommé WSL (Windows Subsystem for Linux) au cœur de Windows qui a conduit à l’apparition des Bash Linux sous Windows et la disponibilité de Ubuntu, Fedora, OpenSUSE et autres distros dans le Windows Store. Mais WSL n’est pas un vrai Kernel Linux, juste un convertisseur d’appels Linux en appels Windows ce qui impacte les performances notamment en matière de lecture et écriture de fichiers.
Microsoft a annoncé à la Build que la prochaine version de Windows 10 (à priori 19H2, qui sera en bêta-test pour les Insiders dès juin) intègrera un véritable Kernel Linux ! Développé en open-source par Microsoft, il est basé sur Linux 4.19 LTS Kernel et sert de fondation à WSL2. La transformation est majeure : d’une part elle induit une moindre consommation de mémoire et garantit des performances de fichier natives mais surtout elle introduit au cœur de Windows le support natif des conteneurs Docker Linux !

Parallèlement, Microsoft a lancé un nouveau terminal de ligne de commandes pour Windows 10 dénommé « Windows Terminal ». Offrant des tabulations, il permet d’unifier en un seul outil CMD (le shell de commandes d’origine de Windows), PowerShell, et WSL. Windows Terminal est développé en open-source et sera distribué et mis à jour via le Windows Store. L’un des attraits principaux de cette nouvelle interface est de bénéficier d’un affichage en couleur moderne avec support des idéogrammes, icônes, glyphes et emojis, le tout accéléré par GPU.

Quantum Computing

Microsoft n’a toujours pas démontré son ordinateur quantique opérationnel basé sur des qubits topologiques. Mais l’éditeur développe depuis bientôt 18 mois un ensemble de d’outils et de simulateurs (Microsoft Quantum Development Kit) ainsi qu’un langage de programmation dénommé Q# pour former les développeurs à la programmation quantique.
Lors de la Build 2019, Microsoft a annoncé que son SDK quantique avait été téléchargé plus de 100.000 fois. L’éditeur estime que ce kit a atteint un niveau de maturité suffisant : désormais, l’ensemble de ce SDK, y compris le langage Q#, est placé en open-source et publié sur Github.

EDGE…

Nous en avons déjà parlé, Microsoft a annoncé en fin d’année dernière le développement en open-source d’une nouvelle version multi-plateforme de son navigateur Web, cette fois-ci intégralement basée sur Chromium (la version open source de Google Chrome).
Cette version est déjà disponible en Preview pour Windows 10, Windows 7 et MacOS depuis quelques semaines. L’éditeur a profité de la Build pour révéler quelques fonctionnalités phares sur lesquelles il travaille. Ces dernières se concentrent autour de trois sujets : la compatibilité, la confidentialité (et la préservation de la vie privée sur le Web), l’expérience utilisateur.

Avec l’ancienne version d’Edge, Microsoft avait visé une pleine compatibilité HTML5 sans se préoccuper de l’existant et avait donc maintenu Internet Explorer (IE) dans Windows 10 pour tous les scénarios où les entreprises conservaient leurs vieux intranets et tableaux de bord basés sur des composants ActiveX.
Avec le nouveau Edge « chromisé », Microsoft veut une adoption massive de son navigateur dans les entreprises et l’abandon total d’IE. Pour résoudre les problèmes de compatibilité évoqués plus haut, les entreprises pourront profiter d’une nouvelle fonctionnalité : l’IE Mode. Ce mode Internet Explorer offre une pleine compatibilité IT dans un onglet Edge pour les pages internes à l’entreprise. Il évite aux utilisateurs d’avoir à jongler entre deux navigateurs. Et il n’interfère en rien avec la navigation moderne d’Edge-Chromium.

Autre nouveauté, les « Privacy Tools » de Microsoft Edge apporte davantage de confidentialité et de contrôle de votre vie privée à vos navigations Web. L’utilisateur peut choisir entre trois modes de fonctionnement : classique, mesuré, et strict (toutes les formes de traqueurs sont bloquées).

Enfin, Edge introduit un nouveau concept de collecte d’informations au cours de vos navigations : les Collections. Chaque utilisateur peut créer des collections thématiques et venir ensuite y glisser-déposer des pages, des images, des textes, récoltés au fil de ses navigations et recherches. Les collections sont accessibles via Edge sur tous les appareils, peuvent aisément être partagées via email ou via Teams ou être, d’un clic, transformées en documents Word ou en tableau Excel.

… et le WEB

Au-delà du navigateur, Microsoft veut aussi œuvrer pour rendre le Web plus réactif et productif. L’éditeur vient ainsi de lancer son « Fluid Framework » conçu pour permettre aux développeurs de créer des services WEB collaboratifs offrant par exemple des fonctions de coédition extrêmement rapides. L’idée est de proposer un canevas distribué sur lequel plusieurs utilisateurs peuvent collaborer via le Web et qui puissent être connectés à des agents IA Web pour réaliser de la reconnaissance d’écriture ou de la traduction en temps réel.
Parallèlement, l’éditeur poursuit sa volonté d’étendre son design « Fluent Design » aux applications mobiles iOS/Android et au Web (via une extension Fabric Web en React) et inaugure un nouveau site pour populariser sa vision.

Microsoft 365

Microsoft 365 est essentiellement perçu comme une offre entreprise regroupant Windows 10, Office 365 et un ensemble d’outils de gestion de la mobilité et de la sécurité (EM+S). Mais, l’offre va bien au-delà et repose sur un ensemble de composantes Cloud qui en font une plateforme sur laquelle les développeurs peuvent venir se greffer pour enrichir les applications « métier » de l’entreprise.
À l’occasion de Build 2019, Microsoft a annoncé la disponibilité générale de « Microsoft Search » un service de recherche boosté à l’IA qui permet de réaliser des recherches à travers SharePoint, OneDrive, Office, Bing, Windows et de contextualiser les occurrences par le biais de Microsoft Graph (et de sa connaissance des personnes, de ce sur quoi elles travaillent, et de leurs interactions).
La barre de recherche Microsoft Search sera progressivement intégrée à tous les outils Office et à

Windows 10 mais est déjà présente sur la page du portail Office 365.
L’accès à Microsoft Graph est désormais ouvert à tous les développeurs. Ce service sur lequel repose non seulement Microsoft Search, Delve ou Teams, s’affirme comme une brique de plus en plus essentielle. Il sera par exemple utilisé par la nouvelle fonctionnalité d’aide à l’écriture de Word, dénommée Ideas qui suggère des reformulations, des exergues, des résumés, etc.
Il joue également un rôle clé dans la nouvelle intelligence conversationnelle qui animera prochainement Cortana mais sera aussi disponible sous forme de Cognitive Services pour animer vos Bots. Fruit du rachat de Semantic Machines, cette nouvelle intelligence conversationnelle permet des interactions vocales beaucoup plus riches et fluides que ce que l’on connaît aujourd’hui avec Google Assistant, Siri ou Alexa.

Enfin pour terminer, rappelons que Microsoft avait lâché plusieurs annonces Azure importantes la veille de l’ouverture de la conférence, annonces que vous pouvez retrouver Pré-annonces Azure pour la Build 2019.