I grew up on Windows. My very first computer ran MS-DOS. My schools all used Windows computers (except for a brief stint with the colourful iMac). I thought myself to be intimately familiar with how Windows works. Becoming a developer showed me just how wrong I was.
Why Change?
When I first became a developer, I was running Windows. And only Windows. And it worked well enough for what I needed. Sure, all of the documentation for things I was using or working on was written with a *nix environment in mind, but I fumbled my way through with some Google-fu and the power of Git Bash.
Then Hacktoberfest 2020 rolled around. I was just getting in to open source, and I was heavily involved (I mod their Discord now :3 ), so I wanted to try my hand at contributing to the website. But it was a Rails site, and support for Ruby on Windows was abysmal at best. Which meant it was time to explore other options.
Windows Subsystems for Linux
I'm a gamer girl. Hardcore. I knew I didn't want to give up the ease of gaming on Windows. So I explored Windows Subsystems for Linux (WSL). It worked surprisingly well. The biggest downside was that there was no GUI support at the time. Working at freeCodeCamp, that meant I couldn't run Cypress in "watch" mode. But I made it work.
Taking advantage of that time, I became familiar with bash and *nix commands, and came to love Ubuntu. When Windows 11 shipped with GUI support, all of my pain points were solved. I had Ubuntu for my development environment, and Windows for my gaming environment. And I didn't have to muck around with dual boot.
WSL had this magical feature where a web server running in Ubuntu was exposed to localhost
on Windows. Made my work as a web developer significantly easier. Until one day that mysteriously broke. I had no idea how it worked, so I had no idea how to fix it. Sure, I could load the webpage in the Linux browser instance, but I wasn't authenticated on any platform in that browser, didn't have my password manager... I spent a few days mucking around trying to figure that out, and then finally gave up. Wiped my hard drive and did a full fresh install of Ubuntu.
No More Windows
I've been on Ubuntu for a couple of months now (I think? Time is a concept.) and it's been great. My development work has been faster and more streamlined, and I have yet to run in to any issues with my workflows. Gnome provides an experience that's similar enough to Windows that it felt like home from day one. I even have an extra fancy retro terminal!
Thanks to the advent of the Steam Deck and Valve's work with Proton, transitioning to gaming on Linux has been pretty seamless too. I've run in to a couple of games that don't run, like Demonologist (which to be fair barely ran on Windows), and some that need tweaking (which I contribute as documentation to ProtonDB), but some older games run even better. I have noticed that "heavier" (re: more graphically intense) games tend to play worse, but it's a trade-off I'm willing to make.
There are a few things I definitely miss. I don't play games in full screen mode anymore - Gnome crashes if I alt-tab to Discord too often. And the lack of an emoji picker trips me up more often than I'd like to admit. But overall, it's been such a positive change that I haven't really looked back. And probably never will.