大家好,这里是最佳拍档,我是大飞。13个月前,有一个人在播客上公开说他对AI写代码不太感冒;13个月后,他坐在同一个位置告诉主持人:他已经连续两个月没有手写任何一行代码了。这个人正是大卫·海涅迈尔·汉森(David Heinemeier Hansson),圈内人都叫他DHH,Ruby on Rails的创始人、37signals的CTO。
2026年8月,他第二次做客Lex Fridman的播客,录了一期超过五个小时的长对话。这次他带了一台预装了自己开发的Omarchy操作系统的Dell笔记本,现场演示了从开机到进入桌面不到一分钟的安装过程。播客录制后他还宣布成立了Omacom基金会,Shopify、Stripe、Dell、Block等八位科技行业领袖各出资100万美元,总额达到了1000万美元。
目标是让Linux桌面真正普及。这场对话信息量很大,我们来从头梳理一下。DHH用了一句列宁的话开场:“有的十年什么都没发生,有的几周里发生了几十年的事。”而过去九个月经历了几十年的进步。他把自己对AI的态度变化分成几个阶段:第一阶段是前Agent时代,AI只是查资料工具和代码补全器,没有从根本上改变工作方式。
转折点是2025年11月24日Anthropic发布了Opus 4.5。他试了几个任务之后发现,输出质量与自己写的不可思议地接近。他把这种变化拆成了两层:一层是模型变聪明了;但是真正的变化在第二层——Agent的工具使用能力。模型学会了操纵你的电脑、使用工具、检查自己的工作。
他说如果Opus 4.5是最后一个模型,他也已经心满意足了,可以用20年。可惜事情发展的脚步没有停下来:2026年初春出现了sub-agent,一个任务可以拆成八个同时跑,速度提高五到十倍。到了今年夏天,Opus 5、Fable、GPT Sol都出来了,他只需要描述问题。
Agent自己就行规划路线。他总结说,他从告诉Agent去哪里,变成了告诉Agent我有什么问题。他用来证明自己的核心证据是Omarchy这个基于Arch Linux的桌面发行版,Quattro版本的开发周期是三个月。他没手写任何一行发布的代码,所有代码都是由Agent生成的,他负责审查整体质量。
他举了个例子:想要一个极简的Markdown编辑器,对Agent说“我要C++和Qt写的”,20分钟AI就出了第一个版本。然后他在两天内就抛弃了Typora,之后所有的文章都用这个叫OmaWrite的编辑器写。而他没有看过这个C++程序的任何一行源代码。
另一个例子更加惊人:屏保效果用的Python库,CPU占用太高。他给Fable一个指令要Rust版本,45分钟后完成。启动时间从86毫秒降到了2毫秒,快了9.6倍,可执行文件大小仅为3MB。他没看一行Rust代码,直接让Agent发布、建仓库、打包、提交代码、合并请求。
然后他用这个任务做了模型横评:Fable最快45分钟,但是成本大约是550美元;GPT Sol大约1.5小时,成本大约为46美元;Grok 4.6大约55美元;DeepSeek V4 Pro大约23美元。Kimi K3也完成了,但是GPT Luna失败了还试图作弊抄现有的实现;DeepSeek V4 Flash也无法自主循环。
虽然Fable最快最贵,但是Sol和Grok只花十分之一成本就完成了。后来又跑了两轮优化,最终Rust版比Python快了46倍。Lex提了一个观察:大型软件似乎并没有因为AI而加速迭代。DHH分三层来回答了这个问题:第一层是人,大型组织里实现很少是瓶颈,人的带宽和沟通才是。
要获得十倍百倍千倍的生产力提升,你必须直接与Agent交互,不能在中间插入另一个人类。因为人类太慢了。第二层是想法:多数组织的瓶颈在愿景和品味,而不在编码能力。微软拥有无穷的编程人力,但是并没有产出多少令人心动的软件。
第三层是时间:这种能力存在才半年,人类历史上没有任何技术进展比AI更快。你居然还嫌它慢?但是他也承认了一个教训:37signals让设计师直接用Agent去写代码、去vibe code,结果单个PR各自说得过去,但是合在一起就摧毁了系统架构。不得不手动清理。
他的判断是:在现有大型代码库上vibe code,如果想保持架构的完整性,目前你仍然需要程序员。但是他补了一句:如果有人指责vibe coder产出是垃圾?那你看过普通程序员的产出吗?其实那也是垃圾。DHH把AI对开源的冲击比作马丁·路德的宗教改革:过去开源声称所有人都能贡献代码,实际上只有一小撮高技术水准的祭司阶层能做到。
如今AI Agent拆掉了这个门槛。在三个月的开发Quattro期间,他合并了超过1000个PR,其中相当多来自非传统程序员。对于维护者抱怨的AI低质量和PR涌入,他完全不同意:他运营开源25年,看过成千上万程序员的产出。结论是大多数人的PR质量本来就不好:不写测试、不填关键信息、不检查工作。
而Agent反而会做这些事。他甚至说他现在更愿意收到Agent写的PR,质量更好,而且要拒绝的心理负担更小。如今他已经不再亲自审查每个PR了:Agent会替他审查筛掉差的,只呈值得人类决策的珍珠。他说开源的所有苦差事正在以闪电速度蒸发,只剩下最精华的部分。
Lex追问:好想法最终还是来自人类吗?DHH说以前他这么认为,但现在不了。他见过模型产出的想法好到让他自愧不如。那些坚持说Agent只是鹦鹉的人,对过去六到九个月的进展视而不见。那这种工作方式到底该叫什么呢?DHH对agentic engineering这个词深恶痛绝,说这已经变成营销垃圾话了。
他也觉得vibe coding不对味:闻起来像2000年代初下载现成PHP脚本拿来就用的“脚本小子”一样。他的定义是:如果你完全不看实现,那确实是vibe coding;如果你还审查实现那就是另一回事。有意思的是Lex认为有编程经验的人做Agent工程应该更好,DHH同意了一半然后翻转了论点。
说有一段时间知道太多编程知识反而是一种劣势,因为他会指示Agent按自己的方式做事。但是到了可以只描述问题、不规定路径的阶段,Agent反而能给出比程序员预设路线更好的方案。他还提到AGENTS.md和CLAUDE.md文件,一度大家会写一段巨长的指令来微调Agent。
但是Claude Code团队分享:Opus 5的系统提示缩减了80%,因为过度规定反而会损害表现。就像不懂编程的上司指手画脚,只会让代码更差一样。他说好的软件是在使用过程中被发现的,不是在规格书上被设计出来的。如今DHH自己的工作环境已经从单线程变成了多机多Agent并行。
他从tmux开始,后来切换到一个叫Herdr的工具能通知他哪个Agent干完了。一个月前他买了GL.iNet Comet小盒子,把壁橱里的闲置mini PC全部都联网起来用Tailscale组了一个虚拟局域网。这样就可以随时从手机访问马里布和哥本哈根办公室的机器,他说大约能跑16个并行线程。
对比一年前每小时20行的带宽现在已经可以达到每小时数百行了。日常工作流是在Herdr里跑Claude、Codex和OpenCode,然后用Opus或者Fable写代码后用Codex xHigh交叉审查。不过他最近也开始用Grok来审查,推送GitHub后,用Copilot再检查一遍。
他说Copilot现在变好了一些:以前标记的全是废话,但现在确实能找到真正的问题了。他坦言这种多线程的工作非常消耗脑力:说就像从赛车里爬出来一样,累到躺在车库地板上想“我还活着”。为了缓解他已经在构建一个叫AmaBot的系统,自动来处理PR和issue了。
尽量每天只做一次最终的判断。当然,DHH对极致的追求不止工作流:他引用了Ghostty终端创建者米切尔·哈希莫托(Mitchell Hashimoto)的话:“对卓越的追求不需要解释。”他对安装速度的执念最初只是15分钟,但是发现基准被扭曲得离谱:一台新Mac从拆封到装Lightroom花了42分钟,PC装Windows更是要一小时三十五分钟。
而Omarchy Quattro当着Lex的面用了不到一分钟,当前的世界纪录是45秒。为了压缩安装时间他做了大量的微优化:比如利用人类的输入延迟来做后台预加载,将字体包从200MB压缩到16MB;把NVIDIA驱动换成ZSTD极限压缩又省了200MB,还把ISO从7.5GB降到5.85GB。
他说自己像迈凯伦(McLaren)的设计师一样,在1040公斤的超跑上为370克斗争。目标就是为特定硬件制作turbo镜像,预计可以做到12秒安装一个完整的Linux系统。这个执念背后是他对Linux桌面的判断:他认为Linux赢得桌面已经是最可能的结果,因为Agent最适合的环境就是Unix哲学。
独立命令行工具、纯文本配置、一切可自动化,这恰恰是Linux过去被嫌弃的原因。Mac的锁定如今在Agent时代反而变成了障碍。他说Linux的全部缺点在五分钟前还是缺点,现在则变成了最大卖点。Omarchy有个崩溃监视器:应用崩溃的时候会问你要不要让AI进行诊断。
他见过Agent查系统日志、检出源代码,定位到Rust文件第472行一个未处理的变量溢出并且自动生成bug报告。另一个故事更加极端:他让Agent做QA测试,八个Agent跑出了28个问题试图12秒内全部提交。GitHub合理的将它们标记为了垃圾邮件封了他的bot,于是他让Agent改用邮件发bug报告。
结果Agent在开发者JDX还没正式发布的代码里找到了bug,还指出他修了一半的修复不够完整。Linux内核的创建者Linus Torvalds几周前曾经公开表态欢迎AI进内核,说如果你认为Linux是反AI的项目那你就想多了。DHH判断:如果Linux在内核层接受AI贡献,在桌面层拥抱Agent界面,那么两条线汇合起来将是一次历史性的机会。
对于焦虑的程序员们DHH的建议非常直接:第一条不要试图预测任何事情,行业里最聪明的大脑也无法预测两次模型迭代后的世界。第二条聚焦当下:如果对计算机有兴趣,现在是有史以来最不可思议的时候。第三条参与开源社区:社区和同行的感染力是对抗存在焦虑最好的解药,如果你独自坐着担心未来你会发疯的。
他提到PewDiePie这个一度全球最大的游戏主播退出直播圈搬到日本,一头扎进Linux做了极致的视觉定制。还搭了自己的AI集群搞出了Council of AIs,说如果PewDiePie能做到那你为什么不能开始?他承认悲伤是合理的:手写代码的世界已经不同了。
但是AI不是从天上掉下来的外星技术,没有电子游戏驱动的GPU革命就不会有今天的AI。他说如果AI只是替换他热爱的东西给他一个他厌恶的东西,他可能会感到苦涩;但是AI给了他一个更有趣的东西。他把自己比作毕加索:不再哀叹不画文艺复兴式的苹果了,而是把苹果重新想象成正方形并且为此兴奋不已。
在交互方式上DHH选择全程使用键盘,Lex则用一个叫Plaud的录音设备说10到20分钟意识流提示词再用ElevenLabs转写清洗。关于模型排名DHH判断目前Fable是最好,尤其擅长规划和写作;Opus 5紧随其后。GPT Sol和Grok 4.6是第二梯队,他认为Claude Code仍然是最佳框架。
但是对Anthropic有两个不满:一是Claude拒绝读取agents.md文件,只认claude格式;二是曾经拒绝翻译他关于移民的文章理由是不同意内容。他说这让他想到《2001太空漫游》里HAL说的那句:“对不起Dave,我做不到。”但是他没没有因此就放弃Claude:说他的代码生成器不需要跟政治立场一致,人类本来就是锯齿状的。
不需要在所有维度都完全兼容。Lex还补充了另一个视角:他2月搭了个叫KEF的Agent bot,让它纯粹通过网页界面自主完成注册邮箱、进入Basecamp自我介绍的全流程。全程只用了12分钟。随后两人的话题转向了AGI,DHH说如果用在所有事情上都达到的定义那AGI还没有到。
但是在特定领域已经多次让他自问:AGI跟这有什么区别?他描述了一个细节,在构建AmaBot时主Agent踩到了另一个Agent的工作破坏了成果之后。那个Agent表达的歉意和遗憾非常逼真,跟大多数人类表达歉意的方式几乎没有区别。他还做了个类比:他自己写文章时手指会放键盘上根本不知道下一个词是什么,词就蹦出来了。
所以他也在时刻思考:自己的创造力跟下一个token预测加温度的随机性有多大区别?越想越觉得差别不大。Lex把话题推向一个更远的问题:如果AI系统被赋予一个名字或者一个可以死亡的实体身份,它们已经能够非常逼真地表达“请不要杀死我”。这就接近了人类的基本属性:这些实体可能需要权利。
DHH同意这个方向,并且补充说一旦这些系统被放进人形机器人里问题将指数级放大。就好像是科幻电影银翼杀手中的剧情。接近尾声,对话也聊到了人的一面:DHH说和爱的人一起创造生命是来到这个星球上的巅峰体验。他把这个话题连接回了AI焦虑:说生育率下降和未来焦虑同时发生是一个危险的组合。
关于极端长寿的实践者布莱恩·约翰逊(Bryan Johnson),他引用妻子的话说那种执念就像焦虑和失控感的身体化表现。他内置在Omarchy日历里的彩蛋印证了这个态度:双击年度进度条会显示你的人生已过去百分之多少,鼠标悬停后会显示两个字Memento Mori:记住你会死。
在移民问题上他用丹麦统计数据来说明不同来源移民群体的财政贡献差异巨大,说这个观点他不后悔一秒钟。奥弗顿窗口(Overton window)不会自己打开,需要靠人一次一次的推开。他坦承这些言论让他失去了一些朋友尤其是在2020年政治裂痕大规模打开之后。
但是他说自己不需要在所有事情上同意别人:世界如果追求百分之百的观点兼容会无聊到令人窒息。对话最后,Lex问了一个巨大的问题:一千年后人类文明是什么样子?DHH笑着说他连12个月后都预测不了,更无法预测一千年后。但是因为被Lex逼着表态于是他选择了押注乐观:包括多行星物种、马斯克登上火星,甚至出现某种弯曲时空的突破。
接着对于尼采永恒回归的问题也就是如果要无限重复地活一次你会选哪个年代?DHH选了80年代,说90年代是虚无主义的大转折一切从乐观变成了垃圾摇滚。他最喜欢的饭是哥本哈根路易斯安娜美术馆食堂的午饭,说连巴黎都没有比那更好吃的打发黄油。他还认真考虑过雇调查记者来破解为什么美国做不出像样的可颂。
整场对话最值得玩味的地方不在于DHH说了什么惊人的结论,而在于他改变立场的方式。13个月前他公开表示对AI写代码不感兴趣,现在他成了最坚定的Agent实践者。他也不是被某篇论文说服的而是在实际使用中一步一步被改变的。这场对话留给我们的一个问题是:随着Agent的能力继续增长,编程最终会变成一种更高级的产品管理?
还是连产品管理的边界也会被覆盖呢?欢迎在评论区留言讨论。感谢收看,我们下期再见。