What a Shell Actually Is, and Which One to Use
The shell is a program, not the terminal it runs in. Which startup file runs when, why your alias vanishes over SSH, and an honest comparison of bash, zsh and…
SSH Keys: What Is Actually Happening
Key pairs, host keys, the agent and forwarding — what each part does, why the warning about a changed host key matters, and how to hold keys safely.
Filesystems: Inodes, Journalling and Which One to Choose
What an inode is and why you can run out of them, what journalling protects you from, and an honest comparison of ext4, XFS, Btrfs and ZFS.
Linux Networking from First Principles
Addresses, subnets, gateways, ports, DNS and NAT — what each one is for, and a diagnostic order that finds the broken layer in about a minute.
Ansible: When to Stop Writing Setup Scripts
Ansible describes what a server should look like instead of the steps to get there. What idempotence buys you, a first playbook that works, and when it is overkill.
fzf: Fuzzy Finding, and What It Does to Your Shell
fzf turns any list into something you pick from interactively — command history, files, git branches, running processes. The setup that matters and how to build your own pickers.
jq: Working with JSON on the Command Line
Every API returns JSON and none of the classic Unix tools can read it. jq is the missing piece — the handful of filters worth learning, and where it stops…
eza vs ls: A Better Listing (and Why Not exa)
eza gives you colour, a tree view and git status in your file listings. Why exa is no longer the one to install, and why ls -l should stay in…
tldr vs man: Examples When You Just Need the Command
man pages are complete and unreadable in a hurry. tldr gives you the five commands people actually use. Why you need both, and the man features nobody knows about.
bat vs cat and less: Reading Files Without Squinting
bat adds syntax highlighting, line numbers and paging to cat. The batcat naming trap, using it as a man pager, and why plain cat still belongs in your pipes.




