Posts
All the articles I've posted.
-
Obsidian's CLI Cut My Tool Calls by 60%
Obsidian 1.12 shipped a CLI. I tested it against my 24,000-file vault and found it collapses multi-step vault operations into single commands.
-
One iPhone Screenshot, Eight Sites Broken
My iPhone showed horizontal scrolling on jimchristian.net. I audited all 8 of my Astro sites in parallel and found the same class of bug in 7 of them.
-
Thirty Minutes Debugging the Threads API, Then I Just Pasted It
Tried to post a thread via the Threads API. Token expired, wrong App ID, permission scope missing. Wrote the content by hand instead.
-
Deploy Succeeded. Locked Out Ten Minutes Later.
Deployed 616 files to the VPS. Tried to SSH back in. Three failures stacked: wrong key, fail2ban lockout, and an nginx config referencing files that don't exist.
-
Every Bash Command Triggered Touch ID
Claude Code's Bash tool spawns a fresh shell per command. Each shell sourced .zshenv. .zshenv called 1Password CLI. Touch ID prompt on every single tool call.
-
Published a Tool. Its README Fingerprinted Me.
Published an open source tool with stats in the README for credibility. Another user's AI read those stats and surfaced my setup details.
-
Vault Reorganization Broke Every Search Index
Reorganized the vault. Every search index pointed at folders that no longer existed. Rebuilt from scratch — 9 collections, 21K chunks, a 4-hour auto-refresh.
-
Tasks Live in Two Places. Neither Knew About the Other.
Vault tasks and phone reminders existed in parallel. Built a bidirectional sync. The hardest part was macOS sed choking on emoji.
-
Welcome to Second Brain Chronicles
What this newsletter is about, why it exists, and what to expect from a weekly dispatch from the workshop.
-
Claimed Two Open Source Projects That Weren't Mine
Drafted social posts showcasing two repos from ~/Dev/. Neither was my work. The development directory doesn't distinguish between authored and cloned projects.