Naturally, Microsoft just had to create its own language, rather than working with any of the existing scripting languages.
We;;, in their defense, they desperately needed something better than the ancient CMD.EXE, but that would address all their Windows-centric proprietary usage and constructs. Bash is never going to do that for them.
Of course they did. Rather than use robust, Open Sourced, and time-tested languages, why not make your own garbage? For Microsoft, it’s traditional.
I updated 2 laptops of mine yesterday and it took about 4 hours and other maybe 3 hours to download the updates, install, download some more and install. It was slow....
I now have version 1809 of Windows 10 from last October.
Another update showed up this May but my pc says I have the latest. When I can get that I do not know. The other 2 were updated last earlier in the year. I just did not not get the latest. How microsoft determines what I get is unknown.
In windows 10 right click on the Start button> Run then type winver to see what version of Windows you have.
Versions
https://docs.microsoft.com/en-us/windows/release-information/
Latest version 1903 - it says just select Check for updates but all I get is I have latest.
https://docs.microsoft.com/en-us/windows/release-information/status-windows-10-1903
PowerShell is .NET. .NET has been around for almost 20 years.