
Microsoft now credits maker of AppGet but offers no apology - crones
https://www.zdnet.com/article/microsoft-credits-maker-of-package-manager-it-copied-for-windows-10-but-offers-no-apology/
======
forgingahead
Cross-posted from another thread that is now buried:[0]

The "Andrew" in question who courted Keivan (AppGet's dev) is Andrew Clinick.
He wrote a blog post in response to this a few days ago:

[https://devblogs.microsoft.com/commandline/winget-install-
le...](https://devblogs.microsoft.com/commandline/winget-install-learning/)

Still seems pretty tone-deaf to me - obviously MS seems to be in the legal
clear, but the moral high ground and lots of dev goodwill has been lost.

It also damages the ability for devs to informally meet and chat with PMs at
larger companies everywhere - adds a lot of mistrust to the eco-system.

This is not that MS came up with their own package manager. It's the entire
song-and-dance routine that was conducted about potentially hiring Keivan, and
then ghosting the engineer whose open-source product you were simultaneously
cloning.

Of course, people will forget, but many will still remember. This is still a
net-negative all-around when it didn't need to be.

 __Edit, this ZDNet article adds no new information and nothing has changed
since the other articles have come out, but I guess it 's good that more
places are covering it to signal boost this properly.

[0][https://news.ycombinator.com/item?id=23375624](https://news.ycombinator.com/item?id=23375624)

~~~
Joeri
I have a different reading of this. I think this is them doing the best they
can within the limits set by microsoft's legal department. They cannot legally
admit they looked at his code and copied the structure, because that opens
them up to a copyright suit. In the blog post it seems they went as far as
they could: admitting to being influenced by the ideas, without having
actually copied any of the code.

If they really want to fix this, they need to pay AppGet's author some money,
and get something in writing so they are legally protected from copyright
suits. I assume they're negotiating this right now, and that once this deal is
done there will be another blog post that is more genuine.

They really messed this up because it would have been cheap to get something
in writing before releasing WinGet. Someone at microsoft legal dropped the
ball.

~~~
xhkkffbf
I'm mean I know it would be nice to toss him some money. And it sucks when
companies ghost people. But really isn't the point of open source that
everyone can do what they want with the code? And if you're not distributing
the actual code, why do you owe them anything?

If I gave credit to everyone who influenced the code I write, the file would
be huge. Does the world have enough disk drives to hold all the credit where
credit is due?

~~~
throwaway_pdp09
> why do you owe them anything?

decency, morals, thoughtfulness, that kind of thing

> If I gave credit to everyone who influenced the code I write...

They directly ripped it off.

Big companies will try not to pay even when they have money. To not even give
the minimum of non-monetary credit is even less reason for me ever to release
code under a "what's mine is yours licence".

~~~
wayneftw
> They directly ripped it off.

No, they used some very common and unoriginal ideas that were implemented in
AppGet.

Can you point out exactly what was "ripped off" here?

\- [https://github.com/microsoft/winget-
cli](https://github.com/microsoft/winget-cli)

\- [https://github.com/appget/appget](https://github.com/appget/appget)

They're not even written in the same language. And everything done in AppGet
has been done before. _Yawn_

> Big companies will try not to pay even when they have money.

I will try not to pay, even when I have money. I think this applies to most
people. Who wants to pays for something that's already free? I'm not running a
fuckin charity over here.

> To not even give the minimum of non-monetary credit...

They've given it.

 _However, I wonder if during all of this Keivan has credited Microsoft for
all of the open source tools, services and frameworks that he 's used in his
other work???_

~~~
throwaway_pdp09
> Can you point out exactly what was "ripped off" here?

from his blog

"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."

> I will try not to pay, even when I have money

Then people like you will kill off exactly the things they leech off, by
pissing off those people who made them from their goodwill.

> However, I wonder if during all of this Andrew has credited Microsoft for
> all of the open source tools, services and frameworks that he's used in his
> other work???

I don't know, has he? Why raise the question instead of answering it.

You're curiously willing to defend microsoft.

~~~
michaelcampbell
> are very inspired by AppGet.

This is "ripping off" now? Maybe they did steal it wholesale, maybe not, but I
haven't seen any evidence (nay, even allegations) of it.

~~~
throwaway_pdp09
> 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/](https://keivan.io/the-day-appget-died/)

~~~
michaelcampbell
inspiration != theft

------
lallysingh
'He went for an interview at Microsoft's Redmond headquarters in December,
which apparently "went well", but Andrew didn't inform him he would not get
the job at Microsoft until six months later – on the day before the WinGet
preview would be unveiled at Build 2020. '

This is bullshit. Keep him quiet with the hope of a job (embrace) until they
release their version (extend, extinguish). Changing CEOs doesn't change
everyone who works there.

~~~
Voloskaya
Can we please stop trying to slide in an EEE reference everytime something
comes up about MS?

You have clearly embraced EEE, but now you are extending it way past what it
actually means, and if people like you continue you will extinguish it because
it will not mean anything anymore.

Please don't EEE EEE.

~~~
Lammy
We can stop talking about EEE when Microsoft stop practicing it. This time is
just with regard to a community instead of a particular software product.
WinGet is the “Extend” step where they overtake AppGet in usage and probably
in package registrations until AppGet withers and eventually Extinguishes
itself.

~~~
Voloskaya
That's not remotely what EEE is about, which is my point.

EEE refers to a specific business practice that is not related to this story
at all.

You can use other words in the language to convey that this particular move
from MS is a dick move without having to use EEE. And reserve talking about
EEE when it is actually relevant.

Using it all the time just completly dilute it until it becomes totally
meaningless.

~~~
Lammy
How is it not? WinGet : AppGet :: MSJVM : HotSpot

------
dustinmoris
For me the worst thing about this entire fiasco is really Microsoft's brazen
unapologetic predator behaviour.

They've invited Keivan to their headquarters with a bait, giving him the wrong
impression that they wanted to help him with the project when really they
wanted to extract valuable information from his experience. He's been working
on AppGet for a while, ran into issues, thought about problems which users are
having, dealt with certain challenges and iterated until he got to a certain
understanding/vision of his product. This is all very very valuable
information not published anywhere in an open source thoughts database. It's
just the experience and knowledge that only lives in Keivan's head and
Microsoft knew that they had to bait him with some false promises and hopes in
order to get access to that information which he might otherwise not have
shared with a competitor. Also they didn't forget about Keivan. They knew what
they were doing. At the beginning of the process someone put in their calendar
to contact him the day before BUILD 2020 to send him this email, which is why
he got the email the day before the announcement of WinGet. This was no
coincidence.

That is fraud in my opinion. Who cares about his source code, they stole much
more valuable stuff from him. Anyone who doesn't see that is ignorant or
blind.

Keivan should take legal action.

~~~
scott_s
What legal action, though? That is, what did Microsoft do that violates the
law? I don't see anything. The code is open source, so I believe they're in
the clear there. And I don't think they had a contract with Keivan, so I don't
see any breach of contract disputes. To be clear, I think Microsoft acted
unethically. But I don't see any obvious violation of the law.

~~~
Lammy
I don’t need a legal basis to be able to find Microsoft’s actions
reprehensible here.

~~~
scott_s
I agree. But the person I'm responding to was advocating for legal action.
Unfortunately, I don't see what legal action to take.

~~~
dustinmoris
If something feels incredibly wrong, there's a good chance that it is wrong.
If something is wrong, there's a good chance that a good lawyer will find some
legal basis on which they could seek for damages.

> Unfortunately, I don't see what legal action to take

Good for you. Someone else might still feel differently and want to check with
a legal advisor to explore their options.

------
ru552
Taking the dude's work that he licensed them to take (via Apache 2.0) is one
thing. Giving him false hope about a future job prospect is another.

~~~
stormdennis
Yes that was really low scam artist type behaviour. Still, on the bright side,
the more profitable MS are, the more money for Bill and Melinda's good causes

~~~
tarsinge
Yeah if someone scam you $10 but give $0.001 to charity I guess it's a
brighter side than if they kept everything.

------
rdgthree
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 it throws his entire side of the argument into question for me.

I haven't looked thoroughly into the code, but this feels like someone who was
expecting something to come out of his hard work and is (understandably)
bummed it will now likely amount to nothing. I have trouble putting much blame
on Microsoft for that.

[0][https://keivan.io/the-day-appget-died/](https://keivan.io/the-day-appget-
died/)

[1][https://help.ubuntu.com/community/AptGet](https://help.ubuntu.com/community/AptGet)

~~~
onemoresoop
It may also serve as a warning to other developers to beware the big MS’s
practices

------
mikece
I am curious: why would I want to use AppGet or WinGet instead of Chocolatey?

And is the assertion that Microsoft took code from AppGet as part of WinGet?
The fact that the word "copied" is in quotes makes me wonder what the beef
is... and did anyone ask the APT team if they feel ripped off by the existence
of Windows package managers?

~~~
JamesBarney
WinGet is written in c++ and a AppGet is written in c# so the code isn't
copied.

I think his complaint is they copied the functional interface.

~~~
thePunisher
That's no crime. If developers wouldn't be allowed to do that we'd have a
major crisis on our hands.

The worst infringement as far as I'm concerned is that MS tricked him into
giving up all his secrets before they implemented it themselves.

If Microsoft ever came to talk to me about one of my projects the only thing
I'd tell them is: "How much?" (are you willing to pay for it).

~~~
411111111111111
What secrets? The code is open source. They were probably planning to hire him
as well, something just happened in the meantime before he started so it
didn't work out.

It's a shitty situation for him, but that's just life. Sometimes it sucks.

~~~
onemoresoop
His future plans that he disclosed at MS. They made the guy think MS would
hire him then they didnt even bother to show him the finger.

------
nojs
Actual link to the statement:
[https://devblogs.microsoft.com/commandline/winget-install-
le...](https://devblogs.microsoft.com/commandline/winget-install-learning/)

------
logicalmind
"We will be open sourcing our service code into our our WinGet repository on
GitHub so that we can work together with Keivan and others to enable a better
WinGet repository listing service."

People who decide to "work together" should carefully read and understand the
terms under which they're doing so:

[https://opensource.microsoft.com/pdf/microsoft-
contribution-...](https://opensource.microsoft.com/pdf/microsoft-contribution-
license-agreement.pdf)

~~~
hajile
Yes, "work together" means you work for free for Microsoft. Nothing more.

Because you sign your code over to them, they are free to CLOSE SOURCE future
versions at ANY TIME.

Sure, you could attempt to fork, but the platform is proprietary and can lock
you out (very likely in this case for "user security"). They are the biggest
company in the world (by market cap) and those deep pockets mean they can
outspend you until you go under or fall too far behind. It wouldn't be the
first time.

------
chooseaname
Maybe I'm old school, but I think an apology should use the word apologize in
it.

This is a "thank you", not an apology. But, at least it is better that what
they did last week.

~~~
squarefoot
Not sure if it applies here, but I've read before that is common practice for
companies to never admit errors or apologizing because it could be used
against them in court as if they were admitting some wrongdoing.

~~~
ken
IANAL. I found an interesting article [1], "Legal Consequences of
Apologizing", which says:

> Usually, apologies are admissible into evidence. Admissability into evidence
> does not necessarily mean useful as evidence of guilt. Since an apology
> usually can be admitted into evidence, and because some plaintiffs choose to
> understand an apology as an admission of guilt, it seems safest not to
> apologize. Case law suggests, however, that courts do not see it this way.
> Judges and juries seem to like apologies and treat them favorably. Often, an
> apology does nothing to satisfy the plaintiff's burden of proof. In some
> proceedings, an apology can be a mitigating factor, and the lack of an
> apology can be an aggravating factor.

and concludes:

> This article illustrates that judges and juries understand that expression
> of sympathy, regret, remorse and apology are not necessarily admissions of
> responsibility or liability. This serves the public interest because such
> expressions have the potential to reduce the number of lawsuits, rather than
> attract litigation. When someone goes to court armed only with an apology,
> they may find that it does nothing to satisfy the elements of the case they
> need to prove. Additional evidence is required, almost as if the apology did
> not exist.

Cool.

[1]:
[https://scholarship.law.missouri.edu/cgi/viewcontent.cgi?art...](https://scholarship.law.missouri.edu/cgi/viewcontent.cgi?article=1313&context=jdr)

------
dotjosh
It's unfortunate to hear all of this from Beige's perspective. But the
optimist in me thinks this is probably just a big company focusing on a
release and putting everything else on the back-burner. That doesn't make it
right, but I want to think this isn't an example of how Microsoft wants to
treat the community moving forward. I think AppGet, an officially supported
package manager, _should_ be a core feature. It needed to happen one way or
another.

But the lack of UI to browse/search I think is too lacking so I put this up a
few days ago: [https://wingetit.com](https://wingetit.com) \-- I imagine
Microsoft is going to copy/replace this soon, but I won't mind.

------
benatkin
It sounds like an apology to me. What's missing, just the words "I'm sorry?"

~~~
ak39
Sounds like an apology. That's ok, I suppose. But I'd personally also love to
see Microsoft _pay_ Keivan for his contribution. It needn't be huge sums but
something. No, not because it's the moral thing to do, but for the sake of
Microsoft's GitHub and their open source community strategy itself. Keivan's
project is _exactly_ the type of projects Microsoft wants to encourage from
their GitHub & open source endeavours for the eventual benefit of Microsoft.
Paying Keivan something for his contribution to WinGet will really incentivise
others to want to contribute to the ecosystem.

~~~
bzb3
Then Google should pay Oracle for using the Java API :')

~~~
josefx
Did Google ask over Oracle engineers for job interviews just to pick their
brains on Java?

------
hysan
Original source was posted to HN a few days
ago:[https://news.ycombinator.com/item?id=23367153](https://news.ycombinator.com/item?id=23367153)

It likely got no views because the title is worded in such a way as to avoid
the actual topic at hand. Given how it's written, my gut is that it was titled
to avoid being picked up, so I'm glad a news source caught wind and is calling
them out with an appropriate title.

------
heavymark
There message sounds like a clear apology, unless the poster is hoping to hear
the actual words "I'm sorry". They screw uped and came clean, even though like
in most cases takes trending on Hacker News to get that resolution.

~~~
crones
I thought the message itself was okay and posted the article as it shows at
least some action since the previous Hacker News discussion. I didn't want to
edit the article's title though, beyond cutting the words "for Windows 10" to
make it fit.

~~~
awinder
You did the right thing, the source article just has a dreadful title.

------
itsspring
Is there a way to protest this?

Perhaps devs should upload every package with a readme that includes a
reminder for developers, something like:

"This package is dedicated to Keivan Beigi. Read more about what Microsoft did
to Kevin here: thankyoukevin.com"

Any better ideas?

~~~
Kenji
Yes. Stop using Windows. Contribute to FOSS alternatives. License your code
GPL3. Don't ask someone else to change. Be the change.

~~~
gowld
Economy of scale means freeloaders are too expensive a burden, preventing
keeping up with closed source, for projects of unbounded complexity, like OS
ecosystems. Sad but true.

------
kolanos
Anyone know why Microsoft implemented their package manager in C++ and not C#?

~~~
vips7L
Probably because of startup time and size. Powershell faces these same
problems.

~~~
Matthias247
I would rather guess because "that was the team/persons favorite tool to do
the job".

In most areas tool choices are less about objective benefits and more based on
familiarity/popularity/etc.

------
jeffrallen
Any apology would pretty much be "we're sorry we got caught".

------
bluedino
They could at least send him a new Surface Pro

~~~
saos
I thought they offered me Azure credit? Maybe he preferred that.

~~~
yesbabyyes
They offered, but they didn't even come through on that:
[https://news.ycombinator.com/item?id=23333070](https://news.ycombinator.com/item?id=23333070)

~~~
saos
Ohh that’s not cool.

------
atarian
Based on what I read, I'm guessing Andrew initially thought Keivan was someone
worth working with because of AppGet. But then something during the interview
started rubbing Andrew the wrong way. Maybe it was the way Keivan talked or
how he dressed. So he started ghosting Keivan and things got more awkward.
Maybe this worked for Andrew in the office, but that's not how things work
between a company and its community.

------
gowld
This is nuts. Why not send the guy a $10-50K check (or to a nonprofit of his
choosing) as a bounty/thank-you/we-love-open-spource-PR thing?

It would be one thing if there were trying to to hide it with closed source,
but this was stupidly evil out in the open.

~~~
ocdtrekkie
My assumption is a program manager can relatively easily write a letter
thanking someone for their insight and work, but that a significant amount of
paperwork is entailed in sending someone a big check. It really depends what
level this issue has made it up to for Microsoft. Did Satya hear about this?
If the answer's no, money probably is hard to just disburse.

------
hardsoftnfloppy
“We contribute to open source now, everything is fair game”

------
lstroud
Embrace, extend, extinguish?

------
jtdev
Why anyone works with or supports Microsoft beyond corporate IT at this point
is completely beyond me.

------
tasogare
License is Apache 2.0 which does not require acknowledgment. I’m always
surprised when open source project creators are complaining about a legal move
made by a company related to their project: they allowed it in the first
place. If they wanted more, like citation or financial advantage, they had the
choice to force interested parties to comply by choosing another license.
Betting on companies goodwill is risky...

~~~
viraptor
There's a difference between ethical and legal. You can do a lot of things
that don't break any law but make you a terrible human being.

Of course you can copy someone's design and not acknowledge it unless it's
patented. You're going to be a dick then, not a criminal.

~~~
jdmichal
Is it really being a dick when someone explicitly, through choice of a
license, allows it? What is this post from Microsoft except an explicit and
public thank you? Which seems like it should certainly appease the "not a
dick" criteria to me...

~~~
fredophile
If that's all they did it wouldn't be so bad. However, they also discussed the
project, future improvements, etc with the strong implication that they would
hire him or pay for his work so far. This could have been well intentioned but
you can't tell from the outside and people tend to default to assuming bad
things about actions taken by large companies.

