Comment Microsoft a tué AppGet



La semaine dernière, Microsoft a publié le gestionnaire de packages de WinGet dans le cadre de ses annonces lors de la conférence Build 2020 . Beaucoup considéraient cela comme une autre preuve du rapprochement de Microsoft avec le mouvement Open Source. Mais pas le développeur canadien Keivan Beigi, l'auteur du gestionnaire de paquets gratuit AppGet . Maintenant, il essaie de comprendre ce qui s'est passé au cours des 12 derniers mois, au cours desquels il s'est entretenu avec des représentants de Microsoft.

En tout cas, Ceyvan stoppe désormais le développement d'AppGet . Les services client et serveur passent immédiatement en mode maintenance jusqu'au 1er août 2020, après quoi ils seront définitivement fermés.

Dans son blog, l'auteur donne une chronologie des événements . Tout a commencé il y a un an (3 juillet 2019), quand il a reçu cette lettre d'Andrew, chef de l'équipe de développement chez Microsoft:

Ceyvan,

je gère l'équipe de développement de Windows App Model et, en particulier, l'équipe de déploiement d'applications. Je voulais juste vous envoyer une courte note pour vous remercier d'avoir créé l'appget - c'est un excellent ajout à l'écosystème Windows, ce qui facilite la vie des développeurs Windows. Nous serons probablement à Vancouver dans les prochaines semaines pour rencontrer d'autres entreprises, mais si vous avez le temps, nous aimerions vous rencontrer, vous et votre équipe, pour obtenir des commentaires sur la façon de vous faciliter la vie dans le développement d'appget.

Ceyvan était ravi: son projet de passe-temps a été repéré chez Microsoft! Il a répondu à la lettre - et deux mois plus tard, après avoir échangé des lettres, il est venu à une réunion au bureau de représentation de Microsoft à Vancouver. Andrew et un autre responsable du développement du même groupe de produits ont assisté à la réunion. Ceyvan dit qu'ils ont passé un bon moment - ils ont parlé des idées derrière AppGet, de ce qui n'était pas très bien fait dans les gestionnaires de packages actuels sous Windows et de ce qu'il prévoit pour les futures versions d'AppGet. Le développeur a eu l'impression que Microsoft voulait aider le projet: ils ont eux-mêmes demandé ce qu'ils pouvaient faire pour lui. Il a mentionné qu'il serait bien d'obtenir des prêts sur Azure, de la documentation sur le nouveau format de package MSIX., et il serait intéressant de résoudre les problèmes liés aux liens de téléchargement individuels.

Une semaine plus tard, Andrew a envoyé une nouvelle lettre dans laquelle il a en fait invité Andrew à travailler chez Microsoft: «Nous voulons apporter des modifications importantes à la distribution de logiciels sur Windows, et il y a une excellente occasion d'aider à quoi ressemblent Windows et le système de distribution d'applications dans Azure / Microsoft. 365. Dans cet esprit, avez-vous envisagé de passer plus de temps sur Appget, potentiellement chez Microsoft? » Il a écrit.

Cavean a d'abord hésité un peu - il ne voulait pas aller chez Microsoft pour travailler sur le Windows Store, le moteur MSI et d'autres systèmes de déploiement d'applications. Mais ils lui ont assuré que tout son temps, il ne travaillerait que sur AppGet. Après environ un mois de longue correspondance par e-mail, ils sont arrivés à la conclusion que l'accord serait très similaire à l'acqui-location - Microsoft engage le développeur avec son programme, et ils décident de le renommer en quelque chose d'autre, ou il devient Microsoft AppGet.

Ceyvan écrit que tout au long du processus, il n'a pas bien compris quel serait son rôle au sein de Microsoft. Quelles seront ses responsabilités? À qui dois-je faire rapport? Qui lui fera rapport? Il a essayé de clarifier certaines de ces réponses au cours de ces négociations lentes, mais n'a jamais reçu de réponse claire.

Après plusieurs mois de négociations par courriel très lentes, on lui a dit que le processus d'embauche via BizDev prendrait très longtemps. Une alternative pour accélérer le processus serait de simplement l'embaucher avec un «bonus», après quoi il commencera à travailler sur le transfert de la base de code. Il n'avait aucune objection, ils ont donc prévu plusieurs réunions / entretiens à Redmond.

Le processus a commencé. Le 5 décembre 2019, Cavean s'est envolé pour Seattle - au siège de Microsoft - et y a passé toute la journée, à interviewer différentes personnes et à négocier avec Andrew. Le soir, j'ai pris un taxi pour l'aéroport - et je suis retourné à Vancouver.

On lui a dit d'attendre un appel du service du personnel. Mais ensuite, depuis six mois, Ceyvan n'avait rien entendu de Microsoft.. Jusqu'à la mi-mai 2020, lorsqu'un vieil ami d'Andrew a annoncé la sortie de WinGet le lendemain:

Salut Ceyvan, j'espère que vous et votre famille vous portez bien - il semble que la Colombie-Britannique fasse du bon travail avec Cove par rapport aux États-Unis.

Je suis vraiment désolé que le poste de chef de projet n'ait pas fonctionné. Je voudrais prendre le temps de dire combien nous apprécions votre contribution et vos idées. Nous avons développé un gestionnaire de packages pour Windows, et le premier aperçu sera en ligne demain à Build 2020. Nous mentionnerons également appget sur notre blog, car nous pensons qu'il y a de la place pour différents gestionnaires de packages sur Windows. Notre gestionnaire de packages est également basé sur GitHub, mais évidemment avec notre propre implémentation et ainsi de suite. Il est également livré avec du code open source, donc nous serons évidemment ravis de vos commentaires.

Ceyvan n'était pas trop surpris. À ce moment-là, il était déjà devenu évident qu'il ne serait pas invité à travailler chez Microsoft, cela ne le dérangeait pas, car il doutait de vouloir travailler dans une si grande entreprise.

Mais la vraie surprise l'attendait le lendemain, quand il a vu le référentiel GitHub : «Quand j'ai montré le référentiel à ma femme, la première chose qu'elle a dite était:« Ils l'ont nommé WinGet? Es-tu sérieux??" Je n'ai même pas eu à lui expliquer comment la mécanique de base, la terminologie, le format et la structure du manifeste , même la structure de dossiers du référentiel de packages, sont inspirés par AppGet. "

«Suis-je contrarié par le fait que Microsoft, une entreprise de 1,4 billion de dollars, se soit enfin réunie et ait publié un gestionnaire de package décent pour son produit phare? Non, ils auraient dû le faire il y a de nombreuses années. Ils n'auraient pas dû gâcher le Windows Store autant qu'ils l'ont fait », écrit Ceyvan. - En réalité, peu importe mes efforts pour promouvoir AppGet, il ne se développera jamais aussi vite que la solution de Microsoft. Je n'ai pas créé AppGet pour devenir riche, devenir célèbre ou obtenir un emploi chez Microsoft. J'ai créé AppGet parce que je pensais que nous, les utilisateurs de Windows, méritons également une expérience décente dans la gestion des applications. Ce qui me dérange, c'est comment exactement tout cela a été fait. Communication lente et terrible. À la fin, silence radio complet. Mais surtout, cette annonce m'a frappé. AppGetqui est objectivement la source de la plupart des idées pour WinGet, n'a été mentionné que comme un autre gestionnaire de paquets, quipar hasard existe dans ce monde . Dans le même temps, d'autres gestionnaires de packages, avec lesquels WinGet a très peu en commun, ont été mentionnés et expliqués de manière beaucoup plus approfondie. »

Ceyvan Beigi n'est pas fâché. Il dit qu'il n'y a pas de doublure argentée. À tout le moins, WinGet est construit sur une base solide et a le potentiel de succès. Et les utilisateurs de Windows peuvent enfin obtenir un gestionnaire de packages décent. Et pour lui, cette histoire est devenue une expérience précieuse: «Vivez un siècle - apprenez un siècle».

Il explique que la copie de code n'est pas un problème, c'est le point de l'Open Source. Et il ne veut pas dire copier le concept général des gestionnaires de packages / applications. Mais si vous regardez des projets similaires sous OS X, Homebrew, Chocolaty, Scoop, ninite, etc., alors chacun a ses propres particularités. Cependant, WinGet fonctionne de la même manière que AppGet: «Vous voulez savoir comment fonctionne Microsoft WinGet? Allez lire un article que j'ai écrit il y a deux ans sur le fonctionnement d'AppGet », écrit-il.

Ceyvan était seulement contrarié par le fait que son travail n'était mentionné nulle part.

Pour référence. «Embrasser, étendre et éteindre» est une expression telle que définie par le département américain de la Justice., a été utilisé par Microsoft pour décrire une stratégie de déploiement de logiciels qui utilise des normes largement acceptées dans l'industrie. La stratégie consistait à étendre ces normes et à utiliser davantage ces différences pour obtenir un avantage sur les concurrents.

Dans le cas d'AppGet, on ne peut pas dire que cette stratégie a été appliquée dans sa forme pure, mais certains éléments peuvent être considérés. Les partisans du logiciel libre le considèrent comme un mode d'action moralement inacceptable et se méfient toujours de l'initiative de Microsoft visant à introduire le sous-système Linux dans le système d'exploitation Windows ( WSL ). Ils disent que Microsoft, par sa nature même, n'a pas changé et ne changera jamais.





All Articles