Disk Encryption on a Linux Laptop, Done Properly
LUKS protects a laptop that is switched off and stolen — and nothing else. Setting it up, backing up the header that everything depends on, and the honest trade in…
Self-Hosting Your First Application, End to End
Taking one application from a compose file to a working service on your own server: bound to localhost, behind TLS, backed up, and alerting you when it stops. About two…
Putting a Database Somewhere Sensible
Installing PostgreSQL on your own server without leaving it open to the internet: scoped roles, socket versus TCP, dumps you have restored from, and the settings that actually matter.
Alpine Linux: Small, Fast, and Not Quite Like the Others
The distribution most of your containers are already built on. What musl and busybox change, the support window people misread, and the DNS behaviour that breaks things in Kubernetes.
Immutable and Atomic Distributions: What You Give Up, and Get Back
Read-only system files, updates that apply completely or not at all, and a previous version you can always boot back into. How Fedora Atomic, openSUSE Aeon and NixOS differ, and…
Pop!_OS and COSMIC: Ubuntu With a Desktop Written From Scratch
Ubuntu LTS underneath, an installer that puts the NVIDIA driver on for you, and COSMIC — a desktop built in Rust that finally shipped. What it does well, and why…
Kali, Parrot and BlackArch: The Security Distributions
What these distributions actually are, why Kali's own documentation tells you not to use it as a daily desktop, and how Parrot and BlackArch differ. Plus the legal line that…
sd vs sed: Find and Replace Without the Escaping
sd does one job — substitution — with modern regex syntax, no delimiter to choose and no BSD-vs-GNU differences. Where it helps, and the large part of sed it deliberately…
delta vs diff: Making Changes Readable
delta does not compute diffs — it renders them, with syntax highlighting, line numbers and a side-by-side view. What to put in your gitconfig, and why diff is still what…
zoxide vs cd: Jumping Instead of Navigating
zoxide remembers the directories you actually use, so one fragment gets you there from anywhere. What it changes, why cd is still what scripts must use, and the setting that…
