posts 01 / 22
what i learned shipping an oauth-protected mcp serverthe protocol was the easy part. the oauth flow around it wasn't
enablement isn't evangelismthe tools are landed, and people are already doing real work with them. the job now is widening the circle and turning early wins into shared habit
spec-kit, in practicethe spec is the artifact. the code is the side-effect
meaningful reportingan integration problem before it's a writing problem. the executive summary wants to be a script, not a calendar slot
template literal types, in practicethe route string and the params object should not be allowed to disagree
agentic chat over synthetic bank datamock api, n8n, ollama. natural-language chat over synthetic data. cpu-only homelab stack
ollama and n8n on a proxmox homelablocal ai, async by design, on hardware you already own
the translator's jobthe why doesn't travel by itself
the production readiness reviewa checklist with teeth, run before ship
the editor as a force multiplierthe keystrokes you save compound. the keystrokes you don't, also compound
eval-driven prompt iterationwrite the eval first. iterate the prompt against it
illegal states unrepresentable, in typescripta discriminated union beats a boolean flag every time
the senior ic who isn't a leadthe role exists. most companies forget to name it
tool use error handling patterns in typescriptthe agent doesn't care about exceptions. structure the result instead
git bisect: the bug-finder you forgotbinary search, applied to your own commit history
structured outputs: claude vs openai, in practicethe apis look similar. the failure modes don't
prompt caching costs less than you thinkwith numbers from a real workload — not a benchmark
pre-mortems beat post-mortemsthe cheapest debugging is the kind you do before the bug
typescript types as documentationbranded types are a comment that survives the next refactor
what claude code's hooks taught me about agent designthe harness gets richer when it gets out of the way
training as a way to learntrying something new this year — fifty-two times
welcome inwhat's here, and what's coming