What I have now is stock Windows installation. I would like to turn it into something that feels comfortable for development. Obviously a lot depends on what exactly I want to do with it, but for this thread I want to keep things wide in scope. Basically I want to get some software and configuration recommenations like people give each other in r/unixporn. For example on Linux, some people can't live without tmux, or tiling wm, or fish shell, so I want to hear similar recommentations for Windows.<p>What do you use?
Windows Subsystem for Linux (WSL) with Ubuntu covers most of my bases: <a href="https://docs.microsoft.com/en-us/windows/wsl/install-win10" rel="nofollow">https://docs.microsoft.com/en-us/windows/wsl/install-win10</a><p>I like to use ConEmu as my console for WSL. You can also check out Cmder.<p>It's very rare that I need to do something that WSL can't handle well (any challenges are typically related to I/O, networking, or GPU).<p>IntelliJ as my main IDE (my primary languages being Java, Typescript/web stuff, and Python).<p>Sublime Text for quick text editing. Vim in WSL for quick code editing or some other languages (mostly C).
You can have a look at chocolatey (<a href="https://chocolatey.org" rel="nofollow">https://chocolatey.org</a>) in addition to ninite for installing programs.<p>Also though not directly related to your question but in case you're running Windows 10, then do take a look at this little gem: Windows 10 uninstaller (<a href="https://www.thewindowsclub.com/10appsmanager-windows-10" rel="nofollow">https://www.thewindowsclub.com/10appsmanager-windows-10</a>). The amount of crap win 10 bundles is just amazing and this gets rid of most of it.
Instead of immediately jumping on WSL like some people suggest, I would install "scoop" (<a href="https://github.com/lukesampson/scoop" rel="nofollow">https://github.com/lukesampson/scoop</a>) and spend some time learning Powershell, since it's the main shell of your OS.
If you need unix-only tools, make sure to check out the WSL as well, it's pretty great these days, but If I wanted to mainly live in a unix environment I wouldn't use Windows (that's just me though)
A lot of the things I use for development are already mentioned so far so I'll mention something specific to Windows 10. While I wish I could use Linux for work I do quite like it as an OS, but it does have a lot of trackers and this thing called Cortana that tries to be a voice assistant like Apple's Siri. If you're not paying attention you'll click OK on the thing that allows it to record you while you're working (really) and it's very hard to figure out what to do to stop it from doing that.<p>There is a tool called ShutUp10 [0] which disables this crapware with some helpful registry tweaks. It's not OSS though so do use caution and be sure you're getting it from a reputable source.<p>You might also be happy to know that you can right-click and remove all the rubbish from the start menu and just have something that resembles older Windows start menus.<p>Finally, my favourite console is cmder [1] which is a tabbed console with hot keys and integrates with PuTTY if you need to connect to Linux boxes.<p>[0] <a href="https://www.oo-software.com/en/shutup10" rel="nofollow">https://www.oo-software.com/en/shutup10</a><p>[1] <a href="https://cmder.net/" rel="nofollow">https://cmder.net/</a>
Whatever do you use, <i>NEVER</i>, repeat <i>NEVER</i> use windows for developing if your account name and home directory has non-ascii-7 characters on it.<p>Just setup a user called "Jalapeño" and see how many tools break.<p>If your username is ascii-7 friendly, it's a good platform to code.
Emacs, Firefox, Python and cmd.exe. These tools work the same on Linux (except for cmd.exe which doesn't work like zsh) so my workflow on both platforms stays mostly the same. I automate all build-like tasks with Waf which is cross-platform.
Visual Studio Community Edition 2019 for C# & C++ dev. PyCharm for Python. Mark Russinovich's SysInternals tool for troubleshooting. ProcessExplorer and ProcMon are essential for cracking DLL load and threading issues.
Don't pollute your Windows Machine with tools.
Spin up a VirtualBox instance or delegate a Docker Image to be your dev environment and every X months update it with newer updated tools.
IMHO you can't answer this question without knowing what are you developing, like what language, what's the purpose, what's your skill level?
Solaris 10 with the SUNWCxall metacluster plus tons of self-compiled, linked and packaged software. If you want to do programming, Windows is totally the wrong operating system for that: it's slow, bloated, vulnerable to viruses and the tools like Visual Studio are designed to dumb you down as programmer as much as possible under the pretense of productivity. You can probably get some use out of running the Linux subsystem for Windows, it will have lots of programming tools like AWK, ksh, flex, bison, make, m4, php, maybe even Steel Bank Common Lisp...<p>My second choice would be a Mac with macOS. I personally haven't seen anyone in past ten years or perhaps more using Windows, let alone for programming at any businesses I worked at. Whereever I went, everybody's using Macs with macOS to do development. Is Windows even still a thing, or are you looking to explore Windows programming as a curious hobby past-time?