The Lounge is rated Safe For Work. If you're about to post something inappropriate for a shared office environment, then don't post it. No ads, no abuse, and no programming questions. Trolling, (political, climate, religious or whatever) will result in your account being removed.
50% *nix hackers (and that's why the legacy percentage is so high)
The higher education in software technology has been touting Windows as a toy OS for 30 years, and they still do. Real Developers Use Linux. And Linux tools.
The main reason why Linux hasn't taken over completely is that those amateurs using Windows are unwilling to learn anything new; they simply are not intellectuall capable to handle the list of gcc options, the regex syntax of find etc. They just won't learn anything new! Look at this primitive cmd.exe - bash was a thousand times more advanced than that the day Windows was born! (Are you really trying to argue that Windows was born before bash?? That's exactly the kind of false claims you can make the Windows congregation believe in!)
So there is a socalled "advanced" shell for Windows ... Blah! Can it run bash scipts? No! So how can it be "advanced", when it cannot run decent scripts? If you are asking me to spend resources to some silly Microsoft-thing that is nothing more than a simple patch-up of that DOS-toy-shell, then just forget it! I cannot spend time on learning anthing as useless as a non-Linux tool, when my Linux tools can do the job!
... Maybe I am exaggregating a little - but just a little. Our company policy is that desktop PCs run Windows; we have build and test machines running Linux, that you can remote in to, for the part of our work that is Linux based. We are establishing a Docker environment for Linux flavor containers nowadays; the Windows Docker engine may build and run Linux flavor docker images perfectly well. But that cannot be used by those Linux Real Programmers: It turns out that they have installed virtualization techniology on their desktops for the sole purpose of running Linux utilities in a Linux environment - utilities that have perfectly fine parallels in the Windows environment, with company support. Then they would have to learn a utility that they never saw in their studies, and learning something new that is outside Linux is a waste of resources.
They spent so much time to make this open-source virtualization run under that silly Windows, that they don't have time for more. And that open-source VM competes with the Microsoft Hyper-V for certain system resources, and Hyper-V is required for the desktop Docker installation. We are sorry about that. We simply cannot use Windows Docker on our desktops, without giving up our beloved Linux utilities.
But hey, we can run a Linux Docker engine on that VM we have installed to run those Linux utilities - then we can run Docker on the desktop!
... and so, rather than learning Windows utilities, including PowerShell, and updating the scripts to PS, they move the whole thing over to that VM so they can use Linux bash instead, during their daily work. For Python projects, that is more or less doable. The "official", company supported setup is still Windows, but since cmd.exe is so primitive, it is better to "secretly" use bash on VM under Windows than learning to use non-primitive MS tools. After all, Windows is just for kids, so why care?
You talk about Windows being a kiddie's operating system in one breath, then talk about using Python in the next.
As someone who has developed on both UNIX and Windows, I can assure you that it's hardly a case of one being trivial and the other non-trivial, or one being great and the other being crap - it's simply a case of them being different things.
Yes, when I first moved to Windows as a primary development platform, I certainly missed the Bourne and Korn shells and maybe they do offer some of the inspiration for Powershell but Powershell is not just some simple exercise in recreating the glories of 1970s UNIX shells, it very much moves it in to the OO world. It's a million miles away from the traditional Windows command shell and actually rather a wonderful thing.
Whenever you find yourself on the side of the majority, it is time to pause and reflect. - Mark Twain
I started using Visual Code for my Unity game development, and noticed that it also can be used as a terminal\editor for PowerShell scripts, etc. It appears that it has some nice features too, for this. Worth a look I think.
The one (huge) benefit of PowerShell over Bash (IMNSHO): You're working with actual objects, with properties and methods, rather than just parsing strings. Just about anything in .NET that's public can be invoked.
As for your longer rant (elsewhere in this thread): Are you aware of WSL? It's not merely a VM or a re-implementation of existing commands like Cygwin.
A few years ago I started poking around one of my DLLs with PowerShell, just for the fun of it, and started scripting some things using some of my classes that were never meant to be scripted / for scripting.
Some "feature" I wrote with PS became something a customer wanted us to implement, but management saw little very value in us implementing it right in the program - so the customer got it as a PS script.