The day I realized I didn't actually know Linux

Published: (March 12, 2026 at 10:00 AM EDT)
3 min read
Source: Dev.to

Source: Dev.to

The Friday Afternoon

It was a Friday afternoon and my manager asked me to tail some logs on a production server to debug a weird issue we were seeing in staging.
I’d been using Linux casually for about two years, watched roughly 40 hours of tutorials, and read half of The Linux Command Line by William Shotts. I thought I knew my stuff.

I SSH’d in, navigated to the right directory, and then just… sat there. I knew the command involved tail -f, but my hands did nothing while I mentally Googled the syntax. My manager was watching. I typed tail -f and stared at the filename like it owed me money. That moment stuck with me for a long time.

Learning vs. Using Linux

The way I had learned Linux—through tutorials, documentation, and courses—taught me about Linux, but not how to use it. There’s a difference between absorbing information and building reflexes. With terminal work, if your fingers haven’t typed a command a hundred times under mild pressure, the knowledge stays vague.

I spent a long time in the first category, pretending I was in the second.

Hands‑On Experience with CTFs

A friend who does CTF (Capture The Flag) competitions mentioned that he learned more about Linux in three months of wargames than I had in two years of reading. I was skeptical—CTFs sounded like hacker competitions, not something relevant to a regular developer or sysadmin.

I tried it. The format is simple: you get a live terminal, a goal, and you figure it out. No one shows you how; you either get the flag or you don’t.

The first few challenges forced me to wrestle with things I thought I knew: find with the right flags, redirecting stderr, basic text parsing. It was humbling in a useful way. After maybe six weeks of doing a challenge here and there, I noticed I stopped hesitating. Not because I memorized more, but because my hands had actually done the work. The commands became habits rather than abstract ideas.

Practical Ways to Build Muscle Memory

If you want a place to start that doesn’t require setting up a VM or dealing with configuration, PracticeLinux is a good option. It runs right in the browser, with no account needed for the first challenge, making it easy to discover your actual gaps without setup friction.

I’m not saying tutorials are useless—I still read documentation. But many people, myself included, stay in the comfortable zone of passive learning longer than they should because it feels like progress.

Takeaway

The Friday‑afternoon log incident was embarrassing but probably necessary. Sometimes you need the gap to become visible before you can address it. If your Linux knowledge feels more theoretical than practical right now, it’s fixable; it just takes a different kind of practice than most people think.

0 views
Back to Blog

Related posts

Read more »

Tool Every Developer Should Know: Netcat

Introduction While exploring networking and security tools recently, I revisited Netcat nc, often called the Swiss Army knife of networking. Despite being a li...