Ask HN: Turning Windows into a high-quality development environment

4 points by paulriddle 4 days ago

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?

rococode 4 days ago

Windows Subsystem for Linux (WSL) with Ubuntu covers most of my bases: 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 4 days ago

    I 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.

gtsteve 3 days ago

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.

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

[1] https://cmder.net/

Sangeppato 4 days ago

Instead of immediately jumping on WSL like some people suggest, I would install "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)

osullivj 2 days ago

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.

eb0la 4 days ago

Whatever 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.

bjourne 2 days ago

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.

random_upvoter 4 days ago

My main advice would be to take a few days to learn the ins and outs of Powershell, then never look back again.

pragmaticlurker 4 days ago

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.

shifto 4 days ago

I really like Visual Studio Code for Powershell and Python.

y42 4 days ago

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?

  • paulriddle 4 days ago

    C, Rust, systems level security work and development of various utilities.

    • y42 4 days ago

      I 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

    • jetti a day ago

      For Rust I like VS Code with Rust (RLS) extension

thepapanoob 4 days ago

i would argue that Windows is bad for anything but Windows development and gaming.

Annatar 4 days ago

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...

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 4 days ago

    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?

    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 4 days ago

    Hmmmm...

    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...

    • Annatar 4 days ago

      Because 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.

      • HelloNurse 4 days ago

        From the point of view of everyone else, "Don't trust anyone on the Internet" applies to you.

        If you doubt that Windows has serious users, it means that you live in a very low diversity bubble of non-Windows users, presumably a bubble of Mackintosh-only workplaces and generic Linux cloud servers.

        Then, why should anyone give any weight to your objectively uninformed opinions about Windows? You must admit that, compared to you, the crowd of Stack Overflow users is an "authority" because it includes actual Windows users.

        • Annatar 2 days ago

          "From the point of view of everyone else, "Don't trust anyone on the Internet" applies to you."

          That's what I wrote, but it seems you got into a tizzy over "is Windows still a thing?" and it was "good night" after that for you.

          The crowd, at "Stack overflow" or anywhere else will never and has in the history of human kind never been an authority on anything. If anything, the crowds have killed innocent people by burning them at the stake, stoning or lynching them. So crowds are about as dumb as one can find.

          "Hacker" "news" at its finest again.

      • orange8 3 days ago

        As much as you try to discredit that survey, I trust the stackoverflow survey much more than your anecdotal evidence of windows demise. That survey outlined the methodology used to arrive at their results. You, on the other hand, haven't even stated where you live, or how many companies you've visited, over what time period, to reach the honestly quite absurd conclusion that windows is dead.

        • Annatar 2 days ago

          Why the hell would I reveal my private details on some random website like this one? My faculties have not yet left me.

        • Annatar a day ago

          What's really absurd is that there are people still attaching any importance to Windows, which is the worst operating system in computing history. Even more absurd is that those people don't know any better. That's the sad, disgusting state of computing in the early 21st century... and then tell me computers or computing aren't shit!

          • orange8 a day ago

            Hey, life's too short for that kind of bitterness over a mundane thing like what OS others are using. You have lots of choice.

            If you don't like windows, don't use it. Simple! but don't lie to yourself about whats been the most dominant and used desktop operating system since the mid 90s.

            Preferences are ok but delusions, just sad.

  • dagw 4 days ago

    I personally haven't seen anyone in past ten years or perhaps more using Windows

    And I haven't worked anywhere in the past 10 years that wasn't 90+% Windows. Hell if I was just to go on what I see at work, Linux is more popular the macOS.

  • frooxie 2 days ago

    After 30 years in IT, I've never once seen anyone use a Mac for anything business-related, much less programming. That is not an exaggeration. (At my current company, we're using 75% Windows, 25% Linux.)