3 ms·
I think that it is just the case of a Windows power user that is so used too it's ecosystem that he did not yet aquire the ease of use of linux native things.
by greatgib 1y ago
I think that it is just the case of a Windows power user that is so used too it's ecosystem that he did not yet aquire the ease of use of linux native things.
PowerShell give the impression of being simple for basic users but it's a cluster shell of complexity. With a mess of everything being subtly different and broken. Just look at the case of Microsoft that hijacked the curl command in PowerShell with different arguments.
It's even worse if you are an intense user of vscode because they will obviously go hand to hand.
The whole article has proof of my opinion.
For example:
still have not bothered to add tab completion to my shell scripts because of the extra steps involved. I am lazy.
PowerShell gives you this for free when you write a “cmdlet”
He says that PowerShell gives the completion for free but for that he has to create a cmdlet and fill the prototype and typing info going with it.
And that will just give you basic argument completion but not logical one like a lot of tools do.
So it is not at all "free", just it is used to do it with PowerShell so doesn't notice the cost anymore. Like people saying that they never encounter bugs and annoying issues with Windows when they have some every few hours but they are totally used to it anymore.
- account-5 1y agoI don't think it's fair to say Microsoft hijacked the curl command. It's just an alias for a powershell cmdlet. Powershell is definitely not perfect but theres less pitfalls than bash (string quoting, etc; there's loads: https://mywiki.wooledge.org/BashPitfalls https://mywiki.wooledge.org/BashPitfalls). I think powershell was/is a step in the right direction, but in that respective I also think Nushell is a massive improvement on top too. All of this is opinion though, I just prefer the stuff you get out the box you don't with bash.
- nunez 1y agoI create courses that are taken on Linux and Windows. On one hand, I love that curl is aliased to iwr, since I can tell learners to run a curl command without arguments and trust that it will work cross platform On the other hand, iwr is a cmdlet that shortcuts the System.Net.WebRequest .NET method, which is very, very different from libcurl. For example, the cmdlet uses one of its properties to obtain bytes downloaded so that it can display a progress bar. Unfortunately, doing this seems to be blocking, as downloads complete SIGNIFICANTLY more quickly if you add -NoProgress to the command. This break cross platform compatibility, however, which adds complexity during course development (more tests, more copy, etc)
- account-5 1y agoI've been using iwr for years and didn't know that the progress bar added latency! Much appreciated. My main point to the OP was more that it's just an alias, you can remove it and use real curl if you want.
- nunez 1y agoNo problem! I definitely recommend using the real thing where possible!