I kind of feel sorry for the MS chaps here. They admit it's wrong, say they will try to fix it but it'll take time because of bureaucracy. But then they get attacked in the thread because they are Microsoft. It's sad to see when they are generally trying.
Why do people call structured governance a bureaucracy? About a month ago there was a well received post on GTK's rotten foundations that boils down to several core points, one of them being: if you keep breaking stuff all the time, there's no point in investing in your API.
And here we are with initial OSS release of PS for *nixes. It's broken from the (valid) POV of its target audience and authors want to fix in an orderly fashion. But that's not enough. People at MS are "stupid or malicious", as some commenters put it, and it should be changed ASAP the way community wants, or else.
Or else what? How many of the people arguing for immediate change are an actual and/or potential consumers of PS? How many of people thinking it's a simple change (just do it) have actually maintained large piece of software deployed by thousands of users? I bet that with the exception of Daniel who opened the bug - none.
I don't envy folks maintaining PS. I used to share an apartment with dude who can't get over the US v MS to this day and anything even tangentially related to MS (or Gates) is definitely, without any doubt evil, devious and is some sort of extortion or at the very least embrace extend extinguish strategy. No matter that US v MS was 15 years ago when he was 10. This attitude is pervasive and turbo-counterproductive in cases like this one.
People are surprisingly bad at asking questions, which is why the help desk should always first ask "What are you trying to do?"
So why does "bureaucracy" have such a negative connotation? Like a lot of powerful tools, it is very easy to abuse. Unless you are very careful in design, you are likely to create a amplification attack of work. Most managers aren't careful, so few people have a positive experience.
> No matter that US v MS was 15 years ago when he was 10.
US v MS is an ongoing thing. It's never been over... So MS is releasing OSS stuff, but making it hard to run Linux alongside their OS on the same hardware. It's like a guy giving you a hug while stabbing you in the back.
Ah, so if a large corporation stabs me in the back for completely understandable reasons that are hard to avoid in the real world ... I'm still stabbed in the back.
I don't think the venom here is justified at all, but I also don't think it would be justified if it was one malicious person who did it.
But the problem and the poor decision needs a ruthless critique, the reasons it ended up this way are a side problem that most people shouldn't care about.
Decisions like the one I'm referring to are made at the very top level, so the "MS is a large organization, and can't be expected to act like its decisions are as simple as one person's" line does not hold water.
This isn't some obscure situation tucked into the back corners of some IRC chat. Open sourcing and reaching out to the community is, apparently, the companies direction going forward.
As such, they could/should prioritize these situations as a way of showing real commitment.
Dragging their heels is going to make it feel like nothing but marketing bullshit.
It might also signal to MS rank and file to cut their territorial bullshit (which MS has a storied history of).
Satya could get this fixed today if he said "This is the future. Get it done."
One of the reasons I haven't open sourced some stuff is because I don't want to deal with parts of the open source community, it's not even about having a thin skin (Which I don't) it's simply I'm not interested in dealing with them.
Microsoft is a convicted monopolist in the EU. That's black and white criminal (and immoral) behavior.
The PS team seems like it's doing its best, but you lose some degree of presumption of goodwill when you work for a criminal entity.
Ultimately, I don't think either side is right, but I also don't think either side is wrong.
MS made a choice not to cultivate goodwill in the OS community for years, and they profited from it. It's reasonable for that community to make them earn it back, and this is what it looks like (unfortunately for the individuals on the PS group).
My point is simply that Microsoft has to convince the community of their goodwill, and it will take time.
I don't think the existence of other companies with (mabye even bigger) PR problems has any bearing. So what? You want to be equally critical of Uber? Ok. Let's make them prove their goodwill too.
Furthermore, Microsoft is unique in this regard, because at the time of their conviction, they were fighting the browser wars with two open communities: FF and chrome.
> How many of the people arguing for immediate change are an actual and/or potential consumers of PS?
Right. I would think the _author_ of curl should probably have a bit of a say if someone adds a curl command to shell but it doesn't work like curl.
He's going to be the one receive angry tweets and in issues in gh.
> Or else what?
People will see how ridiculous this practice of adding aliases-but-no-aliases to existing tools is, and perhaps decide not to use PS for *nixes. Is that bad? Good? I don't know. I am guessing humanity will still go on.
> No matter that US v MS was 15 years ago when he was 10. This attitude is pervasive and turbo-counterproductive in cases like this one.
Yet decisions made at that point still have repercussions. Ship a stupid API -- reap pain for years to come. Don't think that's major news here.
This is not the first time. Microsoft did stuff like this before. Any web developers remember IE8 and its incompatibilities with everything else out there. WebRTC was discussing and working an API and Microsoft shows up at the last minute, and said "Yeah, we got a new completely different proposal". It's shit like that. Some people are more upset about stuff like than others.
Each time Microsoft releases free software, there has been discussion about whether they're really participating in a community. When Jason closes a PR, saying that it needs an RFC, and oh, by the way, you aren't allowed to start an RFC, I'm skeptical. When Jeffrey provides a work around, opens an RFC, and is generally diplomatic, I'm more hopeful.
One thing I find interesting is Frank's claim that "You have then ignored bug reports about this for years." It seems like users have a better chance of getting problems addressed on Github than the previous feedback mechanism.
Edit: after reading Daniel's blog post, which laurent123456 mentioned in another comment, this has indeed been a longstanding nuisance for curl users.
> One thing I find interesting is Frank's claim that "You have then ignored bug reports about this for years." It seems like users have a better chance of getting problems addressed on Github than the previous feedback mechanism.
Maybe, but I see that more as just that the "new MS" is trying to become more open and integrated with the OS community. The change being in the company culture and approach rather than the reporting platform. Ignoring long-standing bugs on many products was just the modus operandi for the old MS.
W00t, the new Microsoft is totally not like that old Microsoft that used to fund SCO's lawsuit and spread FUD about competing open-source software and patents violations.
1. Ubuntu doing it doesn't excuse MS. They're completely unrelated companies, and Ubuntu doesn't represent all of the FOSS OS world.
2. Ubuntu actually listened and stopped doing it.
I love how the EFF singles out Windows 10, but doesn't mention iOS and stock Android pretty much do the same thing.
Your tech rights articles points out IV, but fails to mention they raised money from Google. They also like to equate Linux, Android, and ChromeOS. That article is just poor. Microsoft has done, and continues to do some shitty things. Windows 10 update and privacy is a debacle. But their releases from a tech standpoint are a welcome change.
Very true! When those decisions were made PowerShell was never planned to be run on anything that ran those cmds natively. Now that they have changed the rules this should be expected as they move to a more neutral ground. I would be the 1st to call M$ on being jerks, but in this case give them a break the ship just did a 180 if you setup your furniture a certain why I guess you will have to set it up again...deal with it.
They have been on there, but not as standard Windows components. Perhaps they had lofty goals to replace the tools with a "better" version and changed direction.
Open source projects should really register trademarks and sue companies like Microsoft. It really doesn't pay to be the good guy. After all, if anybody used the word Windows for an alternative OS, I'm pretty sure Microsoft wouldn't be happy.
OTOH, if I (or a big entity like, say, Apple) released something called Java which didn't really behave like Java™, that would also result in a bit of madness.
I think trademarks are good; and when compatible alternatives exist, of say, a product named 'Foo™', they should be able to market themselves as 'Foo™ compatible' (and obviously not as 'Foo™').
There have been EEE accusations against e.g. systemd, so it's not clear that other OSS couldn't get the same. Actually now that I think about it I don't see why EEE would depend on unreleased source at all.
They aren't, but the only reason for these aliases in the first place is that type of attitude. curl is a commonly used utility, so lets replace the command with completely different.
>>PowerShell was never planned to be run on anything that ran those cmds natively.
Really? I thought that windows versions (native versions, not even cygwin) of wget and curl existed for more than a decade. I am not very good at googling old stuff, but I remember using curl natively in 2004 or so.
"Native" for Windows means comes out of the box or as an official release from Microsoft, according to many enterprise security teams. PowerShell was not allowed on stuff here until Microsoft started including it with the OS, even though Microsoft fully supported it on downlevel OSes.
PowerShell was originally designed so that you would mostly just run CmdLets with it so colliding with an actual program wasn't considered an issue. And these aliases haven been available since 2007.
They even admitted it them self that it was stupid and needs to be fixed though so just wait I guess?
edit: As a separate note I really would like to have versions of curl and wget that actually have all the params working but return the correct PowerShell objects (so the web request result thingie) instead of a String object. Or maybe have it do that with a flag or something.
I get the feeling there are a lot of commands that are going to need to be customized for actual typed output. It would be an interesting project to do a usr-bin for PowerShell.
Microsoft is being hated because there's a double standard here.
If Linux tools used Microsoft utility names, someone would've been sued.
Microsoft used wget and curl `aliases` (while native versions were there) and not only the didn't get sued, they are causing problems for original authors.
Of course no hate for the engineers doing this. They are just doing their job and this is a tough compatibility issue they are facing now.
wine also ships a regedit.exe, a notepad.exe, ... you can construe this as implementing API (it's usually the motivation) but it gets mushy. PowerShell has a curl also to "implement an interface", however loosely.
Agreed. That thread is a mixture of some useful and constructive dialogue and others just "piling on" offering problems without solutions. Those type of commenters would frustrate me to no end.
If only it was just thumb down and up, but it's also smiley faces, fireworks, hearts and probably many more. It feels like reading a conversation between teenagers on MSN Messenger.
This is such an old fud thing to say. As if using an emoji wasn't a mainstream thing for the vast majority of people to do.
Personally I like the inflections and emoji brings, plus it makes statements that might otherwise be taken as hostile either as well intentioned or just good old fashioned ribbing.
Plus, these reactions allow folks to add their sentiment/support to comment without adding an extra 'I agree' to the comment chain, it actually helps maintain a bit of focus.
GitHub never would have had that problem in the first place if :+1: were not so easy to do. There's no reason to make emoji part of GitHub flavored markdown or for it to be an autocomplete.
There is now no longer a reason to make emoji as part of the markdown, as the vast majority of devices can now do it natively. When Github flavored markdown was first created, emojis were most certainly not at all widespread natively.
Not quite, it's difficult to avoid using votes as a heuristic for post quality. A reader's first impression of a heavily downvoted comment is negative. It encourages groupthink, downvoted comments are unacceptable, and serve as examples to others who might step out of line. Also, there is less pause when downvoting a comment if it is already well in the negative. When you think about it, the whole downvoting thing is antisocial. It's bizarre that almost every popular discussion platform these days allows users to passively shit on each other as a core feature.
In a system that doesn't rank, sort, hide, distinguish, or otherwise do anything other than increment a counter next to a post... huh?
Groupthink: You mean a community that downvotes a comment about X suddenly has a positive notion about X because the votes are hidden?
An example to others: I see this as a good thing - it lets an outsider get a good feel for what community members like. A number is much easier to parse than thousands of comments.
"Shitting on others" is a very melodramatic way of "people saying they don't like a comment with numbers".
That's not exactly what they say and I agree with them that it would kind of suck if you wrote a bunch of scripts using the alias and MS broke them overnight.
Agreed. I also think people are not appreciating that even if you agree a part of your interface is bad, it's not a given that you should change it. There's a trade-off between improving your interface, and making breaking changes for your users. Evaluating that trade-off requires discussion and investigation.
Given that the Powershell that ships with Windows 7 doesn't have these aliases, whereas the one that ships with Windows 10 does, It seems that that Microsoft was already happy to have made the diametrically opposite breaking change without the corresponding discussion.
It seems that the users of faux-curl-on-powershell are now getting more consideration than the users of real curl under Windows a year or three ago, when Windows 8 or 10 made this change.
It's maybe a good sign. Opening the source and putting it on github means that curl and wget devs and users now feel empowered to ask Microsoft to change stuff in a way that they didn't before.
I think he's trying to accomplish being an asshole, he's succeeding. The whole thread is terribly saddening. It's a breaking change, they have a process for making breaking changes and the creator of PowerShell specifically says, "We need to fix this, let's get that process rolling. If you're on Windows here's how to work around it."
Then a bunch of jerks pile on about how it was a bad decision and all the Microsoft developers should feel bad.
The whole PR went from something pretty awesome to a great example of why we can't have nice things.
I sometimes have the feeling that a lot of developers don't really know what stability in APIs and breaking changes actually are. They themselves don't really care as long as the change is in their interest, but they can't (or won't) see the impact it has on existing code.
It's okay: this is also an opportunity to show that they can play well with others. Done correctly they can build trust within a community that has traditionally disliked them.
Yeahhhh, because developers like you and me are assigned the IP... Nope. We take a home paycheck but relinquish the IP to MS. What you're suggesting is tantamount to Walmart employees taking offense to Kmart for copying "everyday low prices". Sure, a real live human being came up with that tagline, but do you think Kmart or Walmart send them checks every month for the benefit derived for the now famous line? The open source world is different. In many cases individuals do maintain ownership of their IP. And when they don't, often it is held by a trustee for the benefit of the community.
Agreed. The first post from a PS team member was essentially "no, we don't want to do that, if you have a problem with it open an RFC" ... only later when it was plainly obvious that they were wrong did they agree to do the RFC themselves
How is it wrong to put an alias when wget and curl are not standard Windows applications? Sure a lot of people use them but it's easy enough to create a new alias.
Don't people have better things to do than bitch about an alias??
Perhaps MS had goals on their inception to make the commandlets behave more like the true applications then changed directions.
I think the outrage is over the fact that MS broke any use of the command wget or curl and also, it doesn't even provide a compatible alternative to what they were aliasing ala busybox.
That's great and all but their alias does not support all the switches of wget/curl. I have both installed as compiled windows binaries on my machine and was pulling my hair out wondering what the hell was going on.
Yes, because all that is needed for something to be "trademarked" is for someone to use the term "in commerce" in a consistent fashion and to build an audience of expectation for what that word means in a specific region and context of discourse. When I see "curl", I know what that is: I know what it is supposed to be, and so it is trademarked in most reasonable countries. I assume your question is "did they register their trademark?", but one does not need to register one's trademark to receive the protections of a trademark, as that would make the law somewhat useless: the goal of trademark law is in many ways to protect users who are being tricked, not trademark owners.
cURL: https://curl.haxx.se/legal/thename.html, so it seems he has not obtained a trademark on this in the US and lives in Sweden, where trademarks aren't a legal thing.
wget is a GNU project (now at least, originally?). They seem to (makes sense) have a thing against acknowledging trademarks period. So I'm not sure it'd make sense for them to even try to enforce a trademark should someone make a product named (or alias their product to the name) wget.
Trademarks aren't a universal thing, not every country or culture will have an equivalent concept, legal or otherwise. And if products aren't trademarked then claiming trademark abuse is inaccurate.
They're talking about changing it on the Windows version of Powershell too; I don't think it's something to be "ashamed" of, I thought it was a huge convenience - I knew that wget wasn't literally wget, but when I needed to fetch a webpage I knew the command to use without looking up Invoke-WebRequest or whatever it is and without having to go out and download the real wget.
I think taking the alias out is actually disappointing and a very slight change for the worse on Windows.
Everyone has a family to feed right? There is no shame in trying to make money.
Satya was super clear on this point - he told us to get out of our offices and go talk to customers and find out what they needed to be successful. "Don't worry about the money - if you are making customers successful, we have smart people that can figure out how to make money".
To the all the engineers in our company - that was music to our ears!
I understand your skepticism but there is a new Microsoft at work here.
Apparently a lot of people have this MS hates Open Source idea. A totally different experience you'll get when you follow the dev of VSCode, the team is just amazing, I don't know them, I don't like or hate MS but recent changes to MS has made MS embrace FOSS. Gone are the days when they pushed hard for the windows platform, now everyone runs multiple OSes, says the blog entry announcing PS.
The problem isn't about laziness, it is about defaults.
If Microsoft removed them, installing an update to PS could literally break existing scripts. Sure, you can trivially fix it by re-creating the aliases, but only after you realise that an Update broke it.
Exactly, which is why they can't just switch it back. But people are on the attack about something so trivial. For anyone who needs "the de-facto curl or wget" then create a custom alias or re-assign the old one. It's a minor inconvenience, whereas if Microsoft were to patch it and break existing systems that would be more worthy of criticism..
One imagines a sort of "boilerplate" at the top of every script, patiently fixing various P$ mistakes before the script actually gets to work. I've seen similar things in other challenged environments.