Hacker News new | ask | show | jobs
by echelon 493 days ago
I'm predominantly a Ubuntu / Mac user (roughly 60/40).

My Windows machine has seen an uptick in use over the last months for development purposes, but it's still stuck on Windows 10. I don't think I need or want to upgrade it.

Two questions:

- Do I need to upgrade it?

- How do I get comfortable with Windows shell? PowerShell doesn't do Unixisms. There are too many shells. Command Prompt / CMD, PowerShell, there's some utility that installed mingw64 terminal, and WSL is also a thing. Which one(s) should I use?

I'll expand on my shell question: The thing I'm struggling with now is that when I install utilities like git, cargo, etc., they seem to work for some shells but not others. They seem disconnected and not have the same access, visibility, and privileges. What can I read or do to get me over this hill? Which one(s) should I use? (I assume "CMD" is dead?)

I'm doing mostly Rust / TypeScript development on Windows, FWIW.

2 comments

Windows 10 will go EOL in October, so you should probably try to upgrade sometime before next year.

The first rule of PowerShell is to install the "real" PowerShell [1] instead of using the one bundled with Windows (which is out of date and importantly doesn't interoperate as well with non-PowerShell commands). I still don't like it, it's way too different from UNIX shells, but at least it's usable.

CMD hasn't gotten any improvements since like 1995 but it isn't going anywhere either. If you need something vaguely like a UNIX shell and that's always available, it's not a bad choice.

WSL2 is fine if you work mostly within its environment, which is made easier by things like VSCode's Remote extension. However, accessing Windows files from within WSL2 is surprisingly slow, so you really want to commit to it if you start using it.

I'm doing Rust on Windows too and apart from installing the MSVC tools and a compatible version of libclang, and occasionally figuring out how to write PowerShell, it's not been too much trouble. WinGet is pretty good and the library has quite a large selection of development tools.

[1]: https://learn.microsoft.com/en-us/powershell/scripting/insta...

> Windows 10 will go EOL in October, so you should probably try to upgrade sometime before next year.

That's the current plan but it wouldn't surprise me if they change their mind given the large Windows 10 install base still out there. They've done that before with Windows XP and 7.

I personally will never migrate to Windows 11, EOL or not. I'll keep using it for games that I can't get to work under Linux even after it is EOL, until Valve stops supporting it for Steam. At that point I'll delete the partition and never look back.