It's not that I prefer it per se, rather I have better things to do then e.g. spend 2 hours messing with my font rendering to end up with a result half as good as Windows is out of the box.
Funny. That is why I do not use Windows. It takes so long to set up. First, so many of the drivers are not built in. Then, hardly any of the apps I need are built in. Then, none of the programs stay current without constant admin.
Literally this. Even though I never faced any of the issues both of you had, but I don't get why it's hard to use Windows.
Linux is meant to be difficult to setup for new users.
Windows is meant to be an asshole to setup for enthusiasts.
Want to use Windows? You need: WSL2, Powertoys, AltDrag, Scoop, and so on.
You want to install thousands of fonts inside hundreds of folders? You have to learn some obscure undocumented Powershell class to make a script that installs all those fonts for you system-wide (or even user scope for that matter).
You also need MSYS2 for stuff like GNU Make, GDB, etc. You can use Visual Studio, but have fun with that because you'll be pulling out hairs every once in a while.
Oh you want to process multiple files with regex? Definitely good luck with that.
It's funny that I find it easier to use Linux, and do everything that I used to do on Windows the same on Linux just as easily.
You should be using the best tool for the job, even when it comes to operating systems and software. If your development workflow is this heavily dependent on Linux then I'm not surprised you find it Windows more painful compared to just running Linux itself.
For myself, mostly doing enterprise and backend development in C#, Python and a bit of Go, Windows gets out of my way and let's me get to work far more efficiently than Linux ever does for this work.
I believe my workflow is more efficient because it's just frictionless to me. Everything makes sense and is intuitive without the need of a guide (like the GUI), if it isn't then you can change it or work around it much easier, if it doesn't exist then you can DIY. Sure it's more advanced this way, but not time-consuming when you have the knowhow.
That's why Windows isn't particularly suited for me. The same concept doesn't exist in Windows, you're fundamentally stuck with whatever Microsoft decides to be part of Windows, their proprietary software and their support for plugins or lack thereof (Vim doesn't even work well on Visual Studio), or even their open-source projects like Powertoys. Functionality used for a more efficient workflow sometimes has a proprietary solution, often paid, often enough making it yourself isn't feasible because Microsoft locked it down.
Postscript:
As a result, I ended up with a setup that's more complicated for regular Windows users vs. regular Linux users where everything seems intuitive, sometimes because the OS was designed to force you to learn using the tools it gave you at the surface level.
My colleagues that use Windows are even surprised that I'm more used to navigating and multitasking at it than they do, where I usually know some little trick or shortcut that they don't use (which is pretty confusing for me when they're not even aware that something like it exists). Not necessarily saying I know more than an average enthusiast, nor I know more than the people mentioned above when it comes to their particular field of study or job. But whenever I pull off something, they always see it as magic and start integrating that to their workflow.
The best tool for the job, for someone who treats the OS like a full-stack devbox, has always been Linux. You don't need a mouse or navigation keys, but of course there's a learning curve. You don't need external applications, you can go as bare as a simple Neovim+LSP setup, ZSH with Vi keys. The operating system is your IDE. And you can always bring it with you.
I always bring my laptop on the go, usually you can't even fit a mouse in that bag. Why not use what the laptop already comes with? The laptop has very small buttons when it comes to navigational keys. Vim works best for this keyboard layout in this case.
Linux isn't necessarily the best of everything, and it never was supposed to be in the first place. I iterate that I often find everything in Linux to be less tedious. In fact, deploying with Windows Server containers are pretty annoying, though with the added benefit that it's a simple tickbox in the Server Manager to install the feature, but actually using them compared to say Docker...you get my point.
What you don't know doesn't hurt you, nor it should. Likely to apply to me as well with things that I'm not aware yet of. Never stopped anyone as you're free to use whatever you wish, what you feel is the most efficient for you.
When I was working at the Unix shop - we worked making Unix - we all were on windows, securecrt, Mozilla and winamp as coding rigs.
We were 100% using Windows desktops to code a different operating system. I mean, it actually built on Unix and only Unix, because of course, but we were all using vandyke on windows for the ssh client.
Why? Same as you: we could have run Unix or windows on our desks, but windows did winamp and vandyke and Mozilla better and we didn't wanna grab a nightly build and discover it was fucked. And Linux modelines, oh-my-god. So it was windows, because it was kinda their sweet spot: music, ssh, Mozilla.