with-agents

The Pragmatic Engineer — selected conversations

DHH’s new way of writing code

Eighteen curated conversations on agent workflows, design, harnesses, and software quality

A manually reviewed selection of Pragmatic Engineer conversations with Maggie Appleton, Matt Pocock, Tibo Sottiaux, Martin Fowler, Dex Horthy, Boris Cherny, Mario Zechner and Armin Ronacher, Laura Tacho, Hillel Wayne, Mitchell Hashimoto, Kent Beck, Peter Steinberger, Grady Booch, Steve Yegge, DHH, Dax Raad, Charity Majors, and Addy Osmani. Topics include design prototyping, reusable skills, agent workflows, context and harness design, TDD and verification, architecture, measurement, accountability, and open-source governance. Practitioner observations, product-team claims, and forecasts are not controlled findings.

The Pragmatic Engineer 15 of 18
In this collection Browse 18 summaries 15 of 18

Gergely Orosz, host of The Pragmatic Engineer podcast, interviews David Heinemeier Hansson (DHH), co-owner and CTO of 37signals and creator of Ruby on Rails, about an agent-first workflow that preserves a high bar for craft. DHH asks agents for drafts, reviews diffs, and uses senior judgment to decide what belongs; his productivity and labor-market claims remain personal observations and forecasts rather than controlled findings 31:38–39:31(opens in a new tab), 1:03:21–1:07:21(opens in a new tab), 1:15:07–1:23:17(opens in a new tab).

Key Points Covered

  • The harness changed the interaction: DHH found autocomplete disruptive, while terminal agents could use tools and return complete drafts for deliberate review 32:31–38:38(opens in a new tab).
  • Agent first still means human acceptance: He starts changes with an agent, inspects the diff, then commits, redirects, or edits according to the result 44:19–48:32(opens in a new tab).
  • Models and harnesses are separate choices: DHH uses OpenCode as his main harness while comparing multiple models rather than treating one vendor's stack as indivisible 45:22–47:28(opens in a new tab).
  • CLI composition expands useful scope: Small command-line tools let agents coordinate errors, pull requests, and project updates across systems 48:32–52:18(opens in a new tab).
  • Senior judgment is the current leverage point: Architecture knowledge and review skill let experienced engineers redirect agents, but DHH does not argue that critical code is already safe without review 54:25–57:18(opens in a new tab).
  • Craft standards still govern merges: Generated code must fit the project's aesthetics and conventions; faster output is not permission to keep work DHH considers sloppy 38:38–39:31(opens in a new tab), 1:04:25–1:07:21(opens in a new tab).
  • Cheap drafts make more work economical: DHH describes trying speculative improvements and maintenance that previously would not justify the implementation cost, while supplying no controlled productivity measurement 1:08:14–1:11:12(opens in a new tab).
  • Risky plans get independent critique: For dual boot, he had Opus and Codex challenge each other's plan before applying his own judgment; model agreement was an input, not proof of safety 1:11:12–1:13:18(opens in a new tab).
  • Labor forecasts remain forecasts: DHH expects pressure on implementation-only work, but distinguishes 37signals' open-ended scope from cost centers and acknowledges uncertainty about timing 1:15:07–1:23:17(opens in a new tab).

Full video: https://www.youtube.com/watch?v=JiWgKRgdgpI(opens in a new tab)

Search

Search field guides and resources across the site.

    Keyboard shortcuts

    Press ? to open this guide (usually Shift + /). Close it before using other site shortcuts.

    Show keyboard shortcuts
    ?
    Search site
    Ctrl + K
    Close the current dialog or menu
    Esc

    Site shortcuts are ignored while typing. Browser and extension shortcuts may take priority.