After 18 years on Linux, from Ubuntu Feisty Fawn to Fedora and Pop!_OS, here's why it remains the best development environment, and how to set it up for maximum productivity.
Why Linux
The terminal is first-class. Package managers install development tools in one command. Docker runs natively. File systems don't fight you. SSH, Git, Node.js, Python, everything just works. On Windows, you need WSL to approximate the experience. On macOS, Homebrew helps but it's still a layer on top of a locked-down OS.
My Setup
I run Fedora on my laptop (ThinkPad) and Pop!_OS on my desktop. Fedora for bleeding-edge packages and excellent Wayland support. Pop!_OS for its tiling window manager and out-of-the-box NVIDIA support. Both use GNOME, both are rock solid, both let me focus on work instead of troubleshooting.
The Tools
Alacritty for terminal, VS Code (or Neovim when I want to feel alive), Firefox for testing, Docker for local environments, and a handful of CLI tools that make everything faster: fzf, ripgrep, fd, bat, zoxide. The entire setup is reproducible with a single Ansible playbook.