Live data from Hacker News

Ask HN: Windows Dev Setup?

news.ycombinator.com

1–10 of 34 posts

Ask HN: Windows Dev Setup?

#1
I just landed a job where the only OS to choose from is Windows. As an experienced Linux and macOS user, it sounds challenging, but I see it as an opportunity. Is there anybody with similar experience (web apps development on Windows)? Can you share some bits of advice, tools, and setup?

Re: Ask HN: Windows Dev Setup?

#3
Its better then ever.

1. Use Chocolatey (winget is still new). You can setup everything via it, and I mean everything - node, postgre, docker, vscode, all browsers, selenium and drivers etc.

2. Learn Powershell, but learn it really good. Adopt PowerShell build system Invoke-Build

3. Install better terminal - ConEmu or Windows terminal

4. Enrich Windows using FOSS and cross platform tools: choco install copyq, flameshot, less, fzf, paint.net, git, tortoisegit, winscp, kitty, screentogif, sysinternals, wiztree, gsudo, lockhunter, signal, viber, slack

5. Disable Windows Defender and use some debloater (controversial, but I do it, and system is at least x2-x5 faster). I use https://github.com/W4RH4WK/Debloat-Windows-10 along with ShutUp10 tool.

6. Install the best search engine in the world: cinst everything

Enjoy, its awesome.

Re: Ask HN: Windows Dev Setup?

#5
After years of Fedora I now primarily run Windows because WSL just does everything I need. I prefer to still work in WSL Linux env and have my IDEs running through Windows (mostly Visual Studio Code and Goland). It's a nice setup for me because both OSes are just seamlessly available.

Having said that I've had so many sleep/power management problems with Windows with my new ThinkPad that I nearly just switched back to Fedora before finding a configuration that more or less seems to work.

Re: Ask HN: Windows Dev Setup?

#6
Powershell, Windows Terminal and oh-my-posh get you pretty close to zsh on Linux. I'll comment back with a few more tweaks I had to make to powershell to get closest to the Linux experience.

But my biggest gripe is not having tmux. There are some window/tab/pane management shortcuts in Windows Terminal but they're not as good as tmux (yet).

Re: Ask HN: Windows Dev Setup?

#7

Its better then ever. 1. Use Chocolatey (winget is still new). You can setup everything via it, and I mean everything - node, postgre, docker, vscode, all browsers, selenium and drivers etc. 2. Learn Powershell, but learn it really good. Adopt PowerShell build system Invoke-Build 3. Install better terminal - ConEmu or Windows terminal 4. Enrich Windows using FOSS and cross platform tools: choco install copyq, flamesh…

Addendum to 2: use PowerShell 7, a newer major version than the one probably coming as default, and based on the modern Core lineage. You get niceties and the sanity you'd expect such as UTF-8 when writing to files with the > operator.

Re: Ask HN: Windows Dev Setup?

#8
Visual Studio Professional, Eclipse/Netbeans, VS Code.

latest PowerShell, Windows Terminal, WinMerge, Notepad++, ToirtoiseGit/SVN, Paint.NET.

Office, FF, Chrome, EdgeChrome.

Everything else is project specific.

Re: Ask HN: Windows Dev Setup?

#9

Powershell, Windows Terminal and oh-my-posh get you pretty close to zsh on Linux. I'll comment back with a few more tweaks I had to make to powershell to get closest to the Linux experience. But my biggest gripe is not having tmux. There are some window/tab/pane management shortcuts in Windows Terminal but they're not as good as tmux (yet).

Here's my $PROFILE:

    Import-Module PSReadLine
    Set-PSReadLineOption -EditMode Emacs
    Set-PSReadLineOption -HistorySearchCursorMovesToEnd
    Set-PSReadLineKeyHandler -Key UpArrow -Function HistorySearchBackward
    Set-PSReadLineKeyHandler -Key DownArrow -Function HistorySearchForward
    Set-PSReadLineKeyHandler -Key Tab -Function Complete

    Import-Module posh-git
    Import-Module oh-my-posh
    Set-PoshPrompt -Theme material

    function e { emacs -nw $args }
    function gs { git status $args }
    del alias:gc -Force
    function gc { git commit $args }
    del alias:gp -Force
    function gp { git push -u origin $(git branch --show-current) }
    function python { python3 $args }

Re: Ask HN: Windows Dev Setup?

#10
post #8

Visual Studio Professional, Eclipse/Netbeans, VS Code. latest PowerShell, Windows Terminal, WinMerge, Notepad++, ToirtoiseGit/SVN, Paint.NET. Office, FF, Chrome, EdgeChrome. Everything else is project specific.

I'd say much of that is likewise project specific. .NET teams do tend to solidify on a set of tools like you listed, but such lists are shared tooling agreed upon by the team, not a requirements list for everyone who will work on a Windows box.
Post reply on HN