Writing
Notes on engineering, leadership, and the craft.
Posts · Page 8 of 9

Running background jobs on macOS with launchd
Jun 2026·How to run launchd scheduled jobs on macOS: plist patterns, Full Disk Access pitfalls, and the C launcher trick that survives every redeploy.

How I reach a home server with no public address
Jun 2026·No open ports, no public IP, but real hostnames and a trusted TLS cert. Here is how Tailscale, DNS-01, and Caddy make it work.

Why my home server runs on a spare MacBook
Jun 2026·Running a MacBook home server on spare Apple Silicon? See how Tailscale, Caddy, and OrbStack power 25 self-hosted services with no public IP.

Tracking what the LLM costs in a one-person app
Jun 2026·Slow token leaks hit harder than one big call. Learn how a single wrapper and use-case tags make tracking LLM API costs a query, not a monthly surprise.

Ask the app: a Q&A agent over a kid's school year
Jun 2026·How I built a bounded LLM agent to answer open-ended questions over a child's school year, with three SQL tools and a hard four-iteration ceiling.

Parent-friendly summaries without paying the LLM twice
Jun 2026·Regenerating LLM summaries on every page load wastes money and time. Learn how a derived cache key makes LLM summary caching effortless.

Teaching an LLM to ignore the recap and surface the homework
Jun 2026·Teacher notes are mostly recap, not actions. Learn how to prompt an LLM to extract action items only and ignore past events.

Scraping a school portal with no API: dropping the browser for raw HTTP
Jun 2026·Scraping a school portal with no public API: why I dropped Playwright for Node's built-in https module, a plain cookie jar, and regex parsing.

Why I built a school-assignment app for my daughter
Jun 2026·Clicking 12 subject tabs every night to find one due date? Here's why I built a school portal assignment tracker for my daughter instead.

Preserving the Real Client IP Through a Proxy Chain That Rewrites the Evidence
Jun 2026·Protect client IP provenance across proxy chains by validating peers, enforcing provider contracts, and overwriting one canonical header.