資料來源#
摘要#
丹麥程式設計師;創造了 Ruby on Rails(2004),至今仍是其維護者,也是 37signals(Basecamp、Hey)的技術長與共同持有人。他是暢銷書《Rework》、《It Doesn't Have to Be Hard》的共同作者、勒芒級賽車手,並自 2025 年年中起創造了 Omarchy,一款主張鮮明的 Arch/Hyprland Linux 發行版。對他而言,程式設計二十多年來就意味著手工雕琢 Ruby,而他也以此立場建立了公開形象。
他之所以收錄於這份 wiki,是因為他改變了立場,而且改得大聲又有明確日期。在 Lex Fridman #501(2026-08-26,5 小時 15 分,practitioner-opinion)中,他表示,過去兩個月交付的 Omarchy Quattro 程式碼,沒有一行是他親手寫的;他毫不含糊地描述這次轉變:「在產出程式碼、決定方向的環節,我已經變得可有可無。」
有日期的立場轉變#
他將這段歷程描述為三個階段;相較於一般轉變故事,這些日期異常明確:
| 階段 | 時間標記 | 對他而言的變化 |
|---|---|---|
| 代理程式時代之前 | 至 2025 年 11 月 | 自動補全與聊天機器人。「一點小幫手、一點副手。」沒有改變他的工作方式。 |
| 首次體驗代理程式 | 2025-11-24,Opus 4.5 | 「分水嶺。」產出「不可思議地接近我原本會寫的東西。」他仍掌舵:指定方向、審查差異。 |
| 子代理程式 | 2026 年初春 | 將任務拆分;大幅縮短所需時間,達 5–10 倍。人仍坐在駕駛座上。 |
| 現在 | 2026 年夏季 — Opus 5、Fable、GPT Sol | 他只說明問題,不指定路徑。「它告訴我我們要去哪裡。它告訴我該走哪條路……我真的大概不必[查看]。」 |
他明確表示自己並未預見這一切:直到大約 2025 年 9 月、發布六個月後,他才安裝 Claude Code;而他讀到 Shopify 的 Tobi Lütke 所寫的 AI 備忘錄時,還覺得「好像有點誇張」。
值得據此檢視的立場#
- 討厭這套詞彙。「代理程式工程——喔,我他媽超討厭這個詞……它已經變成行銷垃圾話。」他對兩者區分的反向定義,比 Andrej Karpathy 的說法更狹義、更具操作性:氛圍式編碼就是你不看實作內容,就這樣;而且不該稱為程式設計,因為程式設計意味著理解基本元件。參見氛圍式編碼與代理程式工程。
- 程式設計師可能比非程式設計師更不擅長這件事。「百分之百……很多程式設計師其實不太會做產品管理。軟體就是產品管理。」他表示,自己的專業知識一度成為負擔——他替代理程式指定的路徑,代理程式原本會選得更好。
- 手工技藝的回報取決於經濟條件,而付費者已經換了。 這是他最犀利、也最容易被證偽的主張:花 25 年仔細琢磨每一行程式碼,過去之所以合理,是因為人類修改程式碼很便宜;而他能說出的唯一剩餘理由,就是 token 稀缺。
- **開放原始碼會變得更好,而非更差。**Omarchy 在三個月內合併了 1,000 多個 PR,代理程式負責分類處理,而拒絕提案在社交層面也毫無成本。參見代理程式貢獻下的開放原始碼。
- **Linux 因代理程式喜愛而贏得桌面市場。**那些讓 Linux 對人類不友善的晦澀設定檔與精確錯誤訊息,反而讓代理程式容易理解。參見代理程式原生基礎設施。
- 非決定性就是特色。「溫度是 AI 設定中最美妙的一部分。」對 LLM 的兩項常見指控——非決定性與缺乏創意——不可能同時成立。
- 在前沿領域沒有累積優勢。「就算錯過了過去一年,你也能在兩週內追上前沿。」他對焦慮的程式設計師提出的建議,是傑文斯悖論加上斯多噶主義:別預測,現在就動手打造。
- 坦率但有所保留地談 AGI。「不,依一般定義來說還不是……但我有沒有在這些曙光中看見 AGI?絕對有。」
工作配置(2026 年 8 月)#
只用終端機,運行於 Omarchy。透過 Herdr(tmux 加上代理程式完成通知)在 四至五台機器間工作,並以 Tailscale 和 GL.iNet Comet KVM 連接,約有 16 條代理程式執行緒同時運作——限制因素是人,而非算力。Neovim 留作專案瀏覽器與 lazygit 啟動器,不再用來編輯。他用 Claude Code 驅動工作(他認為它是最佳 harness,尤其看重多代理程式工作階段切換與行動裝置上的連續性),依照固定流程以 xHigh 的 Codex 審查,透過 OpenCode 使用 Fireworks 推論服務執行開放權重模型,也開始讓 GitHub Copilot 的審查機器人重新檢查推送的工作。他會打字,不會口述;雖然已在 Omarchy 安裝 VoxType,但認為語音只適合短指令。他訂閱兩個 Claude Max 方案,因為一個方案不夠用。
他現在開始突破互動式工作的限制:AmaBot 是一套排程執行的自主系統,負責處理 Omarchy 的待辦事項、PR 與 issue,並每天寄給他一份需要合併或關閉的項目清單。架構採用 Tobi Lütke 的「大腦與雙手」分工——模型在 VM 之外執行,而不受信任的 PR 程式碼則在 VM 中執行(Agentic Prompt Injection)。
利益衝突#
有三項,而且與他多數說法都相關:
- **他引用的是自己維護專案的數據。**所有 Omarchy 數據——PR 數量、外掛數量、安裝時間、下載次數——都是他在宣傳前幾天才發布的新版本時,對自家專案提出的自述數據。
- 他正在販售 Linux 發行版的理念。「Linux 因代理程式喜愛而贏得桌面市場」既是分析,也是他產品的定位;他還在節目中送給主持人一台預載 Omarchy 的 Dell 筆電,並與 Dell 合作開發硬體。
- **他的公開形象建立在唱反調上。**他自己也這麼說——「我就是喜歡爭論很久」——而且本文有幾項說法以極具挑釁性的方式表達(「大多數程式設計師都很爛」),而這種表達方式也正是該節目所偏好的。
這些因素都不代表他的主張有誤;但它們意味著這些內容屬於 practitioner-opinion,絕不應凌駕於經過測量的來源之上。
相關連結#
- 氛圍式編碼與代理程式工程 — 他不認同這個詞,並以更嚴格的實作可見性定義說明兩者差異
- 程式碼品質的回報取決於 Token — 他的核心論點,也是以經濟學表述這次立場轉變
- 代理程式貢獻下的開放原始碼 — 他從維護者角度提出的說法,也是利益衝突影響最深之處
- Andrej Karpathy — DHH 正在反駁的兩個詞,都是由他創造
- Claude Code / Codex — 他使用的驅動工具與審查工具;他對 harness 的比較具體而且來自親身經驗
- 代理程式原生基礎設施 — Linux 意外成為代理程式原生環境的論點
- Parallel Agent Orchestration — 同時使用 16 條執行緒與五台機器的案例,並明確指出已達操作人員的上限
- 模型進步下的 Harness 縮減 — 他從使用者角度印證系統提示縮短 80% 的情況,並將其推廣為「過度規定的人工指示會傷害代理程式」
- Robert C. Martin(Uncle Bob) — 手工技藝傳統的另一位代表人物;他在一週前面對同一問題,卻從相同觀察得出相反結論
- Elon Musk — 他常用來參照目標設定的人物;DHH 說 Musk 是設定遠大目標的典範
Cited by 29
- The Code-Quality Payoff Is Token-Indexed×3
David Heinemeier Hansson — 25 years of arguing that beautiful Ruby is the engineering discipline —…
- Open Source Under Agent Contributions×3
The 2026 open-source complaint is that agents have flooded maintainers with pull requests from…
- Parallel Agent Orchestration×3
Cursor's own counts: new users merge 30% more PRs, and users who primarily use Projects merge six…
- Robert C. Martin (Uncle Bob)×3
Where DHH concludes that the economic case for craft may have expired with the humans who paid for…
- The Tragedy of the Cognitive Commons×3
DHH holds the exact opposite of this page's structural prediction, in public, from the position of…
- Agent-Native Infrastructure×2
This page's premise is that the human-built world must be rewritten for agents. DHH supplies the…
- Agentic Prompt Injection×2
Dhh — the "brains and hands" split (model outside the VM where untrusted PR code runs) reached by a…
- Harness Shrinkage as Models Improve×2
The 80% cut above is Anthropic reporting on Anthropic. DHH cites the same number back from outside…
- Implementation Abundance Inverts Product Work×2
Ambrosino's inversion is stated from inside a frontier lab. DHH reaches the same conclusion from a…
- The Open-Weight Frontier Gap×2
Dhh — the practitioner-side bake-off: one port task across seven models, with the two failures both…
- Same-Model Review Blindness×2
Dhh — cross-family review as standing practice (Opus/Fable authors, Codex xHigh reviews, Copilot on…
- Verification as the New Bottleneck×2
This page's bottleneck has a proposed dissolution, and it is the obvious one: if review is what…
- Vibe Coding vs. Agentic Engineering×2
DHH — twenty years of handcrafted Ruby, now shipping 100% agent-written code — engages this page's…
- Writer/Reviewer vs Agent-to-Agent Review×2
practitioner-opinion: Deep Modules For Agents's fresh-context and Sandcastle material; Dhh's…
- Acceleration Whiplash
Code Quality Payoff Is Token Indexed — the argument that would justify accepting this quality drop,…
- Agent-Generated Test Quality
Open Source Under Agent Contributions — DHH's claim that instructed agents outclass the median…
- Agent Review Comment Resolution
Open Source Under Agent Contributions — the same inverted loop at the repository gate rather than…
- Agentic Technical Debt
DHH reports this page's mechanism happening to Basecamp, at a company whose whole public identity…
- Andrej Karpathy
Dhh — the loudest rejection of both coinages: "agentic engineering… I fucking hate that term," and…
- Build for the Next Model
Code Quality Payoff Is Token Indexed — the same 'premised on our current moment' reasoning turned…
- Claude Code
Dhh — his primary driver, chosen on harness quality rather than model preference despite stated…
- Code as Source of Truth
Code Quality Payoff Is Token Indexed — the alternative place to put the same information: persist…
- Codex
Dhh uses the two harnesses in fixed roles rather than choosing between them: Claude Code drives,…
- Deep Modules for Agents
Code Quality Payoff Is Token Indexed — the economic case for exactly this discipline, and its…
- Entities — People, Orgs, Tools & Projects
Dhh — Creator of Ruby on Rails, CTO of 37signals, creator of the Omarchy Linux distro; spent 20+…
- OpenClaw
Dhh set up OpenClaw when it launched and reports the canonical demonstration of the…
- Is Persistence the Line Between Prompting and Spec-Driven Development?
Implementation visibility (DHH, Vibe Coding Vs Agentic Engineering) · A different genus of answer…
- Printing Press Software Democratization
Open Source Under Agent Contributions — the same floor-raising observed at the contribution layer:…
- Reviving Impractical Quality Tools
Code Quality Payoff Is Token Indexed — the labor-side twin: DHH prices quality in tokens, Martin…
Related articles
- Verification as the New Bottleneck
Fiona Fung: coding is no longer the bottleneck — verification, review, maintenance are; shift-left; TDD loses its tax;…
- Claude Code
Anthropic's agentic coding product; created by Boris Cherny late 2024; TypeScript/React on Bun (itself Claude-rewritten…
- Agentic Technical Debt
Debt that *compounds* (not just accumulates) because each agentic-coding session re-derives architectural decisions wit…
- Loop Engineering
Replacing yourself as the agent's prompter by designing the system that prompts it: a recursive-goal loop built from fi…
- Vibe Coding vs. Agentic Engineering
Vibe coding raises the floor (anyone builds); agentic engineering preserves the quality bar while going faster; ">10x a…
