Page 1 sur 1

Andromeda

Posté : mar. 10 oct. 2017 07:48
par chtimi054
Chez Microsoft, Andromeda dessine les contours d’un Windows unique

Image

Depuis quelque temps, les rumeurs s’amoncèlent autour d’un projet de Microsoft nommé Andromeda. Il aurait pour mission d’établir une base commune à tous les supports, tant voulue par Microsoft. Le moment est venu de trier ces informations, qui mettent en lumière l’évolution technique de Windows sur les quinze dernières années.

Ceux qui suivent cette évolution de près savent que Windows peut être vu comme un sac de nœuds. Le système a été modifié par touches successives, plus ou moins selon les versions. Pour comprendre les enjeux actuels, il est nécessaire de revenir en arrière, notamment à l’époque de Windows XP.

Pour beaucoup, XP a été un renouveau. Et pour cause : il s’agissait du premier système de Redmond à présenter un noyau NT pour le grand public. Les différences en termes de fiabilité étaient radicales vis-à-vis d’un bien vieux Windows 98, ou même – pour ceux qui n’avaient pas de chance – d’un Millenium affublé de tant de problèmes. Les utilisateurs qui avaient testé Windows 2000 furent cependant beaucoup moins impressionnés.

Windows XP avait beau être bien plus fiable que ses prédécesseurs grand public, il représentait quand même un beau bazar pour Microsoft, car les nouvelles technologies se mêlaient aux anciennes. Le problème est connu et est toujours d’actualité : Windows traine de véritables boulets. C’est ici que Vista entre en piste.
Vista et les premiers travaux de nettoyage

Le « mal-aimé » Vista était le produit d’une gestation chaotique. Jamais deux versions du système n’ont été séparées par cinq ans d’intervalle (Microsoft était encore sur la règle des trois ans). Le projet Longhorn, tel qu’il était connu, fut cependant chamboulé à mi-chemin et ses objectifs modifiés.

Deux facteurs intervenaient dans cette décision. D’une part, l’obligation de travailler sur l’énorme Service Pack 2 de Windows XP. La sécurité y était invivable depuis le passage de vers comme Sasser, qui automatisaient l’exploitation des failles. Microsoft avait dû briser la règle des Services Packs qui était de ne jamais apporter de nouvelles fonctionnalités. Mais à situation exceptionnelle, mesure exceptionnelle. Problème, le développement de ce SP2 monopolisait une partie des ressources de l’entreprise et ralentissait le développement de Vista.

D’autre part, les objectifs de ce dernier ont été revus à la baisse. Soit parce qu’ils étaient finalement jugés trop élevés, soit parce que la répartition des équipes ne permettait plus de tenir les délais. On connait le résultat : un système mal fignolé, provoquant des accès constants au disque dur, dévorant la mémoire vive et demandant sans arrêt des autorisations à l’utilisateur. Tous les signes d’un développement précipité. Le Service Pack 1 avait toutefois largement amélioré la situation.

Mais que l’on ait ou pas apprécié Vista, le système introduisait pour la première fois un effort sous-jacent d’ingénierie pour démêler la base du système. Les développeurs de Windows ont entamé le tri des composants entourant le noyau. Un long chemin commençait : parvenir petit à petit à dégager une base minimale que l’on pourrait alors détacher de tout ce qui n’était pas nécessaire.

Image

Windows 7 : l'avènement de MinWin

Cette vision a franchi une étape décisive avec le (très apprécié) Windows 7. Si le terme « MinWin » vous dit quelque chose, c’est parce qu’il date de cette époque et avait fait l’objet de nombreux articles. Il s’agissait bien de cette base minimale souhaitée par Microsoft, coupée de tout élément n’étant pas strictement indispensable. Pas d’espace utilisateur, pas d’interface graphique, les quelques pilotes nécessaires : pas besoin de plus. Microsoft était parvenu à un « cœur » de 25 Mo ne réclamant que 40 Mo de mémoire vive. Mais même MinWin n’était qu’un début.

Windows 8 fut le premier système à récupérer MinWin comme véritable fondation. Le travail de Microsoft servait deux buts : simplifier la maintenance et dégraisser Windows de manière à augmenter les performances. Vous pourrez d’ailleurs vérifier, la configuration demandée par Windows 10 aujourd’hui est pratiquement la même que celle demandée à l’époque pour… Vista.

Les performances de Windows 8 ont d’ailleurs été plutôt saluées à sa sortie. En fait, pour la première fois, la rapidité d’un Windows n’était plus le sujet central, alors que ce point cristallisait l’attention dans Windows 7, reçu comme un messie après Vista (il en a gardé la réputation). Les débats ont très vite basculé sur l'Écran Démarrer et la volonté de Microsoft de reléguer le bureau à un simple mode d’affichage. Une dichotomie qui frisait alors la schizophrénie tellement l’utilisateur se sentait tiraillé entre deux univers sans aucun rapport.
Windows 10, une vision « presque » accomplie

Comme avec le précédent système, le travail a toutefois continué. Avec Windows 10, il approche même une certaine forme d’aboutissement… qui fait d’autant mieux ressortir le très lourd héritage que traine le produit de Microsoft.

Avec Windows 10, on pouvait penser que Microsoft aller enfin réaliser sa vision : OneCore, puisque c’est ainsi qu’il fallait l’appeler désormais. Une vision qui ne manquait pas de logique puisqu’il s’agissait alors de proposer le même socle pour tous les appareils où Windows pouvait se trouver. Ordinateurs, tablettes, smartphones, consoles, casques de réalité mixte et ainsi de suite pouvaient donc en profiter.

Une stratégie qui devait s’avérer particulièrement payante dans l’univers mobile. Après Windows Mobile 6.5, les utilisateurs voulant passer à Windows Phone 7 devaient en effet changer de matériel. Microsoft avait refait le coup avec Windows Phone 8. Windows 10 Mobile, quand il est arrivé, aurait normalement dû être proposé à tous les appareils déjà sous Windows Phone 8.1. Ce ne fut pas le cas, et de nombreux modèles furent abandonnés.

Aussi la perspective d’une stratégie claire était très intéressante. Idéalement, on retrouvait donc un socle commun, des API communes et un univers cohérent de services où l’utilisateur retrouverait systématiquement ses informations, avec des interfaces familières. Cette vision ne s’est pas accomplie, du moins pas complètement.

C’est le gros problème de Microsoft actuellement : un socle unique ne suffit pas, d’autant qu’il n’est pas si unique que ça. Oui le noyau est le même sur les PC, tablettes, smartphones ou même la Xbox One (et ses variantes). Mais l’environnement, lui, varie d’une plateforme à une autre. L’éditeur aurait souhaité que les développeurs se dirigent tous vers UWP (Universal Windows Platform) pour accompagner ce formidable élan, mais rien ne s’est passé comme prévu. Pas plus qu’avec WinRT d’ailleurs.

Image

Win32, cet héritage si pesant

Les fautes sont multiples, et même s’il ne s’agit pas de l’objectif de cet article, on peut en citer plusieurs. Sur PC tout d’abord, on trouve le (très) lourd héritage de Win32, que les développeurs ont l’habitude d’utiliser depuis longtemps et qui n’impose pas de limite. Ensuite, UWP en avait en comparaison de multiples. Il n’y avait pas – même aujourd’hui – de parité fonctionnelle via les API. Mathématiquement, si un nouvel environnement ne permet pas de faire autant que l’ancien, il a peu de chance de remporter un franc succès.

Cette parité ne vient que lentement. En fait, le vrai mouvement majeur est arrivé récemment avec .NET Standard 2.0. Il est évident aujourd’hui que .NET Core constitue la future base de développement que Microsoft veut pousser. Or, le passage de 13 000 à 32 000 API est un gros bond en avant, la parité ayant été atteinte avec l’ancien Framework .NET. Ce qui manque désormais à .NET Core, c’est de quoi concevoir des interfaces. Le lien avec UWP est prévu avant la fin de l’année, mais il y aura encore beaucoup de travail à accomplir, notamment sur macOS et Linux (puisque la technologie est multiplateforme).

Que faudrait-il vraiment à Microsoft pour parachever sa vision ? Un socle commun d’une part, un environnement adaptable à l’appareil visé ensuite, ainsi qu’un lot d’API permettant de créer n’importe quelle application, qu’elle soit professionnelle ou grand public, utilitaire ou ludique. Jusqu’à présent, une telle situation n’a jamais été atteinte.
Andromeda serait un châssis modulaire pour tous les appareils

C’est dans ce contexte que les rumeurs sur Andromeda sont apparues. Elles concernaient d’abord un appareil mobile et semblaient désigner une nouvelle tentative de Microsoft dans ce domaine. Après un grand nombre de promesses brisées, il y avait donc de quoi se montrer circonspect. Tout particulièrement face aux déclarations récentes de Joe Belfiore, qui a confirmé le passage de Windows 10 Mobile en mode « entretien ».

Mais au cours des derniers mois, les sources se sont multipliées. Windows Central, MSPowerUser et plus récemment Mary-Jo Foley de ZDNet ont eu des échos plus précis de leurs « informateurs ». Plus qu’un seul appareil, Andromeda semble désigner tout une nouvelle base de système d’exploitation. Selon Windows Central, l’effort devrait même être nommé officiellement Core OS lors de sa présentation.

De quoi s’agit-il ? Pas d’un nouveau système d’exploitation en tant que tel. Ce n’est pas un projet de Microsoft Research comme l’ont été Singularity puis Midori, qui se distinguaient par un code entièrement managé. Andromeda serait une évolution de l’actuel OneCore, qui ne contiendrait plus seulement le socle minimal. Des éléments d’environnement seraient présents, notamment tout ce qui touche à l’interface graphique.

Traduction : puisque Windows 10 a la volonté de fonctionner partout, il devrait être en mesure de proposer une expérience commune, quel que soit l’appareil. C’est loin d’être le cas actuellement. Sur un ordinateur, on dispose ainsi d’un bureau, d’un menu Démarrer, de fenêtres, bref de tout ce que l’utilisateur connait depuis Windows 95. Sur un smartphone, on trouve un écran d’accueil et des applications plein écran. Sur la Xbox, c’est encore un autre type d’interface. Sans parler du HoloLens.
Un châssis modulaire pour tous les appareils

Toutes les sources semblent désormais pointer dans la même direction : Andromeda serait une base malléable, dont l’ergonomie et les capacités s’adapteraient automatiquement au matériel détecté et en configurant automatiquement l’interface à la taille de l’écran. Si ce système vous semble familier… c’est parce que Microsoft demande aux développeurs tiers de l’appliquer sur les applications en UWP. En interne, il serait d’ailleurs nommé CShell, ou Composable Shell.

Mary-Jo Foley, souvent très bien informée, évoque le terme de « châssis » pour désigner Andromeda. Les constructeurs pourraient l’adapter à tous leurs projets, sans pour autant gommer les caractéristiques principales. Ces dernières garantiraient la continuité de l’expérience utilisateur et débloqueraient au passage de nouvelles possibilités.

Pourquoi pas, par exemple, la faculté de commencer une activité dans une application quelconque et de reprendre exactement là où l’on s’était arrêté, mais sur un autre appareil ? Une fonctionnalité promise depuis longtemps mais bien loin d’être généralisée. Il y a bien Continuum, mais son principe est différent, puisque ce sont toujours les applications du smartphone qui sont utilisées (l’appareil étant relié à un écran externe).

Si l’on résume ce que les rumeurs semblent à peu toutes désigner aujourd’hui, on aurait donc un Windows commun pour tous les types de matériel, capable de changer de forme automatiquement. Des éléments comme le menu Démarrer, la gestion des fenêtres, le centre de notifications, les paramètres et tous les composants principaux seraient présents. Idéalement, cet environnement fonctionnerait avec des applications ayant le même comportement. Résultat, un ensemble cohérent dans lequel l’utilisateur retrouverait toujours la même ergonomie générale, ses applications, ses données et ses réglages. On retiendra le mot « idéal ».

[video][/video]

Les défis à relever restent malheureusement les mêmes...

Maintenant, les défis pour y parvenir seront nombreux. Le poids du passé sera le plus important, comme il l’est déjà. Pour prendre la mesure du problème actuel, il suffit de se pencher sur le Store de Windows 10. Il se remplit, certes, mais pas vraiment d’applications UWP. Le projet Centennial – devenu Desktop App Converter (DAC) – permet en effet depuis l’année dernière de porter les applications Win32 vers la boutique. Dans sa version la plus basique, l’outil ne convertit que l’installeur, sans toucher au reste. Par la suite, le développeur peut ajouter des fonctions spécifiques à Windows 10, comme la vignette animée ou la prise en charge du centre de notifications.

Avec l’arrivée de Windows 10 S – limité aux applications du Store – le mouvement de Microsoft a bien sûr du sens. L’éditeur espère certainement que les applications seront modifiées morceau par morceau pour puiser dans UWP, ce qu’elles peuvent faire effectivement. Dans la pratique, des produits comme Slack, Spotify, Telegram ou Paint.NET y sont du coup présents, mais ce mécanisme offert par Microsoft risque pour l’instant de couper toute envie de basculer sur UWP. Et que dire des produits de Facebook, comme l’application officielle, Messenger ou Instagram qui sont de simples conversions des moutures… iOS ?

Quels que puissent être les projets de Microsoft pour son système d’exploitation, ils devront tenir comptes des développeurs tiers. Personne aujourd’hui ne veut d’une plateforme fermée où l’on se sentirait limité par le nombre d’applications (expliquant en grande partie le gâchis de Windows 10 Mobile).

Les éditeurs tiers joueront forcément un rôle déterminant dans le succès d’un Windows, quel qu’il soit. C’est depuis longtemps la plus grande force du géant : son parc logiciel. Sur le papier, un projet comme Andromeda dispose d’un vrai potentiel, en rationalisant un grand nombre d’éléments et en poussant Win32 toujours un peu plus vers la sortie, pourquoi pas via des conteneurs. Mais même si ces API restent disponibles, il sera long et difficile de faire basculer les développeurs vers des technologies plus récentes.
... pendant que les investissements continuent sur les plateformes concurrentes

Enfin, Microsoft semble travailler sur plusieurs pistes à la fois. Andromeda doit encore être confirmé, mais les contours du projet sonnent curieusement « justes ». Et pour cause : c’est la vision première d’un Windows 10 totalement unifié. Ce qui n’empêche pas la firme d’investir largement sur les autres plateformes, comme le montrent ses multiples applications pour Android et iOS, sans parler de macOS et dans une moindre mesure Linux. Word, Excel, PowerPoint, OneNote, OneDrive, Sway et plus récemment Edge (voir notre prise en main) s’assurent ainsi une très bonne visibilité.

Arrow, en devenant Microsoft Launcher, montre encore un peu plus la volonté de l’éditeur de s’installer sur Android. La nouvelle interface se paie même le luxe d’intégrer des éléments Fluent Design, alors que le nouveau langage graphique ne fait officiellement son entrée qu’avec la Fall Creators Update, qui doit arriver le 17 octobre sur Windows 10. Certains imaginent déjà en fait un « Android made in Redmond », les conditions semblant réunies.

Quoi que soit finalement Andromeda, il ne reste plus qu’à attendre. Microsoft tiendra sa conférence Connect(), dédiée aux développeurs, du 15 au 17 novembre prochain. Au vu des dernières évolutions du côté de .NET, l’évènement est attendu. La société aurait là une occasion d’aborder les grandes évolutions futures de Windows 10.



merci à NextInpact