Cómo Microsoft mató AppGet

Cómo Microsoft mató AppGet

La semana pasada, Microsoft lanzó un gestor de paquetes WinGet como parte de los anuncios en la conferencia Build 2020. Muchos lo consideraron otra prueba del acercamiento de Microsoft al movimiento de código abierto. Pero no el desarrollador canadiense Keivan Beigi, el autor del gestor de paquetes de código abierto AppGet. Ahora está tratando de comprender lo que ocurrió en los últimos 12 meses, durante los cuales tuvo comunicaciones con representantes de Microsoft.

De todos modos, ahora Keivan detiene el desarrollo de AppGet. Los servicios cliente y servidor entran en modo de mantenimiento inmediato hasta el 1 de agosto de 2020, después de lo cual se cerrarán para siempre.

En su blog, el autor proporciona una cronología de eventos. Todo comenzó hace un año (3 de julio de 2019), cuando recibió este correo de Andrew, el líder del grupo de desarrollo en Microsoft:

Keivan,

Dirijo el equipo de desarrollo del Modelo de Aplicaciones de Windows y, en particular, el equipo de implementación de aplicaciones. Solo quería enviarte una nota breve para agradecerte por crear appget; es un gran complemento para el ecosistema de Windows que hace que la vida de los desarrolladores de Windows sea mucho más fácil. Probablemente estemos en Vancouver en las próximas semanas para reunirnos con otras empresas, pero si tienes tiempo, nos gustaría conocerte a ti y a tu equipo para obtener comentarios sobre cómo hacer tu vida más fácil en el desarrollo de appget.

Keivan estaba emocionado: ¡su proyecto de pasatiempo había sido notado por Microsoft! Respondió al correo y, después de dos meses de intercambios de correos, asistió a una reunión en la oficina de Microsoft en Vancouver. En la reunión estaban Andrew y otro gerente de desarrollo del mismo grupo de productos. Keivan dice que se divirtió mucho; hablaron sobre las ideas detrás de AppGet, sobre lo que no se había hecho bien en los gestores de paquetes actuales en Windows y lo que planea en futuras versiones de AppGet. El desarrollador tuvo la impresión de que Microsoft quería ayudar al proyecto: ellos mismos preguntaron qué podían hacer por él. Mencionó que sería bueno recibir un poco de crédito en Azure, algo de documentación sobre el nuevo formato de paquetes MSIX, y sería útil corregir problemas con enlaces de descarga individuales.

Una semana después, Andrew envió un nuevo correo electrónico, en el que prácticamente invitaba a Andrew a trabajar en Microsoft: «Queremos implementar algunos cambios significativos en la distribución de software en Windows, y existe una gran oportunidad para ayudar a dar forma a cómo se verá Windows y el sistema de distribución de aplicaciones en Azure/Microsoft 365. Con esto en mente, ¿has considerado dedicar más tiempo a appget, potencialmente en Microsoft?» — escribió.

Keyvan inicialmente dudó un poco, ya que no quería ir a Microsoft para trabajar en Windows Store, el motor MSI y otros sistemas de despliegue de aplicaciones. Pero le aseguraron que dedicaría todo su tiempo únicamente a AppGet. Después de aproximadamente un mes de prolongados intercambios de correos electrónicos, llegaron a la conclusión de que el acuerdo se asemejaría mucho a una adquisición por contratación: Microsoft contrataría al desarrollador junto con su programa, y decidirían si renombrarlo a algo diferente, o se convertiría en Microsoft AppGet.

Keyvan escribe que durante todo el proceso no tenía muy claro cuál sería su rol en Microsoft. ¿Cuáles serían sus responsabilidades? ¿A quién reportar? ¿Quién le reportaría a él? Intentó aclarar algunas de estas respuestas durante estas lentas negociaciones, pero no obtuvo una respuesta clara.

Después de unos meses más de negociaciones muy lentas por correo electrónico, le dijeron que el proceso de contratación a través de BizDev tomaría mucho tiempo. La alternativa para acelerar el proceso sería simplemente contratarlo con un «bono», tras lo cual comenzaría a trabajar en la migración de la base de código. No tenía objeciones, así que planificaron varias reuniones/entrevistas en Redmond.

El proceso comenzó. El 5 de diciembre de 2019, Keyvan voló a Seattle — a la sede de Microsoft — y pasó todo el día allí, entrevistándose con diferentes personas y negociando con Andrew. Por la tarde, tomó un taxi al aeropuerto y regresó a Vancouver.

Le dijeron que esperara una llamada del departamento de recursos humanos. Pero luego, durante seis meses, Keyvan no escuchó nada de Microsoft.. Hasta mediados de mayo de 2020, cuando un viejo conocido de Andrew informó sobre el lanzamiento del programa WinGet al día siguiente:

Hola, Keyvan, espero que tú y tu familia estén bien — parece que la Columbia Británica está manejando el COVID mejor que Estados Unidos.

Lamento que no haya funcionado el puesto de gerente de proyecto. Quería encontrar un momento para decirte cuánto valoramos tu contribución e ideas. Hemos desarrollado un gestor de paquetes para Windows, y la primera vista previa se transmitirá en vivo mañana en Build 2020. También mencionaremos appget en nuestro blog, ya que creemos que hay espacio para varios gestores de paquetes en Windows. Nuestro gestor de paquetes también se basa en GitHub, pero, por supuesto, con nuestra propia implementación y demás. También se lanzará como código abierto, así que, evidentemente, estaremos encantados de recibir cualquier aporte tuyo.

Keyvan no estaba muy sorprendido. Para ese momento, ya era evidente que no lo invitarían a trabajar en Microsoft, y eso no lo molestó, porque dudaba de que realmente quisiera trabajar en una empresa tan grande.

Pero la verdadera sorpresa lo esperaba al día siguiente, cuando vio repositorio de GitHub: “Cuando le mostré el repositorio a mi esposa, lo primero que dijo fue: '¿Lo llamaron WinGet? ¿En serio?' No tuve que explicarle cómo funcionan las mecánicas, la terminología, el formato y la estructura del manifiesto, incluso la estructura de las carpetas del repositorio de paquetes están inspiradas en AppGet.”

“¿Estoy decepcionado de que Microsoft, una empresa que vale 1.4 billones de dólares, finalmente haya reunido fuerzas y lanzado un gestor de paquetes decente para su producto insignia? No, debieron hacerlo hace muchos años. No debieron arruinar tanto la Tienda de Windows como lo hicieron”, escribe Keyvan. “En realidad, por mucho que intentara promover AppGet, nunca crecería a la misma velocidad que la solución de Microsoft. Creé AppGet no para enriquecerme, obtener fama o conseguir un puesto en Microsoft. Creé AppGet porque creo que nosotros, los usuarios de Windows, también merecemos una experiencia digna para la gestión de aplicaciones. Lo que me preocupa es cómo se llevó a cabo todo esto. Comunicación lenta y horrible. Al final, un completo silencio radial. Pero lo que más me afectó fue este anuncio. AppGet, que objetivamente es la fuente de la mayoría de las ideas para WinGet, fue mencionado solo como otro gestor de paquetes que simplemente existe accidentalmente en este mundo.. Al mismo tiempo, otros gestores de paquetes, con los que WinGet tiene muy poco en común, han sido mencionados y explicados con mucho más detalle.

Keyvan Beigi no está decepcionado. Dice que no hay mal que por bien no venga. Al menos, WinGet se basa en una sólida fundación y tiene potencial para el éxito. Y los usuarios de Windows, quizás, finalmente obtengan un gestor de paquetes digno. Para él, esta historia ha sido una experiencia valiosa: 'Vive un siglo, aprende un siglo'.

Él explica que copiar código no es un problema, esa es la esencia del Open Source. Y no se refiere a copiar la idea general de los gestores de paquetes/aplicaciones. Pero si miramos proyectos similares en OS X, como Homebrew, Chocolaty, Scoop, ninite, etc., todos tienen sus particularidades. Sin embargo, WinGet funciona casi de la misma manera que AppGet: '¿Quieres saber cómo funciona Microsoft WinGet? Ve y lee el artículo que escribí hace dos años sobre cómo funciona AppGet.', escribe él.

A Keyvan solo le molestó que su trabajo no fuera mencionado en ninguna parte.

Para referencia. 'Embrace, extend and extinguish' (' abrazar, extender y extinguir') es una frase que, según lo establecido por el Departamento de Justicia de EE.UU.,, fue utilizada por Microsoft para describir su estrategia de infiltración en la industria del software que usa estándares ampliamente aceptados. La estrategia involucraba la expansión de estos estándares y el uso de estas diferencias para obtener una ventaja sobre los competidores.

En el caso de AppGet, no se puede decir que esta estrategia se aplicara de manera pura, pero algunos elementos se pueden considerar. Los defensores del software libre consideran que es un modo de actuar moralmente inaceptable y todavía desconfían de la iniciativa de Microsoft para implementar una subsistema de Linux en el sistema operativo Windows (WSL). Dicen que Microsoft, en esencia, no ha cambiado y nunca cambiará.

Cómo Microsoft mató AppGet


Fuente: habr.com

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster