6 ms·
Ask HN: Turning Windows into a high-quality development environment
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.
What do you use?
- shifto 7y agoI really like Visual Studio Code for Powershell and Python.
- Sangeppato 7y agoInstead of immediately jumping on WSL like some people suggest, I would install "scoop" (https://github.com/lukesampson/scoop https://github.com/lukesampson/scoop) 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)
- Annatar 7y agoSolaris 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... 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?
- lvoudour 7y agoI 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? I'm sorry, but this is the archetypal "living in a bubble" comment (that is becoming very common on HN lately). First of all the OP didn't ask "which is the best OS for development", there's probably a good reason he/she needs to work on windows. And second, wondering if windows is still a thing for development and assuming macs are the standard, is absurd and detached from reality. I'll refrain from guessing your line of work (although I have my suspicion) but I'm pretty sure you never worked e.g. in electronics, sensing, finance, etc.
- orange8 7y agoHmmmm... The latest stack-overflow developers survey doesn't seem to agree with you. Maybe its just in your locality that windows doesnt exist? https://insights.stackoverflow.com/survey/2019?utm_source=so-owned&utm_medium=blog&utm_campaign=dev-survey-2019&utm_content=launch-blog#technology-_-developers-primary-operating-systems https://insights.stackoverflow.com/survey/2019?utm_source=so...
- Annatar 7y agoBecause we know that "Stackoverflow" is some sort of an authority, right? Come on... don't trust anyone on the Internet (not even me). The only experience you can trust is the one you experience yourself. There is no authority to defer to, the computer industry is notoriously full of examples where superior technology failed because most people working on and with computers are pathologically ignorant, exactly the people who should be knowledgeable. Or perhaps better: "trust, but verify". For example, 51%-something self-identified as "full stack" developers, yet most people fall into three to five years of experience. If I tell you that "full stack" means one is capable of designing one's own server hardware, network and infrastructure all the way up to writing application software, it becomes apparent that people who identified as "full stack developers" don't even rightly know what that means yet they obviously at three to five years of experience think that they do. And now we're right back to pathological ignorance specific to computer industry. Or are all those people geniuses who learned hardware engineering, application programming, network, system and database administration in three to five years, something which normally takes decades of apprenticeship under dedicated mentors to master? These surveys are nonsense, waste of disk space and electricity. Trust, but verify, that's the lesson here. And think critically for yourself.
- y42 7y agoIMHO you can't answer this question without knowing what are you developing, like what language, what's the purpose, what's your skill level?
- paulriddle 7y agoC, Rust, systems level security work and development of various utilities.
- jetti 7y agoFor Rust I like VS Code with Rust (RLS) extension
- y42 7y agoI can't give you particular hints regarding C or Rust, but let me tell you what I can't live without: * Total Commander - good for handling files / folders, working on remote locations (SFTP, FTP, ...), perfect all-round-tool * Notepad++ - perfect for text editing, also on remote locations, lot of plugins available to cover different needs * Docker - of course, but mainly for developing web apps * iTerm2 - on my Mac I am using this as an SSH-client, this rules out every other SSH client I know and it's free, on Windows I am using MobaXTerm, paid version
- rococode 7y agoWindows Subsystem for Linux (WSL) with Ubuntu covers most of my bases: https://docs.microsoft.com/en-us/windows/wsl/install-win10 https://docs.microsoft.com/en-us/windows/wsl/install-win10 I like to use ConEmu as my console for WSL. You can also check out Cmder. 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). IntelliJ as my main IDE (my primary languages being Java, Typescript/web stuff, and Python). Sublime Text for quick text editing. Vim in WSL for quick code editing or some other languages (mostly C).
- ThePhysicist 7y agoI second this. You can also install an X server for Windows and run graphical tools like the gnome terminal, which I find superior to the native WSL shell. Be aware that performance of most file operations is much worse than on a native Linux system, which is mostly (in my understanding) due to the differences between NFS and Ext4.
- random_upvoter 7y agoMy main advice would be to take a few days to learn the ins and outs of Powershell, then never look back again.
- thepapanoob 7y agoi would argue that Windows is bad for anything but Windows development and gaming.
- pragmaticlurker 7y agoDon'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.
- eb0la 7y agoWhatever do you use, NEVER, repeat NEVER use windows for developing if your account name and home directory has non-ascii-7 characters on it. Just setup a user called "Jalapeño" and see how many tools break. If your username is ascii-7 friendly, it's a good platform to code.
- superasn 7y agoYou can have a look at chocolatey (https://chocolatey.org https://chocolatey.org) in addition to ninite for installing programs. 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 (https://www.thewindowsclub.com/10appsmanager-windows-10 https://www.thewindowsclub.com/10appsmanager-windows-10). The amount of crap win 10 bundles is just amazing and this gets rid of most of it.
- gtsteve 7y agoA 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. 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. 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. 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. [0] https://www.oo-software.com/en/shutup10 https://www.oo-software.com/en/shutup10 [1] https://cmder.net/ https://cmder.net/
- bjourne 7y agoEmacs, 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.
- osullivj 7y agoVisual 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.