Java still doesn't work properly though =(. "mvn clean package" on one of corporate projects takes about 5 to 8 minutes in native java on Windows or Mac and it takes more than one hour in WSL. I had so much hope for WSL that I would finally have only ONE device (surface), but no, we're not there yet.
Five to eight minutes? That sounds horrible.
Have you tried concurrent compilation with "mvn -T 1C"? Gets our build time down from 3 minutes to 1 minute, but we have lots of smaller projects.
Well, that's a clean build of more 500 megs of source code and includes NPM building frontend and lots of other fancy plugins for generating docs and stuff.
We have a build system which is built around maven with *nix only in mind. It does a lot of handy stuff and 99.999% people in company are on macs, I just wanted to have one device instead of two so I was trying to use surface. I keep trying it like once or twice a year and then back to my Mac + iPad + Apple Pen mainly because of that. I also tried to run Linux in hyper-v and use shared directories but io perforce is quite poor in this case too.
I would love this because I still want a 'real' shell when dealing with Java - things like emacs, grep, find, etc.
Cygwin and using shared VM directories has too many glitches with things like npm, links, file system endings, etc. As Docker becomes more important, this gets even worse.
Really, developing on a Mac is just so much better than both Windows and Linux, even for Java.