personal tech writing

Computers, networks,
and everything in between

Notes from someone who spends too much time in a terminal. Low-level, practical, occasionally opinionated.

networking hardware security programming software computer science
recent posts

Why your home router is lying to you about latency

Most consumer routers report ping times that don't reflect what your traffic is actually experiencing. The issue comes down to how bufferbloat interacts with QoS settings that ship misconfigured by default. I spent a weekend with a flashed OpenWrt box figuring out what was actually happening.

Continue reading →

The BIOS/UEFI distinction nobody explains clearly

Every explainer I've found either over-simplifies or assumes you already know what a firmware interrupt is. Here's the version I wish I'd had — starting from the first few milliseconds after you press the power button, and why UEFI Secure Boot is more interesting than annoying.

Continue reading →
I post when I have something worth saying rather than on a schedule. If something here is wrong, I genuinely want to know — there's a contact link in the about page.

Certificate pinning: when it helps and when it backfires

Certificate pinning gets recommended as a security measure for mobile apps, but the failure modes are rough. I looked at a few real cases where it created more problems than it solved, and when it actually makes sense to reach for it.

Continue reading →

I finally understand why C pointers confused me for so long

It wasn't the syntax. It was that every tutorial started with memory addresses before establishing a mental model of what memory actually is. Here's the explanation that finally made it click, starting from a much simpler place.

Continue reading →

Containers aren't VMs and treating them that way causes problems

The mental model most people carry over from virtual machines doesn't map cleanly onto containers. The differences matter most when things go wrong — especially around networking, storage, and what "isolation" actually means in a shared kernel environment.

Continue reading →

What actually happens when you type a URL and hit enter

The classic interview question, but actually answered. DNS resolution, TCP handshake, TLS negotiation, HTTP request, rendering — I traced each step with Wireshark running and documented what I saw. Some of it surprised me.

Continue reading →