I've recently (~1y) moved back to Windows as a primary 'desktop' OS for development. By day I'm a rails developer.
I've worked extensively on windows (back in PHP days), Linux (when I was doing HPC software) and Mac (most of my rails career...).
Generally the code always runs on Linux -- and WSL isnt' there yet for background processes and the "platform" your code needs to run on; most of the stuff I need needs worker processes, elasticsearch, mysql, et al, all of which need to be running long-lived in the background which WSL isn't great at supporting -- it's "user mode" after all.
It's also closer to prod environments, which is a theoretical argument against OSX.
I clone and do terminal operations on either a VM or a physical ubuntu server in my house, and edit locally using gvim or visual studio code using an NFS or Samba mount. Nginx proxying using port forwarding over ssh. Long story short; it works for me, but this is a frankenstein-ish setup made familiar solely because I've used all 3 OS's day in, day out for ~20 years. When I explain it to Junior devs they look at me funny.
WSL with ConEmu and openssh is close to replacing PuTTy for me, but that's it. You still can't use it to have a painless node, ruby, etc development experience on windows.
Microsoft should be focusing on optimising for someone who's in a coding bootcamp, not people who've been in tech for decades already and already have the solid technology base.
Right now, people grow up using windows for day to day office work in other careers and at school, and for PC gaming and browsing at home, but have to switch off it when they enter a development career because the native tooling isn't there. If Microsoft can address that shortcoming, probably through further development of WSL and (hopefully) implementing Bash as a "first order citizen" in Windows, then they're home.
I've worked extensively on windows (back in PHP days), Linux (when I was doing HPC software) and Mac (most of my rails career...).
Generally the code always runs on Linux -- and WSL isnt' there yet for background processes and the "platform" your code needs to run on; most of the stuff I need needs worker processes, elasticsearch, mysql, et al, all of which need to be running long-lived in the background which WSL isn't great at supporting -- it's "user mode" after all.
It's also closer to prod environments, which is a theoretical argument against OSX.
I clone and do terminal operations on either a VM or a physical ubuntu server in my house, and edit locally using gvim or visual studio code using an NFS or Samba mount. Nginx proxying using port forwarding over ssh. Long story short; it works for me, but this is a frankenstein-ish setup made familiar solely because I've used all 3 OS's day in, day out for ~20 years. When I explain it to Junior devs they look at me funny.
WSL with ConEmu and openssh is close to replacing PuTTy for me, but that's it. You still can't use it to have a painless node, ruby, etc development experience on windows.
Microsoft should be focusing on optimising for someone who's in a coding bootcamp, not people who've been in tech for decades already and already have the solid technology base.
Right now, people grow up using windows for day to day office work in other careers and at school, and for PC gaming and browsing at home, but have to switch off it when they enter a development career because the native tooling isn't there. If Microsoft can address that shortcoming, probably through further development of WSL and (hopefully) implementing Bash as a "first order citizen" in Windows, then they're home.