Keivan Beigi

keivan.io · Personal blog · on HN since 2020

Keivan Beigi, creator of the AppGet Windows package manager, writes about his software and how Microsoft's winget came about.

What HN saysHN links his post on AppGet's end in discussions of Microsoft's winget, with commenters seeing a pattern of Microsoft taking ideas after acquisition talks.
25HN people shared it
20linked it in comments
5stories submitted
2.2Kstory points
1 year agolast shared
2020people per year2026

Most-shared posts

  1. 1
    The Day AppGet Died
    22 people · 2.2K points · first shared 2020 · 535 comments on HN
  2. 2
    Appget what chocolatey wasnt
    3 people · first shared 2020

What HN people wrote when they linked it

rdgthree · 2020-06-01
This seems more in the realm of poorly managed expectations and less intentional and malicious copying. After reading his original blog post[0] I felt like they were originally interested in acquiring his software, but decided to go in a different direction with it and just weren't transparent about that decision at the time. It's not like they had to talk to him, the code is literally open sourced. There's definitely things to gain from talking to the author of the project, but seems a bit reaching to suggest they wouldn't have been able to do what they did without talking to him. And it seems like a particularly pessimistic read to assume they were just lying to him outright to pull from his experience. Very little to gain from being a shark in this scenario, tons to (potentially) gain from acquiring an existing package manager. Gotta follow the incentives. It's also worth mentioning that he mentioned the name similarity in his post in this way: > When I showed it to my wife, the first thing she said was, “They Called it WinGet? are you serious!?” I didn’t even have to explain to her how the core mechanics, terminology, the manifest format and structure, even the package repository’s folder structure, are very inspired by AppGet. He did not go on to mention that his own name was (nearly certainly) inspired by apt-get (stylized as AptGet on Ubuntu[1]). Implying he was the originator of the name [X]Get for a package manager seems aggressively dishonest, to the point that…
ajdude · 2025-08-12
> Microsoft being the cool guys phase is slowly over I'm going to re-post something that I wrote in 2022: I'm a bit surprised at how many of my friends have jumped ship to Visual Studio Code, including those who are very much for free software. They have always been in the business of embrace, extend, extinguish[0]. People tend to forget how evil M$ used to be because recently they have seemed like a beacon for Open Source, but I think they are just still evil[1]. I think we're still dealing with the same Microsoft that we've dealt with through the 90s. They are not a champion of open source, and they are still up to their old tricks.[2] [0] https://news.ycombinator.com/item?id=31966414 [1] https://keivan.io/the-day-appget-died/ [2] https://social.platypush.tech/@blacklight/108719097530863121
dustedcodes · 2025-04-21
This is not the first or last time this has happened. Microsoft does it intentionally and when they get caught they then give a fake apology and pretend it was a mistake. These mistakes keep happening and the pattern is always the same, MS teams engaging with a developer to learn all about their business idea and then they steal it: https://keivan.io/the-day-appget-died/
seabass-labrax · 2023-08-09
Debian has by far the most rigorous packaging standards of that list, so subsequent packaging for the other distributions should not be very difficult. Bundling the dependencies into an OCI container or AppImage to run them on non-Debian systems is also trivial once you have a Debian package, but of course that comes with disadvantages. Neither Mac nor Windows have a proper first-party package manager (although winget makes some inroads, thanks of course to Keivan Beigi), so comparison becomes rather a moot point for those platforms. [1]: https://keivan.io/the-day-appget-died/
DANK_YACHT · 2022-05-27
Homebrew is a package manager. Windows has its own package manager: https://docs.microsoft.com/en-us/windows/package-manager/ I guess MSI isn't a panacea after all. Here is a not so savory story on how winget came to be: https://keivan.io/the-day-appget-died/
heavyset_go · 2022-02-21
Your "Microsoft <3's open source" mentality is also out of date[1][2][3]. [1] https://news.ycombinator.com/item?id=28975856 [2] https://keivan.io/the-day-appget-died/ [3] https://news.ycombinator.com/item?id=28794352
rvz · 2021-10-11
It has been admitted. This is what an 'extinguish' looks like after embracing the idea of a Windows package manager by interviewing the creator of AppGet [0][1] and then dumping him to skip the extend part to full on copy it [2] with little to no credit and bundling it in the OS. This is a rare straight extinguish after an embrace, especially in open source. [0] https://keivan.io/the-day-appget-died/ [1] https://appget.net/ [2] https://www.theverge.com/2020/5/28/21272964/microsoft-winget-windows-p…
speeder · 2021-10-05
I went to read the post about "WinGet" and it was also very nasty. https://keivan.io/the-day-appget-died/
guitarbill · 2021-04-17
Except why not build on AppGet, or acquire it? I mean they kinda half-tried, it's an interesting read [0]. Microsoft has tonnes of money. They could have probably bought AppGet outright (I assume that since the author shut it down, they weren't too attached and MS could've bought it out), saved a lot of development time/money, had something that worked, and gone from there. There's obviously more to this story, but it just seems like Microsoft don't value DevOps/automation (true from my experience trying to do CI on Windows). Think about how many man-hours both inside Microsoft and outside are being wasted by WinGet not doing these things. A colossal waste of time. So yeah, from my perspective, the criticism is entirely justified. [0] https://keivan.io/the-day-appget-died/
chx · 2021-04-17
Looking at https://keivan.io/the-day-appget-died/ and https://github.com/microsoft/winget-cli/milestone/5 (seven months late and that's just 0.3) with a nod at https://i.imgur.com/gADLhSW.jpg I'd say someone recognized the lack of package managers at Microsoft and various underlings came up with solutions. One was the Andrew mentioned by Keivan who basically wanted to acquihire Keivan/AppGet but he lacked the clout to do so. Another was a manager, let's randomly call him Bart who decided to build an in house solution, grabbed a few people and created WinGet. While Andrew couldn't make it, Bart also didn't manage to secure enough funding to reach his goals so we are now in this cursed state where AppGet is gone, and Bart's team is very slowly moving along so no good solution is available and frustrated by the lack of results Bart might get shut down any minute...
victorgama · 2020-11-29
Just linking to the original story of appget vs winget: https://keivan.io/the-day-appget-died/
pavel_lishin · 2020-06-02
Probably from his blog post, where he was promised a job, which typically comes with some. https://keivan.io/the-day-appget-died/
throwaway_pdp09 · 2020-06-01
> nay, even allegations The allegation is right there. His blog. Which I quoted from. But didn't link to, so sorry, here it is https://keivan.io/the-day-appget-died/
ak39 · 2020-06-01
>>I am curious: why would I want to use AppGet or WinGet instead of Chocolatey?<< https://keivan.io/appget-what-chocolatey-wasnt/
PMan74 · 2020-06-01
> They cannot legally admit they looked at his code and copied the structure, because that opens them up to a copyright suit. AppGet is released under Apache License 2.0, Winget under MIT, I'm not sure how copyright would be an issue. AppGet's author addresses that point here https://keivan.io/the-day-appget-died/#edit-to-clarify-some-issues-
mehrdadn · 2020-06-01
I'm guessing you haven't read his post on this, because he's indeed not upset about the copying, but about the credit: https://keivan.io/the-day-appget-died/
KronisLV · 2024-03-29
I think people will take issue with this comment due to hating anything that is not open source, but I think that it rings true. > The author wrongfully believes all SSPL licensed code would be “open source” otherwise. This is incorrect. SSPL is good compared to the default, which is closed source. The other alternative would be not really having enough funding to keep developing the software, especially if a larger org comes along and earns money from it and you get nothing. Surely we know that many open source projects are struggling: https://staltz.com/software-below-the-poverty-line.html And if you don't think about protecting your code or ideas, things like this will inevitably happen: https://keivan.io/the-day-appget-died/ If someone wants to have AGPL or SSPL for their software, that's okay. If I find myself in circumstances where I can't use their project or code because of this (e.g. closed source project for someone else, where that would be an issue), that's just what I'll have to deal with.
3np · 2021-12-25
I don't know if you're aware of other not-that-ancient incidents like these? https://keivan.io/the-day-appget-died/ https://web.archive.org/web/20180715225433/https://threadreaderapp.com… It took significant public outrage and press coverage before either of those were even acknowledged, a long time after. > What were the chances that Microsoft was openly doing that? After reading the above, is it really that edgy to be assuming the worst? If it's truly just recurring instances of different rogue employees, doesn't that speak to a systemic and/or cultural issue that needs to be addressed with additional internal safeguards and/or deterrents to prevent it from happening again? To the credit of the relevant team here, today this was promptly addressed as soon as it got their attention. But it will take more than that to set to rest decades of precedence. (I did not partake in the flaming and don't find it constructive or beneficial; just saying I have full understanding of the suspicion and understand that MS are still on probation)
kayone · 2020-05-28
Author here, Because it's sure to come up here is a comment I wrote on Reddit that clarifies somethings, I haven't updated the original article since I'm not sure what the etiquette for updating a highly shared article is. ------ Code being copied isn't an issue. I knew full well what it meant to release something opensource and I don't regret it one bit. What was copied with no credit is the foundation of the project. How it actually works. If I were the patenting type, this would be the thing you would patent. ps. I don't regret not patenting anything. And I don't mean the general concept of package/app managers, they have been done a hundred times. If you look at similar projects across OSes, Homebrew, Chocolaty, Scoop, ninite etc; you'll see they all do it in their own way. However, WinGet works pretty much identical to the way AppGet works. Do you want to know how Microsoft WinGet works? go read the article (https://keivan.io/appget-what-chocolatey-wasnt/) I wrote 2 years ago about how AppGet works. I'm not even upset they copied me. To me, that's a validation of how sound my idea was. What upsets me is how no credit was given.
waon · 2020-05-28
Not disagreeing with you, but I think it's better to make it a little bit more clear what exactly was copied. Reading the article mentioned in the OP, the main selling point for appget seems to be that the packages are written in yaml: > Do you want to know how Microsoft WinGet works? go read the article (https://keivan.io/appget-what-chocolatey-wasnt/) But that alone doesn't particularly strike me as a completely novel approach on its own. Looking at package definitions for firefox across various package managers, you can notice that they all look somewhat similar to some degree. Though one could argue that appget and winget looks more similar than others, I'm not sure this is wholesale copying without digging into more details. But again, I'm not trying to argue that it's not, and I also agree the OP should've received more credit. appget: https://github.com/appget/appget.packages/blob/master/manifests/firefo… winget: https://github.com/microsoft/winget-pkgs/blob/master/manifests/Mozilla… scoop: https://github.com/lukesampson/scoop-extras/blob/master/bucket/firefox… homebrew cask: https://github.com/Homebrew/homebrew-cask/blob/master/Casks/firefox.rb That being said, the fake interview process explained in the article is totally unacceptable and deserves some explanations from MS.

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close