Blog
Notes on infrastructure, homelab, self-hosting, and whatever else I find worth documenting.
- 2026
My day-to-day AI workflow — tools, philosophy, and the patterns that let me ship more than I could alone.
7 min read
- 2026
How I replaced two laptops with an iPad using isolated dev containers — accessible via Mosh, VS Code in the browser, and custom Home Screen icons.
14 min read
- 2026
How building an AI system that controls my living room turned into a six-approach engineering saga.
12 min read
- 2026
Replacing Google Fiber's router with UniFi, and everything running on top — Pi-hole, Caddy, WireGuard, and a stack of self-hosted services.
7 min read
- 2026
Two upstream bugs, one blank panel. Root cause and the one-byte fix for the Claude Code VS Code extension on WebKit.
13 min read
- 2024
Upgrading the homelab server: replacing failing drives, upgrading Proxmox 6 to 8, and adding GPU passthrough for Plex.
9 min read
- 2023Nginx Proxy Managerdeprecated
Set up Nginx Proxy Manager as a reverse proxy with automatic SSL for self-hosted services.
4 min read
- 2023
A personal reference for Linux shell aliases, tmux keybindings, vim, and ranger.
4 min read
- 2023Wireguard VPNdeprecated
Set up a self-hosted WireGuard VPN server in Docker to securely access your home network from anywhere.
3 min read
- 2020Self-Hosted Documentation with Bookstackdeprecated
Self-hosting Bookstack on AWS within the free tier for team documentation and wikis.
4 min read
- 2020
Mount an NFS share on Windows 10 and keep it persistent across reboots.
2 min read
- 2020Trigger Jenkins with DataDogdeprecated
Create a DataDog webhook that triggers a Jenkins job when a monitor alert fires.
3 min read
- 2020
A remix of Tyler the Creator that got picked up by Electric Hawk.
- 2020
Building a Proxmox virtualization server with pooled storage using MergerFS and SnapRAID from scratch.
11 min read
- 2020
Run a headless Kali Linux VM directly from the terminal using Vagrant — no GUI, full control.
2 min read
- 2020Blog Infrastructuredeprecated
How this blog is built and deployed — Hugo, AWS, Apache, and Ansible.
6 min read
- 2020
Post-mortem on a Clevo Control Panel / Synaptics driver conflict causing repeated bluescreens while gaming.
6 min read
- 2020