
The Latest
Everything published on the site, day by day, newest first: guides, analysis, essays and quick thoughts in one running log. The shelves for browsing are elsewhere; this is where you see what is new.
The log
Entries 41–57 of 57
Bound Each Run Before Scaling a Migration
A migration across two hundred files needs a task inventory and a way to check every result. One headless run per bounded change can make failures easier to…Quick thoughtclaude-codepracticeParameterize the Brief, Verify the Execution
You keep asking for the same issue workflow: read the requirements, locate the change, implement it and run the relevant checks.Quick thoughtclaude-codepracticeKeep the Handoff Outside the Summary
After a long debugging session, the next turn remembers the proposed fix but loses the failing input.Quick thoughtclaude-codecontextSeparate the Checkouts, Then Integrate the Work
You want to refactor billing while fixing an unrelated UI problem. Separate Git worktrees give the two tasks different working directories and branches, so…Quick thoughtclaude-codepracticeTest What a Different Model Adds to Review
A second model can give you another view of a migration or payment change. That is useful only if its findings survive inspection.Quick thoughtclaude-codeverificationReview the Render Against the Requirement
The dashboard builds successfully, but a customer cannot read the mobile table. A compilation check did its job; it did not test that reading experience.Quick thoughtclaude-codeverificationGive the Agent a Precise Source to Inspect
You know which authentication helper handles the failing request. Give the agent its path and the failing case instead of asking it to rediscover both.Quick thoughtclaude-codecontextSeparate Permission Decisions From Execution Boundaries
Repeated permission prompts can become a reflex. Automating some of those decisions may reduce interruption, but it also changes which actions proceed without…Quick thoughtclaude-codesecurityTurn Repeated Setup Advice Into Maintained Instructions
Your notebook has become a small application, and every new session needs the same explanation: where the tests live, how to run them and which generated…Quick thoughtclaude-codesetupPlan When the Approach or Consequences Are Unclear
A one-line change can alter authorization for every user. A hundred-line generated update can be routine.Quick thoughtclaude-codepracticeKeep a Side Question Out of the Main Thread
You are packaging an application and want to know what --frozen-lockfile means before running the install.Quick thoughtclaude-codecontextSeparate Shared Instructions From Local Context
Your team needs the test command and branch convention. It does not need your scratch-directory preference in its shared instructions.Quick thoughtclaude-codesetupKeep a Session Focused, and Check Its Working Tree
A billing refactor and an onboarding fix have different requirements. Giving each a named session can make their decisions easier to follow than mixing both…Quick thoughtclaude-codepracticePass the Evidence Without the Clipboard Handoff
When an integration fails, the exact error is more useful than your recollection of it. cat error.log | claude passes a file into the CLI without copying from…Quick thoughtclaude-codepracticeChoose an SDK When You Need to Own the Runtime
A shell command starts your prototype. A scheduled service also needs lifecycle control, credentials, error handling and a way to inspect what happened after…Quick thoughtclaude-codepracticeCheck What the Review Command Actually Runs
Before building a review workflow, inspect the commands and plugins available in your installation. A command named /code-review may come from an installed…Quick thoughtclaude-codeverificationThat is the first entry in the log.
To browse rather than follow: topics, all articles and all thoughts. To learn in order: courses and the book.