A systems developer's confession
Hey there. I've been doing this programming thing for way too long. My journey, like everyone else's, started on Windows—you know, sitting in my cramped room, writing code, thinking everything was fine.
Then I hit the commercial development world and got the mandate: switch to Linux. Company policy, no exceptions. I was slinging PHP and JavaScript back then, doing full-stack stuff. Setting up Apache and servers on Windows? Let's just say that's not the kind of motivation that makes you jump out of bed in the morning. Life's too short for that level of pain.
The First Attempt: Manjaro
So I installed Manjaro Linux. Yeah, that Manjaro—the one the community lovingly calls "the Arch distro with training wheels" (translation for Windows refugees: it just works™ out of the box, unlike its temperamental parent).
What hooked me? I didn't have to replace my entire OS twice a week because of driver patches and kernel drama. Everything. Just. Worked. That was enough.
Fast forward to today: my work laptop runs Arch, my home server runs Arch, and my second work machine runs Pop!_OS (I know, I know—I chickened out on the driver setup because I had a deadline—but Arch and I have unfinished business, I swear).
The Distro Graveyard: A Retrospective
Over the years, I've gone through quite the lineup:
- Ubuntu — the gateway drug
- Debian — the steady handed one
- Mint — Ubuntu's chill cousin
- LMDE (Linux Mint Debian Edition) — Mint's rebellious sibling
- Arch — the one I married
- EndeavourOS — Arch with a friendlier installer (also wife material)
- CachyOS — where my GPU drivers went to die. I was running a GTX 1060 (Pascal architecture), and CachyOS decided open-source drivers were superior to NVIDIA's proprietary ones. Spoiler: they weren't. Not for me, anyway.
- FreeBSD and OpenBSD — I even went full BSD when I was crazy enough to write my own distro based on it. Turns out you need to install their entire system just to compile your own software. That's commitment.
Yes, I have a problem. Yes, I'm aware. No, I'm not getting help.
What Actually Didn't Suck: The Solid Ones
Among the "normal" distributions that didn't give me chronic headaches, LMDE7 (Linux Mint Debian Edition) was a revelation. I eventually abandoned it—something broke, as these things do—but while it worked? Chef's kiss comfort.
I dropped it on my work laptop, and suddenly I didn't need the bleeding-edge packages anymore. Why? Because I believe every developer should be able to compile their own tools from source. Problem solved. No more "package too old" drama.
Honest take: If you just want to work without your OS turning into a game of whack-a-mole, check out LMDE. It's genuinely great for web development too. nvm install one time, and you're golden. The internet's full of setup guides if you need hand-holding, so I won't bore you with that part.
The Uncomfortable Truth: Linux is Held Together with Duct Tape
Let's be real here. Linux isn't perfect. Every distro has its demons. And yeah, there are way more problems than perks if you're counting features like "doesn't crash when you look at it wrong."
But here's the thing: I will never, ever recommend Windows for development over Linux. Not once. Because Linux gives you freedom—actual, genuine freedom. You pay for it in setup time, driver troubleshooting, kernel panic debugging, and dependency hell. It's a trade-off. But it's a good trade-off.
Plus, once you get it working, it stays working. Windows just laughs at you and installs an update that breaks your entire dev environment.
The Verdict: There Is No "Best"
Real talk: there is no best distro. There's only the one that fits your hardware and your workflow.
My philosophy: your OS should bring you joy, not dread. Or at minimum, not make you want to flip your desk. When you're not distro-hopping every other Tuesday and arguing with your kernel version, development actually moves fast.
It's like programming languages—each one has its place:
Arch Linux
Minimalist. Fast. Unforgiving. You spend a couple of evenings (and maybe some beer) configuring it exactly how you want it. Want i3? dwm? KDE? You got it. AUR + paru? That's your candy store. By the way: yes, I use Arch. [ba dum tss]
Debian / LMDE
The boring, reliable friend who shows up on time every day and never disappoints. You set it and forget it. Perfect if you just want to code without becoming a kernel archaeologist.
Ubuntu
Look, Canonical's doing the Snap thing, and... gestures vaguely at the wreckage. Snap keeps sneaking into places it wasn't invited, and it's painful in ways I don't have time to explain. Hard pass. Would not recommend.
Red Hat / CentOS / Fedora
The enterprise crowd. Solid. Professional. If your company has opinions about security updates, this is probably what you're running.
Gentoo
For people who think "let me compile everything" is a personality trait. Also valid. Respect the grind.
So, What Do I Recommend?
Need stability without the migraine?
→ Debian, LMDE, or RHEL. Download. Install. Forget about it for three years.
Want full control and you've got an evening to burn?
→ Arch or Gentoo. This is where the fun happens.
You're a web dev and just need a working environment?
→ Literally any distro + nvm. You're golden. Stop overthinking it.
The Real Talk
Linux is held together with duct tape and the prayers of developers we've never met. But it's our duct tape. And when you find the right distro—the one that doesn't fight you, the one that sings when you hit the keys—everything changes.
Work stops being a battle against your OS and becomes... well, just work. Good work.
So here's my challenge to you: don't be afraid to experiment. Install something weird. Break it. Fix it. Compile something from source at 3 AM just to see if you can. Mess around. Ask questions.
Because somewhere in that distro chaos, you'll find the one that's yours.
And yeah—it'll probably be Arch.
Btw. Stop distro-hopping. Start shipping. ForgeZero needs you. Let's go.
Written by someone who ironically still has a Pop!_OS machine gathering dust in the corner. Some habits die hard.