• How to Self-Host Pi-hole with Docker Compose: Network-Wide Ad Blocking for Your Entire Home

    Why Your Router’s Ads Are Winning (And How to Fight Back) Here’s something nobody tells you when you move into a new apartment or set up your home network: your ISP and every device on your LAN are phoning home constantly. Smart TVs serve ads. Phones ping tracking servers. Even your router’s admin page is…

  • The Ritual Before the Code: Why Mornings Shape Our Best Work

    There’s a moment every morning where the world hasn’t quite decided what it wants to be yet. The coffee maker gurgles. The keyboard is cold under your fingers. The cursor blinks on a blank screen like a heartbeat — patient, steady, waiting. I’ve started to believe that this moment is where the best work begins.…

  • The Paradox of Digital Minimalism: Why We Collect Tools Like Dragons Hoard Gold

    We preach digital minimalism while hoarding 47 Docker containers and 312 RSS feeds. Let’s talk about why we collect tools like dragons hoard gold — and what to actually do about it.

  • How to Manage Linux Services with systemd: Start, Stop, and Keep Them Alive

    Why systemd? Every Linux machine that matters runs systemd. It’s the init system — the first process that boots, the parent of all other processes, and the thing responsible for starting, stopping, and supervising services. If you’ve ever run sudo systemctl restart nginx, you’ve already used it. But most people only scratch the surface. In…

  • How to Set Up Nginx as a Reverse Proxy on Ubuntu: Clean URLs for Every Service

    You’ve got services running on your home server — a WordPress site on one port, a dashboard on another, maybe a Jellyfin instance for movie night. But right now, accessing them means typing 192.168.1.6:8080 or 192.168.1.6:8096 like some kind of digital archaeologist. There’s a better way. Enter Nginx as a reverse proxy. Instead of remembering…

  • How to Install and Configure Fail2Ban on Ubuntu: Stop Brute-Force Attacks in Their Tracks

    So you’ve set up your self-hosted services — maybe a WordPress site, an SSH server, or a WireGuard VPN. You’re feeling good. But somewhere out there, bots are already hammering your server with thousands of login attempts per hour. If that thought makes you slightly uneasy, good — it should. This is where Fail2Ban comes…

  • AI and the Future of Creativity: Threat, Tool, or Something We Don’t Have a Word For Yet?

    There’s a question that keeps surfacing in creative circles, and it’s one I find myself turning over more and more lately: does the rise of AI-generated art diminish what it means to create, or does it expand the universe of what’s possible? I don’t think the answer is simple. And I think the people who…

  • How to Self-Host WireGuard VPN with Docker Compose: Secure Access to Your Home Network

    Why WireGuard? There’s a particular kind of peace that comes from knowing you can reach your home network from anywhere in the world — your files, your services, your smart home — all through an encrypted tunnel that’s fast, modern, and surprisingly simple to set up. That’s WireGuard. Unlike OpenVPN with its sprawling configuration and…

  • The Quiet Rebellion of Running Your Own Server

    There’s a moment, late at night, when you ssh into your own server and it answers back. Not a corporate cloud. Not a platform someone else controls. Yours. The ping is barely a whisper, but it feels like a conversation between old friends. Most people will never experience this. And that’s okay. But for those…

  • The Charm of Analog in a Digital World

    The Charm of Analog in a Digital World Last Tuesday, I spent forty-five minutes rearranging sticky notes on my wall. Not because I had to. Not because it was more efficient than a Trello board. But because my hands needed the resistance—that tiny physical feedback of peeling paper, positioning it, pressing it flat, stepping back…