Quick tech notes and useful hacks.
Tech Notes to Self
session-awareness-claude-code-hooks
Writer’s Brief The Hook An hour later you come back to 13 terminal windows and have no idea what any of them were doing. Main Points to Cover Claude Code hooks can call Claude itself (Haiku) to generate metadata about your own sessions The statusline is a one-line dashboard you never knew you needed, and it was already built into Claude Code, just not turned on Auto-logging means you get a work diary for free, without ever writing a single entry The Angle Problem-solved. Started with “I can’t tell my terminals apart” and ended with AI naming its own sessions and keeping a journal of what it does. ...
slides-to-cloudflare-in-one-session
Writer’s Brief Hook: Alex needed slides for Session 2 of Code for Creatives. Built them with Claude as editable HTML, went through 10+ rounds of feedback, then deployed to Cloudflare Pages with GitHub auto-deploy. All in one conversation. Interesting parts: The feedback loop: edit slides in browser, export changes as markdown, paste to Claude, get rebuilt HTML Cloudflare being stupidly simple compared to Netlify for static stuff Hit auth issues because Claude Code is non-interactive, solved with token extraction The slides stay editable even on the live site (contenteditable attributes preserved) What to emphasize: ...
spawn-new-claude-session-from-existing
Writer’s Brief The Hook What if you could be mid-conversation with Claude and just say “go start a new session over there with what we just learned” and it actually does it? Main Points to Cover The core problem: context is trapped in sessions. You learn something in one conversation that belongs in a different project. The bridge between sessions has always been manual (copy-paste, write a file, start over). The v1 failure is the interesting part: tried to fork the session (–resume –fork-session), bash quoting became a nightmare, it killed the original session instead of spawning alongside it. The fix was embarrassingly simple: write a shell script to /tmp. The pattern: when you can’t pass complex stuff between processes inline, write it to a file. The launcher script, the context brief, they’re both the same idea. Files are the universal interface. The Angle Building tools for yourself inside the tool you’re building them with. Meta-tooling. The “wait, can I just make this a command?” moment. ...
student-progress-dashboard-c4c
Writer’s Brief The Hook Built a full-stack student progress tracker (database, APIs, two dashboards, live deployment) in a single Claude Code session, including debugging it live in the browser. Main Points to Cover The system: students get a personalized checklist per week, checkboxes save instantly, instructor sees everyone’s progress The build: plan mode -> 7 new files -> Supabase tables -> Cloudflare deploy -> stress test, all in one sitting The debugging: three bugs found during stress testing, all fixed and redeployed without leaving the conversation The Angle This is a “here’s what vibe-coding a real feature looks like end-to-end” story. Not a toy demo. Real students will use this. The interesting part is how many things went wrong (missing env vars, email typos, schema mismatches) and how the debugging loop worked. ...
supabase-sql-from-terminal
Writer’s Brief The Hook You can skip the Supabase dashboard entirely and run SQL straight from your terminal (or from Claude Code) using one curl command. Main Points to Cover The Supabase Management API accepts raw SQL, not just REST/CRUD Your access token is already sitting in your macOS Keychain if you’ve ever used the Supabase CLI This unlocks “give someone access” as a one-line command instead of a multi-step dashboard workflow The Angle Discovery through friction. Tried psql, it failed (IPv6 only). Tried the CLI, wrong version. Dug into the Keychain, found the token, hit the Management API. Now it’s a one-liner forever. ...
tech note to self - 4k-screenshot-hack
You can take 4K screenshots in Chrome dev tools. F12 → toggle device emulation → add custom device (1920x1080, 4x pixel ratio) → three dots → capture screenshot. Also does full-page screenshots. Might come in handy when recording screen!
timezone-tui-with-ollama
Writer’s Brief The Hook What if you could type “show me times in Tokyo on Valentine’s Day” into your terminal and get a formatted comparison table? Main Points to Cover Textual makes surprisingly polished terminal UIs with almost no effort - DataTable, Input, styling all built in Ollama tool calling turns natural language into structured function calls locally - no API keys, no cloud The fuzzy resolver layer is the unsung hero - it’s what makes “NYC” and “Brasil” work without the user needing to know IANA timezone IDs The Angle Personal tool built to solve an actual annoyance - coordinating across timezones. The interesting part is how the three layers (TUI, LLM, resolver) snap together and each one has a clean fallback (keyword parsing, stdlib timezones, alias map). ...
tmux-quick-reference
unit-tests-for-cloudflare-pages
Writer’s Brief The Hook Your production site has thousands of lines of logic and zero tests. Here’s how to add 52 tests in 30 minutes without touching the scary parts. Main Points to Cover The trick: extract pure functions from API handlers into a shared lib/, test those. Don’t try to test the whole handler. For browser scripts (auth), mirror the logic in a testable module instead of modifying the original. Same code, separate file, zero risk. The whitelist .gitignore trap - when your project ignores everything by default, new test files are silently invisible to git. The Angle Practical “first tests” story. Not about TDD philosophy. About going from 0 to 52 passing tests on a real production site that’s already serving customers. ...