Claude Code
Anthropic’s terminal-based agentic coding tool that operates through the command line, capable of reading codebases, running commands, browsing the web, and iteratively completing complex software tasks.
Anthropic’s terminal-based agentic coding tool that operates through the command line, capable of reading codebases, running commands, browsing the web, and iteratively completing complex software tasks.
Executable specs are behavior descriptions that also run as tests. Instead of treating documentation and tests as separate artifacts, the spec itself is executable, making it the most trusted source of truth for both humans and agents. Why it matters Single source of truth: the spec and the test are the same artifact, reducing drift. Dual audience: readable narratives for humans and deterministic checks for machines. Agent steering: a rich corpus of examples becomes the behavioral contract an agent can follow when implementing or refactoring. Common forms Markdown-based test suites: scenarios are written as text with fenced code blocks that a harness executes. Data-driven specs: inputs and expected outputs are expressed as fixtures with a thin runner. Literate-style specs: prose describes the intent; code blocks demonstrate behavior. Trade-offs and risks Ambiguity risk: if comments or prose stand in for assertions, behavior can be under-specified. Tooling burden: you need a runner that executes blocks, reports failures, and keeps the format pleasant to edit. Coverage bias: specs can emphasize readable cases and miss edge-case rigor. Design guidelines Keep scenarios small and focused; one behavior per block. Use explicit, machine-checkable assertions near the example. Make failure output tight and readable so the spec remains a usable debugging surface. Treat the spec as the contract for refactors: if the spec passes, the refactor is valid. Related notes Spec-Driven Development References Charlie Marsh, “Markdown test suites as executable specs” (thread). https://x.com/charliermarsh/status/2007117912801427905 Simon Willison on language-independent test suites (quoted in the same thread). https://x.com/simonw
Australian software engineer and writer; known for the “Ralph” loop framing and for public arguments about agentic coding, context hygiene, and identity in software engineering.
Landing the Plane is a session termination protocol for AI agents, formalized by Steve Yegge (creator of the Beads framework). It addresses the “amnesia” problem where agents lose context between sessions and leave “crap” (temporary artifacts) behind. The Problem Without a disciplined shutdown process: Context Loss: The next session starts fresh (“50 First Dates”), leading to repetitive re-explanation. Repo Pollution: Abandoned git branches, stashes, and debugging artifacts clutter the workspace. State Drift: The issue tracker (or mental model) falls out of sync with the actual code state. The Protocol When a user says “Land the plane,” the agent executes a scripted checklist to safely close the session: ...
The fundamental shift in the software developer’s role — from an Executor who writes code line-by-line, to an Orchestrator who defines architecture, sets constraints, and manages a “factory of agents” to implement the details.
A development methodology where high-level technical specifications, rather than manual code entry, serve as the primary driver for implementation by AI agents.
Programmer and blogger; associated with “Landing the Plane”, Beads, Gas Town, and (with Gene Kim) book Vibe coding / FAAFO.