For work I run Pop!_OS without too much customization and use nix home-manager to manage packages. For my terminal wezterm/tmux/zsh/neovim and for pretty much all development I use VSCode.
I don't have too many issues running linux for work besides the occasional desktop hang when trying to share my screen with Firefox. The entire team is a linux shop and all in all I do think it's a compelling alternative to mac in today's day and age. Users maintain a lot of flexibility and vitualizing anything is a lot easier. That flexibility does come at a cost, whoever, as folks are on their own to troubleshoot distro-specific issues. A slim majority run Ubuntu or Ubuntu derivative distros, but there are a decent faction of Arch users and a few Fedora as well.
Anyway, outside of work my daily driver is an m1 macbook air. I love the battery life and it does what I need it to do. I don't have many personal projects at the moment, but when I do need to access to a development environment I use a VM that I have running on my Desktop PC/server running Proxmox.
Using home-manager is nice because I can quickly provision a VM (local or remote) for dev if need be. So I just ssh or VSCode remote into my local VM and the experience is very similar to may day to day work workflow.
A few odds and ends- I use tailscale to access my home network while away, so as long as latency isn't bad I can really code from any machine. I also rely on 1password and github to bootstrap my dev environment.