Unless you need it for the type of work you do, you could disable swap, or reduce it to a small amount.
(I don't have a laptop, so I can't comment on suspend.)
Never even considered MacOS as an option. Not as good for tinkering as Linux, and with 17% market share (both in my country and global average) it can't deliver the "everyone supports this, everything just works" that I got with Windows (it also doesn't help that Apple lately seems to happily break anything not sold by them)
1: https://gs.statcounter.com/os-market-share/desktop/worldwide
2: https://www.statista.com/statistics/218089/global-market-sha...
3: https://netmarketshare.com/operating-system-market-share.asp...
I must be the strange one here since WSL is a hardcore nope from me. Mainly because I've gave that setup a chance last year and then after two hours of work I've noticed Windows git or WSL changed all my carriage returns to CLRF and basically broke all scripts and pipelines.
https://github.com/jftuga/chars
You can use the -f switch to help with pipelines and -j for JSON output.
I started recommending WSL on Windows to a few friends who wanted to get a taste of how Linux works after hearing praises about it although I've never actually used it myself. I recently realized that systemd doesn't work on WSL (without ugly hacks) and /mnt also mounts Windows disks.
I have stopped recommending WSL since then. Although I don't recommend anyone to use Linux either.
1: https://gist.github.com/djfdyuruiry/6720faa3f9fc59bfdf6284ee...
Things may have changed since then (8+ years ago)?
What are the main disadvantages to develop on Windows?
I would say it's great at a user level, but under the covers you have to be a true windows grognard to know what is going on.