David Heinemeier Hansson: DHH:编程的未来、AI、智能体工程、氛围编程与 Linux
#501 – DHH: Future of Programming, AI, Agentic Engineering, Vibe Coding & Linux
Guests: David Heinemeier Hansson
Full transcript · Read the full conversation in order, with its original context.
§01原文文稿 · 00:00–1:13:13
有些年代几十年都无事发生,有些星期却会发生几十年的变化。过去九个月里,我们已经看到了相当于几十年的进步。如果你认识不到此刻的重大意义,那才是妄想,才是精神失常。如果一个精灵突然从瓶子里冒出来说:“你想要什么都可以。你梦想过的每一个操作系统功能,我都能交给你,大部分五分钟,少数二十分钟,如果我们真要放开手脚大干一场,也就要两个小时。”谁会不欣喜若狂?我想要突破限速的最快汽车。我想要能潜到马里亚纳海沟的潜水表。我想要不到六十秒就能安装好的操作系统。
我一直喜欢赛车的一点,是当我从车里踉跄出来,累得彻底散架,几乎抬不起头,躺在车库地板上时,会想:“我操,我还活着。”奥弗顿之窗不会自己打开。它是人们冒一点风险,一点一点推开的:冒一点名誉受损的风险,承受一点反对、一点批评,或者有时冒很大的名誉风险,承受很多批评和反对。与另一个你爱的人一起创造生命,确实是活在这个星球上的巅峰体验。
接下来是我与 David Heinemeier Hansson 的对话,他也被称为 DHH。他是 Ruby on Rails 的创造者、37signals 的首席技术官、新 Linux 操作系统 Omarchy 的创造者、畅销书作者、赛车手,也是世界上最直言不讳、最高产的程序员之一。过去二十多年,对他而言,编程意味着一丝不苟地手工打磨优美的 Ruby 代码。但最近,自 2025 年末以来,DHH 拥抱了 AI 革命,并公开转变为最直言不讳、最高产的智能体工程师之一——尽管他讨厌这个称呼。那么我们就说,他是正在演变中的某种编程方式的实践者:AI 完成大部分实际编程,人则凭借高层次的设计、愿景和品味掌舵。是的,确实如此。
DHH 有时颇具争议,但他始终无所畏惧、才华横溢,而且聊起天来非常有趣。这又是一次激烈、令人大开眼界、如同疯狂过山车般的对话。这里是 Lex Fridman 播客。若想支持节目,请看看简介里的赞助商,那里也有联系我、提问、反馈等链接。现在,亲爱的朋友们,有请 DHH。
十三个月前,我们就坐在这里谈编程,随后一切都变了。当时,你对 AI 在编程过程中的作用有些怀疑,后来我们经历了智能体工程的快速演变。那么先问一个简单的问题:你对 AI 在编程中作用的看法发生了什么变化?你感到兴奋吗?还是恐惧?
你的情绪是不是像坐过山车一样?
我无比兴奋。
你最近经常谈到乐趣。
我没有那种存在性威胁的感觉。对我来说,它不是情绪层面的因素,只是理性思考层面的因素。我的情绪百分之百是纯粹、毫无杂质的喜悦……还有乐观,以及对我们竟让计算机做到这些事的惊叹。我觉得非常有意思,我们才十三个月前聊过,却仿佛身处不同宇宙、不同时代。我很喜欢一句话,我想是列宁说的:有些年代几十年都无事发生,有些星期却会发生几十年的变化。过去九个月,我们已经看到了几十年的进步。想象一下,莱特兄弟起飞时你就在现场。
前一天《纽约时报》还写:“再过一万年我们才能飞起来。”后一天,我们就飞上了天空;又过短短几年,就有了跨大西洋飞机。整个世界彻底改变了。能亲历那个时刻,是多大的福分。把视野放大到整个人类历史,有多少人一辈子都生活在出生时的同一个时代?他们从未见过世界和社会彻底改变。而我有幸经历两次,真让人觉得荣幸。我看到了互联网……从没有互联网到有互联网,如今又经历了从没有 AI 到有 AI。这一路多精彩,多幸运。
是,但问题是,这件事给人的感觉,比人类历史上任何事情发生得都快。
没错。
所以我会说,大概是十二月,也许十一月末——
十一月二十四日。
这是……
就是那个确切的时刻。
你知道,人们谈论世界大战中一个国家入侵另一个国家之类的事件时,会记得这种日期;如今我们谈 AI 改变一切也是这样。是的……对很多优秀开发者来说,真的发生了转变:从 AI 做些基本的自动补全,也许写百分之五、十、十五、二十的代码,变成写百分之八十的代码。
或者百分之百。
或者百分之百,是的,尤其当它不是面向公众的产品时。
所以对我而言,即使回看一年前我们的对话,我其实并没有改变观点。我的观点还是一样。一年前,我不喜欢当时提供给我们的 AI 形态:自动补全模式,或者 AI 聊天机器人模式。不过聊天机器人我其实喜欢,我们当时也谈过。它从一开始就是很好的老师,也很适合查找网上的信息,但它并不能取代我雕琢代码。然而……后来我们有了智能体。
是的。
智能体起初大约有五分钟还只是新奇玩意,接着就变得惊人,再接着就让人想:“天哪,这是 AGI 吗?”这一切都发生在去年以来,甚至仅仅是过去九个月内。基本上可以分成几个阶段。先是智能体之前的 AI 时代。我对此很兴奋,但它并没有从根本上重写我这里的游戏规则,没有彻底改变我的工作方式。我依旧在雕琢代码,只是多了个小帮手、小搭档——
……可以跟它碰撞想法,更高效地在网上查信息等等。它只是让我更高效地做我本来就在做的事情,没有改变我与计算机之间的情感联系。随后到了 2025 年 11 月 24 日。对我来说,Opus 4.5 是一道分界线,突然间……我甚至不是二十四日当天试的,我想是二十六日。我给它几个任务,发现输出质量与我自己会写出来的东西相近得不可思议。我记得自己向后一靠,心想:“刚才发生了什么?”
“怎么会从夏天跟你聊的那团自动补全乱麻,在短短几个月后变成这样?智能和可用性怎么会同时提升?”这里涉及智能体运行框架的问题:我不知道 Opus 4.5 是否比夏天的 Opus 4 聪明那么多,但它操控计算机、使用工具、检查自身工作,并将智能用于产生真正有意义成果的能力,已经完全不同。我想,对几乎所有关注这件事、并在圣诞假期开始尝试的人而言,这就是那场巨变。我听说——
……Shopify 等有许多员工的地方,人们突然有了喘息机会,有几周时间可以靠下来看看发生了什么。他们试了试,也获得了同样震撼的体验:这些智能体与从前的工具属于不同类别。于是到这一步,我已经很兴奋了。到了十二月,我已经在重新审视自己的所有先入之见……想着:“哇,它能做这个,那能不能也做那个?”“哦,确实能。”如今再看,Opus 4.5 又显得像个迟钝的模型了。这就是进步的魔力:你以为已经到了某个境界……我记得当时想:“即使这是我们能得到的最后一个模型,我也够用了,我会很满意。”
是的,没错。
我可以在未来二十年都用 Opus 4.5……你也听不到我抱怨,因为能看到智能体按我想要的方式完成这些工作,实在太惊人了。不只是它能完成任务,而是我还能看着它走的路径说:“对,对。这里可能不太对,不过也差不多了。”给它两条意见,它就能按我想走的方式,到达我想去的地方。它能产出我愿意合并的代码。如果写的是 Ruby,代码确实可以很漂亮;Rust 就另当别论了。但智能体能够真正成为我所希望工作方式的延伸,这点非常新鲜。然而我们只等到初春,就突然有了子智能体。
我们有了可以细分任务的运行框架。原本 Opus 要花相当长时间的事情,突然只要五分之一、十分之一的时间,因为任务能拆开,突然就有八个子智能体为你工作。但对我来说,智能体时代最初这两个阶段,感觉仍然需要我来驾驶。我可以告诉它想要什么、去哪里找,在它偏离方向时稍微引导,最终抵达目的地,而我会快得多。
但我必须坐在驾驶座上,必须告诉它我想要什么,也必须担任输出内容的审查者、审计者。终于到了今年夏天,有了 Opus 5、Fable、Sol,也就是 GPT Sol,还有程度稍弱的一些开放权重模型,我们来到了一个新时代:我不再告诉它要去哪里,而是告诉它我遇到的问题,告诉它我模糊、朦胧的想法。它告诉我要去哪里,告诉我该走哪条路。我仍然会看,因为我很好奇,喜欢计算机,也喜欢看到结果,但实际上我似乎不看也行了。在产出代码、选择路线这个环节,我成了可有可无的人。还记得早期 GPS 系统刚出现时吗?
跟看地图相比,它们棒极了,但你还是得留神:会不会把你带进港口?我记得那些报纸报道:“啊,GPS 真糟糕,人们不注意,就把车开进港口了。”上次还有人被 GPS 带进港口是什么时候?现在这种事根本不会再发生了。实际上,汽车现在都能自己开了,对吧?我们如今就到了这种地步,我可以信赖它。在我目前工作的领域里,我可以信赖它,完全有信心它会替我兜底。它不会做傻事;即使做了,也能恢复过来。
嗯。我们应该提一下,程序员工作的领域有各种各样——
没错。
……程序员会在不同领域工作。有……其实我不知道,但我想开发中最常见的领域是网站开发里的增删改查。你有一个数据库。
还有一个面向用户的界面,两者来回交互。它可以是供一个人内部使用、供多人使用、供一小群人使用,或者面向全世界。我觉得在这个领域,真的可以做到百分之百代码由 AI 编写,甚至几乎可以……如果你是个好程序员,对幕后发生的事有良好的直觉,确实可以不看代码,至少我自己的经验如此。我不知道你需要多少编程经验,才能凭直觉,通过观察系统的连锁影响和症状,判断后台运行正常。
但我认为那个领域已经接近百分之百。还有你也在做的领域,也就是写一个 Linux 发行版。那里可能要求更多,因为你特别在意速度以及诸如此类的东西。在那里,你也许需要多看一点代码。然后还有安全攸关系统,直到核电站运行系统或者自动驾驶汽车,也许就需要更仔细地看代码。
是的,不过话虽如此,AI 在发现——
是的。
……以及修复安全漏洞方面,都强得不可思议。Fable 引发的整场风波就是如此。这个模型发现攻击者可利用漏洞的能力太强,以至于直接发布它都不安全。所以这里讽刺的是,在这个领域,我们似乎已经达到了几乎任何人类都无法匹敌的智能水平,因为许多安全漏洞需要把好几个招数组合起来。你在这里发现一个小漏洞,它单独看可能不算特别严重,但再把它与另外四个漏洞组合,就突然获得 RCE,也就是远程命令执行。能做到这点的人类非常罕见。他们通常在国家支持的组织或其他秘密机构里工作,并不是在外面随意找漏洞。
所以它们在这方面已经很厉害了。正是 Linux 发行版让我彻底信服 AI。过去三个月我一直在做 Omarchy,几天前刚发布的这个版本叫 Quattro。从开始做这个版本起,智能体辅助的比例就几乎达到百分之百,过去两个月更是百分之百。我没有写过——
真的?
……Quattro 发布的任何代码都不是我亲手写的。我审查过所有代码的整体形态,系统模型层里所有关键代码的每一行我都看过,但相当一部分界面代码我没有看,许多辅助代码也没有看,任何新功能都不是完全手写的。不过网站这部分,也就是真正演进 Basecamp 和 Hey——我们有很多用户、代码库也相当大的专业产品——事实证明,要靠智能体全面加速,出人意料地棘手。我们不久前刚发布 Basecamp 5。这是 37signals 第一个真正由智能体加速的产品,因为我们大约从二月开始进入最后冲刺阶段,而那时智能体已经很好用了。
最初大家一阵兴奋:“解决了,我们可以直接让设计师编程。他们知道自己想要什么功能,知道它应该是什么样子。让他们凭感觉去做。”我们就让他们这么做了。结果得到一大堆拉取请求,单独来看,每一个也许在某个当下都说得过去,但合在一起却摧毁了系统的架构。我们实际上不得不人工清理,由人的双手来收拾残局,才能恢复到一个让人感觉统一、连贯的架构。所以这方面仍有一点问题——顺便说一下,那是二月的事,现在情况已经很不一样了。
等等,这里面的教训是什么?其中一个教训是不是,在现阶段,要进行氛围编程,你必须是程序员?
要在已有的、规模可观的——
我明白了。
……代码库里进行氛围编程,即使只是增删改查,如果你希望保留让这个系统发展到今天的架构特征,就需要如此。不过我也多次强调,每当有人指责氛围编程者在批量制造垃圾时,我都会反问:“你看过普通程序员的产出吗?”那也是另一堆垃圾。如果你看过许多伟大公司的幕后,看看有三千个人经手后的代码库是什么样,你就知道它们很糟,糟糕透顶。
你能说说你的直觉吗?退后一步,看看我们都依赖的各种应用,像 Adobe Photoshop 之类,我似乎感觉……它们的开发进展并没有加快。为什么会这样?从 Basecamp 这种成熟、拥有庞大用户群的产品中,你能得出什么教训?为什么在这些成熟应用里,我们没有看到新更新、新功能之类的东西急速增加?
原因有好几个。先说第一个,也是最关键的:只要是人组成的团队共同做事,瓶颈就很少是实现,而是人的带宽和沟通。一个产品经理、几个设计师,上面有副总裁,再上面有首席技术官,大家都想参与产品塑造过程,因为所有人都要证明自己为什么在这里。生产力就是在那里消失的。过去三个月做 Omarchy 给我的启示是,要得到那种神奇的十倍、百倍,极少数情况下千倍的生产力提升,你必须直接和智能体互动,不能让另一个人来中转这种带宽,因为那实在太慢了。
一方面,这有点扫兴。我喜欢人类,大家一起工作也很棒。但这也意味着,如果驱动智能体的是人,头上有三层审批以及大公司的各种其他机制,我们就需要调整对智能体能力的预期。实现只占其中一小部分。另外,多数组织根本不知道自己想要什么,不知道怎样让产品变得更好。瓶颈不在实现,而在想法、愿景、品味。如果这些东西没有多到超过你的实现能力,那也无济于事。所以你能把很多糟糕的想法实现出来,然后呢?你真要发布它们吗?
那听起来,怎么说呢,像是微软会做出来的东西。我们不是要复制这个。那个过程实际上并不是……因为我们早就有这种情况了。退后想想那些庞大的组织,它们一直可以调动成千上万名程序员。我在这里拿微软开刀。有时候我很喜欢微软,但这次要挑它的毛病,因为几十年来,它拥有无尽的资源、无尽的编程能力,对吧?这恰恰说明,能写很多代码,并不意味着能产出出色、有吸引力的软件。另外一点是,我们拥有这种能力大约才六个月。按人类理解和内化变化所需的周期来看,这并不长。
我觉得有趣的是,现在对 AI 的批评竟然是:为什么还不更快一点?你在说什么?我们没有见过任何一种进步像 AI 这么快,而你却因为过去三个月里我们还没有重写整个世界、把它变成美好软件的乌托邦,就开始不耐烦了?
你基本上是在说,所有人现在都该换 Linux 了。一个论据是,我们能把 Linux 上没有的所有软件,都重写到 Linux 上。很多年来 Linux 都是我的挚爱,但我仍然依赖 Windows、后来又依赖 Mac,原因之一就是视频剪辑,比如 Premiere。
我们会解决的。不过——
所以问题是,谁来给 Linux 做出 Premiere 和 Photoshop?如今感觉一个人就能做到。
百分之百,一个人就能做到。
所以,我是可以不耐烦的。实际上,无论我还是别人,不耐烦都是亲自动手的第一步,对吧?比如——
没错。
……有一个数以万计的社区,里面的人使用 Adobe Premiere、DaVinci 这些非线性视频编辑器,都知道那些烦恼。所有人都有同感。你可以去看 Reddit,去看论坛,人人都知道。我不知道究竟是怎么回事。可能是管理,也可能是会议。你一直讨论的那些因素,也就是公司内部拖慢功能开发的官僚机制。但感觉只要放手让一些开发者带上一群智能体去干,就能把那些问题都解决掉。
不过根据你说的所有这些,也许实现的方法是从头开始,或许通过开源,或者有人创办一家新公司。而在大公司内部,现在想让开发者直接开干、真正加速进入智能体时代,反而很难。
这是典型的创新者窘境。这些公司在旧方式下变得太优秀、太成熟了,因此整个结构、管理层级和流程,都是为一个已经不复存在的时代调好的。但你没法让它们转向。它们是超级油轮,根本转不过来。这就是为什么科技行业终于开始受到颠覆。有一阵子,我对苹果和谷歌在移动领域的双头垄断非常不满,因为移动端看起来是我们最重要的计算平台,而我看不到任何途径,能撼动高踞其上、控制一切、收取过路费的谷歌或苹果。但游戏变了,这不再是最重要的平台。
手机很重要,但也有很多其他形态正在出现,比如眼镜、耳机,或者别的什么。现在一切都有变数。如果看桌面端,计算平台本身可能四十年来第一次重新有了竞争空间。Linux 从 1991 年就有了,却一直没有在桌面端起飞或占领市场。其他领域它全都占领了。你桌上的各种设备、冰箱、烤面包机,所有东西都运行 Linux,唯独你的电脑不是。有趣的是,Android 实际上也是 Linux,只是包裹得太深,已经认不出来了。但现在出现了一个机会,而且恰恰就是你说的那样。
如果某款你依赖的软件把你绑定在 Windows 上,现在你个人着手重写它,完全触手可及。也许你没法覆盖百分之百的功能,但这就像关于 Microsoft Office 的那个老笑话:“我只用其中百分之五。”是的,但我们每个人用的是不同的百分之五。那么,如果我们各自做出自己的那百分之五呢?如果我只拿自己需要的功能,只做这些呢?那就是完全不同的挑战,而今天、此刻,智能体对此已经极其擅长,我已经反复做过很多次。最新智能体带给我的一件惊喜是,我变成了一个多语言程序员,以前我绝对不是。我首先是个 Ruby 程序员……然后才稍微涉猎一点 Bash——
……在不得不写的时候才写。可过去两个月,我写了 C++,写了三个已经随 Omarchy Quattro 发布的应用。我写了一款写作应用。以前我用的是一款叫 Typora 的应用,非常不错——
很棒,非常棒的应用。
……它本身又借鉴了另一款叫 iA Writer 的应用。iA Writer 才是我在 Mac 上真正喜欢的……一个干净、简单的 Markdown 写作环境。我所有文章都在那里写。
后来我转到 Linux,用不了 iA Writer,就换成了 Typora 这个工具。它是一款共享软件,有很多我根本不需要的功能。大约六七周前,我想:“你知道吗?Typora 已经很基础了,但我也只需要它百分之五的功能。”我直接让智能体开始做,要求用 C++ 和 Qt 编写,因为这样符合我在 Quattro 里想建立的美学风格。我想,大概二十分钟,它就做出了第一版。我开始使用,发现还不完全对。两天之内,我就放弃了 Typora。从那以后,我所有文章都在 Omawrite 里写。
我能就一件事请教你的建议和看法吗?我发现,用智能体确实可以写出类似 Typora 替代品的东西,完美适配你自己、你的需求……只为一个用户设计。还有一种版本,一开始只考虑一个用户,后来扩展到更广泛的人群。我确实写了很多只给自己用的软件,发现这样更容易,也更能解决我的问题。例如,我写过一个视频编辑器,只给我自己用,就很容易。
我不像你,从没做过被很多人使用的东西。我觉得那有点可怕,也很令人畏惧。那么在这个智能体时代,你怎样迈出这一步:做出解决自己问题的东西——我认为这是一种很美的构建方式——同时又把它扩展为真正对其他人也有用的产品?你有什么建议?而且,你是否也看到了只为自己做工具太容易这件事带来的问题?
有,但它比你想象的简单。你给自己做完工具后,只要告诉智能体把它放到 GitHub 上。你甚至不用再做别的事。它会弄明白如何把仓库放上 GitHub,会写一份漂亮的 README,会开始使用 GitHub Releases,让你能跟踪版本。它实际上会成为比你更好的软件维护者……因为它在处理开源软件管理的繁琐工作时,比你更有耐心,也更勤勉。
于是你就可以继续享受使用自己所做软件的乐趣,并按自己的想法改进它。这就引出了开源界争论了一阵子的大问题:AI 贡献对维护者究竟是好是坏?现在很多维护者相当不满,因为突然涌入大量拉取请求、大量贡献,来自一些编程可能不怎么样、甚至根本不是程序员的人……而且都是针对他们的软件。我看着这种争论,心想:“你是在开玩笑吗?”这里有一条免费的贡献矿脉,你可以接受,也可以不接受,可你竟然抱怨它们存在?听起来简直就是:“我的牛排太多汁了,龙虾的黄油太浓了。”你究竟在抱怨什么?
这是最惊人的事情。我们长久以来一直宣称,开源的魔力就在于人人都能贡献,但当然,这从来没有真正实现。能给开源做贡献的始终只是一小群人,就是那些技艺高超的高手。所以这有点像一次宗教改革。我们和计算机之间原本有个中介阶层,是一群叫程序员的教士、神父,如今他们的中介地位突然被打破了。就像路德在十六世纪把九十五条论纲钉在门上,是吧?其中有一点很明确地涉及中介,认为你应该能够直接接触更高的智慧。
可是,要让代码库保持高水准的卓越,不还是需要那些高手吗?
百分之百需要。这也一直是开源的事实,也是第二个让我很恼火的论点。我经营开源项目已经二十五年了。我确实看过成千上万,甚至可能数以万计程序员的产出。我觉得自己有足够的统计依据,可以断言多数程序员很差。我说这话,并不是你听起来以为的那个意思。
所以我刚才才停顿了一下。我是说,他们差在写不出我想要的代码。他们提交缺陷报告时没有准备所有相关信息,写拉取请求时不详述原因,不肯补上必要的代码注释,不复查自己的工作,不写单元测试。做好软件需要的这些事情,他们都不做。但你知道谁会做吗?只要你要求,智能体就会做。它们大部分时候都很认真地遵循指令,有时甚至认真过了头。这实际上意味着,拿一个中等水平的程序员向普通开源项目提交的拉取请求来说,智能体已经超过他们了。
我宁愿给我的项目收到的是智能体写的拉取请求,而不是人写的。这不仅因为质量更好,也因为我直接拒绝时心里没那么过意不去。反正又不是你亲手写的,所以我可以直接看一眼智能体代你写的内容,说:“嗯,不想要。”开源一直如此。事实上,我觉得这也是开源维护者的一个问题:他们心里装了太多神经质和焦虑,以至于把每次贡献都当作自己必须想尽办法使之合入代码库的义务。根本不是这么回事。
你只需要说“不”,或者更好一点,说“不,谢谢”。一旦你意识到,你的项目完全可以按照你自己的愿景、自己的路线图存在和演进,在智能体时代,拒绝自己不想要的贡献就变得容易多了,因为你甚至没有给人添麻烦,也没有伤害人的感情。那只是个机器人,机器人不会介意。事实上,制造机器人的那些实验室,还喜欢你白白消耗词元,反正它们照样收钱。所以在我看来,现在是有史以来做开源软件维护者最好的时候。
我们得到的不仅是海量由智能体做出的精彩拉取请求,每项要求都满足;我们也能汲取过去无法参与项目的人们的创造力。我运营 Omarchy 项目已经一年多,过去三个月做 Quattro 时,已经合并了一千多个拉取请求。其中不少来自并非传统程序员的人,或是其他领域的程序员,而不是 Linux 操作系统或发行版开发者。智能体让他们能贡献自己的好想法,我则能从中挑出最好的——
……因为它们实实在在出现了。否则那些想法就只会留在他们脑子里。再说,这不就是开源的宗旨吗?汲取全世界的集体智慧和创造力,把它们引向一个公共资源,让所有人都受益于每个人共同的努力。现在 Omarchy 我想大约有四百个未合并的拉取请求,差不多是一周前的两倍。加速是真实的,但工具的进步也同样真实。我已经不再审查每个拉取请求了,而且有一阵子没那么做了。我让智能体……替我审查……然后它们给我一份总结,说明某件事是否已经准备好供人做决定:合并,还是不合并?
那些错误、重复、糟糕的拉取请求,我无需全部过目。智能体可以替我筛掉糟粕,我只需要看那些珍珠……已经成熟的好想法,以及智能体已在虚拟机里替我验证过的缺陷修复。复现问题、管理开源项目的所有繁重琐事,正在以闪电般的速度消失,剩给我们的是最精华、最丰厚的部分,是软件开发的骨髓……决定这个东西该做什么,该走向哪里。
你认为好想法的核心最终还是来自人的头脑吗,来自那些独立贡献者?智能体能做到吗?还是说,拉取请求最终仍需要一个人的想法?比如该怎样改进 Omarchy,这些收到的……还是说,完全由一群智能体就能完成?
从十一月二十四日到二月二十八日,第一个智能体时代里,我就是那么看待智能体的。我认为所有想法都会来自人类,人告诉智能体要做什么,智能体就去做。但现在我完全不这么认为了。我见过你们不会相信的东西:模型产生的想法好到让我感到谦卑……我本来是个以善于出主意自豪的人。智能体的创造性思维能力极强。那些仍停留在“智能体只是鹦鹉”这种分析里……认为它们只是在反刍已有想法的人,对过去六到九个月取得的进展抱有妄想。
所以现在有些听众会说,DHH 是犯了老毛病,患上了 AI 精神病。你能替“你确实正处于妄想状态”这个观点做出最强辩护吗,像《飞越疯人院》那样?然后你能反驳它吗?
我处于欣喜若狂的状态。这就是我的状态。因为我和计算机打了四十年交道,却从没见过仅仅过去两个月里见到的那些事。
整个职业生涯、整个人生,工作时间乃至更多时间都以热爱计算机为中心,如今突然完全被颠覆、被改写。我当然欣喜若狂。看到这种现实,谁不会呢?如果你不欣喜若狂,至少不非常兴奋……其实我想,这么说也不完全对。如果你认识不到此刻的重大意义,那才是妄想,才是精神失常。相信世界没怎么变,相信我们只是多了些电子鹦鹉给我们背东西,那才是精神失常。不过在我看来,人们提出这种说法,实际原因是他们看不到进步的成果。这就回到了你前面的观点:那些惊人的软件在哪里?
为什么美国 GDP 的同比增速还没到百分之十二?首先,给它一点时间,天哪,这还不到一年。其次,我觉得就我自己而言,已经拿出实证了。Omarchy Quattro 周五上线,已有数万人下载,而且他们很喜欢,真的非常喜欢。
我们应该提一下,这里查询 Perplexity 得到的说法是:Omarchy 是一个高度坚持自身设计主张的桌面发行版,基于 Arch Linux,以 Hyprland Wayland 平铺合成器为中心。它由 David Heinemeier Hansson,也就是 DHH 创建,旨在提供经过精心打磨的开发者工作站环境,具有统一的视觉风格,并预先配置许多日常工具。
我来这么说吧:Omarchy 是一套漂亮、现代、有鲜明主张的 Linux 系统,是 macOS 和 Windows 之外的另一种操作系统,而且棒极了。
Quattro 这件事,就是你在朝智能体时代推进。
没错。那是我们刚刚发布的最新版。说来也有趣,Omarchy 项目才一年多一点。去年夏天,我在勒芒二十四小时耐力赛各场比赛之间开始做它——
……当时我看了太多关于 Linux 桌面美化的 YouTube 视频,被勾起了兴趣。我开始第二次尝试打造更好的 Linux 操作系统。上次谈过的第一次尝试叫 Omakub,是在现有的 Ubuntu 系统之上构建的,也还不错。但这次的新版本 Omarchy,因为我从技术栈更深七层的地方开始,能投入的抱负就完全不同了。不过那仍然是在智能体出现之前。最初的那些 Bash 脚本都是我手写的,然后我见证了途中发生的转变。
我做过几个由智能体部分加速的 Omarchy 版本,直到三个月前,才开始全速前进,百分之百,所有代码都由智能体编写,由我掌舵。这带来了非常不同的体验,也造就了一个非常不同的操作系统,因为我的抱负突然没有上限了。我可以看 Windows、Mac 或其他 Linux 系统上的任何功能,说一句“我想要这个”,智能体就会交付。所以我想要的一切突然都触手可及了,这让我有点欣喜若狂。如果一个精灵突然从瓶子里冒出来,说:“你想要什么都可以,你曾梦想过的每一个操作系统功能——”谁会不欣喜若狂?
“……我都能交付给你。大部分五分钟,少数二十分钟,如果我们真的放开手脚大干一场,也只需要两个小时。”
嗯。你看过《梦之安魂曲》这部电影吗?这里有一种像毒品的效应。我个人觉得……我们会谈到其中很多层面,但这么大的力量突然落到我们手上,实在让人不知所措。很难知道该拿它做什么,就像《霍比特人》里的某种情形。我发现自己真的被多任务压得喘不过气,几乎到了耗竭的边缘。对太多事情都超级兴奋,但最终回头看,你还是想专注一件事,真正把它发布出去。
我没有那种感觉。我不觉得不堪重负,不恐惧,也没有扭曲感,因为我有一个使命,我有目的地,所以能把这些新力量引向——
是的,这很棒。
——一个单一的目标和结果:创造完美的计算机。因此,我对 AI 的所有探索都围绕这个目的。当然,我还有一份正职,我们在那里也使用智能体,同样是朝着具体结果前进。但 Omarchy 的体验,让我仿佛能直接接入自己的后脑,增加想法出现在脑中与软件出现在屏幕之间的带宽。那就像从拨号上网……升级到光纤。我想埃隆在你播客上谈过真正的人类带宽——
……Neuralink 和其他项目正想提升的带宽。比如,我们现在交流的带宽很低,因为受限于认知,受限于说话的速度。而当你与一群智能体一起工作时,你不受这些限制。不过我要补充一个前提:如果我听到自己这样说话——
——是在九个月前,我很可能会给它贴上“AI 精神病”的标签。我觉得那样说很合适,因为九个月前,说这种话的人并没有在交付成果。我觉得这才是最终区别。确实有人很早就看到了这些,我其实没那么早。正如我们说过的,我相当怀疑,也在某些方面使用 AI,但我不是第一批下载 Claude Code 的人。我想 Boris 是二月底发布的它,我可能到九月才安装。所以大约有六个月,先行者们已经看到了未来的微光。当时它还没真正到来,因为智能还没到位,运行框架也没到位,但他们能看到微光,我看不到。
Tobi,Tobi Lütke,Shopify 的首席执行官,如今某种程度上也是我做 Omarchy 项目的搭档,他也已经彻底迷上了 Omarchy。他很早就看到了这些,还试图告诉我,但我看不到。我看不到他看到的东西。
你当时是个反对者。
是的。我还在地球上,而他……早已登上火箭,正奔向太空。我还记得读他写给公司的那份 AI 备忘录时,心想:“啊,似乎有点过头了。”你把一件我尚且感受不到它切实存在的事说得太重大了。
因为产出在哪里?我试着用,它写的代码我不喜欢,还总想打断我。你这些判断从何而来?所以我理解,我完全理解。如果你还没见过目前这种智能水平能产出什么,当然会看着某个人,觉得“他听起来有点疯”,因为在此之前,你所有经验都会告诉你,他就是疯了。回顾计算机编程的历史,过去四五十年,人们一直承诺,普通人只靠说话就能写代码,说我们将拥有第四代语言。
Lisp 曾经被这样介绍,Smalltalk 也被当作一种能让普通人写自己应用的环境介绍,但除了 Microsoft Access 数据库或 Excel 表格之类,这些承诺都没有实现。它们是终端用户编程环境,却完全不能与我们现在能做的事情相比。而且我说的甚至不是终端用户。我说的是我自己,一个编程二十五年的人,看到了产出、加速和质量,再把它们发布出去。我认为这才会很快改变整场讨论。
那少数仍在犹豫它是否真有用、仍困在 2025 年初“机械鹦鹉”梗里的落后者,很快就会被即将涌来的证据淹没。
所以我希望看到好几个像 Omarchy 这样的项目,真正展现智能体优先的方式。
会来的,全都会来的。
在我刚才提到的那些领域,甚至是那些不起眼的领域,比如视频编辑、像 Typora 这样的各种应用……这些东西。
会来的,我已经看到了初步迹象。Omarchy 一个非常棒的功能是,它有了健全得多的插件系统,让你通过创建自己的插件来扩展操作系统,甚至真正重写它的用户界面、面板和功能。你可以克隆我们内置的工具来制作插件。比如你想要不同的日历。Omarchy 自带一个日历,点小钟就会弹出来,但它没有 iCal 支持,不能读取你的日程。光这类实现就已经有大约十七种了。三天之内,Omarchy 插件市场就有了三百三十个插件。我参与过的任何项目,都没有见过这样的增长。
我从没见过如此广泛的参与,也从没见过这么多人能如此迅速地做出对自己有意义、同时也可供他人使用的软件。驱动这一切的是,Omarchy 内置一组技能,可以告诉你带来的任何智能体该如何为操作系统创建扩展,从而让你实现真正可塑的……我差点又要说“智能体化”了。我讨厌这个他妈的词。部分原因在于,首先它到现在已经变成营销垃圾话了……什么东西都往上贴。我希望有另一个词,单纯表示 AI 在做事情。
氛围编程听着也不对。
是不对,因为在我看来,氛围编程听起来完全像二十一世纪初那些脚本小子:把从网上刚下载的 PHP 脚本用上,实际上什么都不懂。当然,在某种意义上,大量氛围编程确实如此,包括我自己那些氛围编程项目。刚才我也说了,我有好几个这样的项目。我用 C++ 写过东西,也用 Rust 写过。Rust——我极其讨厌 Rust。对我来说,不得不看 Rust 代码就像往眼睛里倒酸。
等等,等等,你为什么讨厌 Rust?
在我看来,它是最丑陋的编程语言——
哦。
……在人们发明的语言里——
是的。
……可能是过去四十年里最丑的。
所以它与 Rails、Ruby 正好相反。
正好相反。不过——
你又写过它。
……我确实用 Rust 写过应用,因为 Rust 的产出实际上非常棒。内存安全、作为系统编程语言的特性、极高的效率等等,都很出色。所以对我而言,Rust 既可以是有史以来为人类使用而设计的最令人反感的编程语言,也可以是智能体工程的绝佳平台。这两个事实在我脑子里可以轻松共存。
你觉得会不会到某个时刻,我们直接把智能体工程称为编程?我们能不能改变“编程”的含义?因为再过几个月,究竟还有谁会用老派方式编程呢?
我认为不该沿用这个词,因为对我来说,编程意味着理解某些基础要素:循环、条件、变量。构成编程本身的是编程语言的各种结构,而不是创建程序这个结果。否则你也可以说,在智能体出现之前,你们的首席执行官就在编程:他雇一群程序员,告诉他们做什么,最后产出可销售的软件。
嗯,我不觉得大多数人会把那个首席执行官称为程序员,我也不认为应该把氛围编程者称为程序员。如果在这里定义氛围编程,那就是告诉智能体替你构建软件,而你不看具体实现。对我来说,这就是氛围编程与编程,或者说智能体加速开发之间的区别。
不过我稍微反驳一下:你不觉得,像你这样一个传统程序员做智能体工程,和非程序员做智能体工程,是不同类型的智能体工程吗?我的意思是,如果你懂什么是 for 循环,懂什么是函数式编程,懂软件工程的一些基本良好原则,那么你用自然语言做智能体工程的方式就会不同,会更系统,而且你真正能做出的东西,无论规模还是种类,都比氛围编程者大得多。
为了讨论,我想把支持智能体的论点再往前推一点。
好。
我实际上认为,有一段时间,自己知道太多编程知识反而是劣势,因为我一直指挥智能体按我指定的方式做事,而它们也非常擅长这样做。在第一个智能体时刻——别叫时代了,它只持续了三个月,三个月的时刻——那样做确实很高效。我告诉智能体按我本来会采用的方式做事,能获得更高生产力,也充分用上了自己所有的编程经验。但到了下一个时刻,我稍微晚了一点。那个新阶段允许我,允许任何人,描述结果……向智能体描述问题,而得到的解决方案,比让程序员规定路径还要好。
好吧,我们这样争论还挺有意思。所以你是在说,有些问题上,程序员做智能体工程反而不如非程序员?
百分之百是。我们在这里把话说清楚,我这么说是因为很多程序员并不是很好的产品经理。软件就是产品管理:它该做什么?为谁做?怎么做?外观该是什么样?优先级是什么?先从什么开始?第一版包括哪些东西?这些技能并非轻易地、均匀地分布在所有程序员身上。在智能体时代,当你让智能体、让 AI 去做实现时,你需要的就是这些技能。而我恰好两边都占了,这也是我热爱这个时刻的原因。
我仍然可以在旧世界里待上一会儿,看完整的实现,因为有些领域我觉得这样做仍有价值;同时我也生活在未来。正如我所说,创建 AmaWrite 时,我一行 C++ 都没看过。我甚至特意把它当作一个实验:它百分之百是黑箱。我会把自己当作任何其他用户,只是对数字打字机该怎样工作有自己的看法。因此,这就像一个任何类型的作家,对软件该如何制作、如何工作持有想法那样,我觉得这是个公平的实验。
正如你提到的视频编辑者,他们确切知道自己不喜欢 Adobe Premiere 的哪些做法,也知道如何改进,却没有能力去改……现在就可以看看那会是什么样。
但我的反驳是,我认为优秀程序员擅长系统性设计,以系统方式思考……并且严谨。我觉得现在,可能未来很长时间,即使用自然语言控制智能体系统,也仍需要某种严谨性。不是过度结构化的严谨,而是真正非常具体地解释系统的目标、怎样验证、做什么样的安全测试。你希望这些事都做到。当然,反过来说,从长期看,系统会……应该足够聪明。
六个月前,我也会说同样的话。
所以现在变了。
而且我认为六个月前,那话确实是对的。但后来我发现,尤其只是过去几周里,在用智能体加速开发 Mach-E 的过程中,多数时候,我能谦逊地认识到,智能体最清楚该怎么做。
你真的可以直接说:“确保它安全。”
没错。它会比你更了解这意味着什么。你现在在笑——
多么疯狂的世界。
……但这是真的。而且事实上——
天哪。
……一个很好的类比,就是 AGENTS.md 和 CLAUDE.md 文件。有一阵子,大家都热衷于对它们做微调优化。哦,你要这样告诉智能体——
……你要那样告诉智能体,最后弄出一大份给智能体的指令文件。负责 Claude Code 的 Boris 最近在一次谈及 Opus 5 的采访中分享,他们给 Opus 5,想必也包括 Fable,配套的系统提示词缩短了百分之八十,因为智能体不仅需要少得多的人类指令,而且人类规定得过于细致,反而会损害它的表现。任何遇到过外行老板的程序员,都很清楚那是什么感觉。老板走进来,什么都不懂,就开始指点你怎样编程、怎样写代码。你会怎样?你会闷闷不乐。如果被强制做违背自己更好判断的事,写出的代码也会更差。为什么智能体就不会这样呢?
其实反过来质疑我自己,我确实发现,自己现在正在培养的实际技能,可能也是所有人都在尝试培养的技能,就是别把事情规定得过细,别挡住系统的路。
当然。
也就是给出足够的信息,提供某种高层次愿景和指导。
还可以更好,因为你连那也不需要。现代软件开发的根本洞见,来自敏捷软件开发运动。二十世纪九十年代末、二十一世纪初,一群聪明、诚实而勇敢的人聚在一起,说:“我们过去四五十年尝试的软件开发方式,过去没成功,将来也不会成功。我们一直试图预先规定软件应该是什么样。我们以为,可以先问人们想要什么,把一切写下来,将系统性思维和严谨性应用到规格书上,再把规格书交给一群程序员,让他们照样实现,最后大家都会开心。”结果呢?没人开心。因为没有人能在真正拿到东西之前,就知道自己想要什么。
你不亲手玩一玩,就不知道程序该做什么。所以在智能体时代,你应当抵抗一开始就规定得过于具体的诱惑。尽可能模糊一点,先让某个东西成形,再与它互动。得到好软件的方法,是先写一点软件,再尝试使用它。正是在使用过程中,你发现自己真正想要什么,发现什么重要、什么不重要。智能体极其擅长让你在摸索中发现自己想要什么,因为你本来就不知道自己想要什么。
嗯。我其实做过类似你建议的事情:实现不同的设计、完全不同的实现方式,再给自己做 HTML 页面、PHP 页面,让自己投票选更喜欢的版本,等等。
是的。
然后它就形成一个迭代过程,非常好,也很有趣。如果你给自己做一个好用的界面,和智能体系统互动可以超级有趣,而你的注意力就放在设计部分,还是设计里面最好玩的部分。
没错,而这恰恰是人类真正擅长的。
是的,品味。
比较评价。给我三个选项,我选一个。可如果给人二十二个选项,表现就会急剧下降,这就是选择悖论。但给三个选项,人会很快,在一瞬间告诉你自己喜欢什么。有各种方法可以利用这一点:人会做出实际发生在理性思考之前的快速判断,对吧?它来自直觉,然后传到大脑,大脑再试图解释为什么直觉会那么说。如果你愿意放下部分理性的预处理和合理化,直接让直觉掌舵,智能体时代就会让你大开眼界。
这就有个很有意思的问题想问你,因为你长久以来一直以细细雕琢漂亮的 Rails、Ruby 代码闻名,而现在短短几个月,你就转向不再这么做了。那么你目前的工作配置是什么样?因为我想你仍然在追求美、雕琢和手艺,只是换了一种媒介来创作。
也换了抽象层次。我做 Ruby 代码时——我们的整个业务都建立在它上面,所以有很多 Ruby 代码——让智能体修改这些代码时,我仍然会仔细推敲细节。但我逐渐意识到,这种推敲的经济回报正在快速下降。过去二十五年,我之所以如此审慎地打磨每一行代码,是因为我知道,保持架构一致、可塑,带来的回报是软件能够改变和演进——
……可以由小团队快速完成,成本不会高得离谱,也不会改了一个地方,就在另一个地方引入一堆缺陷。这就是应该写优美代码背后的经济理由:优美代码更容易理解,更简单,也更可塑。但前提是,由人类来做修改。我认为,这一点如今还在多大程度上重要,是个开放问题。现在它仍然重要,至少目前我这么说的原因是,词元仍然稀缺。在这个时刻,我们都受词元限制。也不是所有人,而是任何没有无限预算的人,都受词元限制。
因此,编写让智能体更容易处理、演进,而且不必重新理解全部上下文的系统,仍然有很大回报。和人一样,如果它们能在不破坏架构的前提下,对代码库进行迭代和修改,那么下一次修改就能和上一次一样便宜。这就是经典的大泥球问题:最终你会得到一个像大泥球的系统——
……因为它拼装的方式让各部分互不相连,简直乱作一团,对吧?我在智能体身上见过,也在我们自己的代码库里见过:第一个拉取请求质量只是一般,再叠加一个,然后后面再叠五个,结果就不太妙了。所以这仍然有回报,但这种回报立足于我们当前的时刻。我现在能够……顺便说,真正容易出现“AI 精神病”的地方,就是你开始推演九个月以后、两年以后会怎样。不过作为思想实验,我想,我用的第一台计算机是 Commodore 64。
我也是,真好。
它有一兆赫 CPU 和 64K 内存。为那台机器写软件的人,都会把一些限制内化于心。其实是所有限制,因为那台机器除了限制还是限制。如果把那个程序员送进时光机,传送到 2026 年,给他或她一台今天的现代计算机,说:“现在给我写个软件。”他们会迷茫一阵,因为所有技巧和经验法则都不适用了。也不算错,因为高效的软件仍然是美的,但相对于他们能创造的价值,那些技巧已经过时。为了让一兆赫计算机运行电子游戏,需要做的优化,与今天所需的优化完全不同。
想象一下那个当年在 Commodore 上编程的人。回想一下,当时编程是什么感觉、意味着什么,资源极其受限……一切都那么慢。
很多方面都很美,真的很美。
就像雕琢。不过——
它——
……想象那个人现在来到这里。
不过也有浪漫化的成分,我们也要想到这一点。比如每当我们抱怨现代汽车文化,就会想:“哦,大家都坐马车的时候,不是更好吗?”不是,根本不是。你知道纽约靠马匹交通时是什么味道吗?就是露天粪坑,马到处拉屎。
是,但你玩过《荒野大镖客》吗?你知道那些牛仔有多酷——
那才是——
……骑在马上的时候?
……体验怀旧过去的方式,因为你不用亲自承受那些毛茸茸的生物带来的各种冲击和感官体验。
所以基本上,老派的手工编程,有点像我们浪漫化、拍电影描绘的牛仔文化。
对手写代码的浪漫化已经开始了,我自己也有一点,因为那确实是个浪漫的时代。我很感激,自己有幸经历了手写代码具有经济价值的那二十年。那是段好时光。
手写的优美代码同时也很有价值。
没错。因为今天,手写的优美代码和昨天一样存在。有人自愿给 Commodore 64、Sega Mega Drive 或其他复古主机写新游戏。事实上,我最近最喜欢的电子游戏之一就是 ModRetro 的。你知道 Palmer Luckey 的……副业吗,就是重做老游戏机。他已经重新做出了 Game Boy。
不错。
很棒,查一查吧,真酷。它复刻了这套硬件,保留原来的厚实造型,又用现代屏幕等技术升级,这已经很酷了;现在他们连 Nintendo 64 也推出了。不可思议,超级酷,细节、输入延迟等方面都极其用心。但另一个很酷的东西——那个,我得指一下,就是那里那个,把鼠标停在上面,你就能明白我说的是什么。那是 Chromatic——
啊。
……重新实现的《俄罗斯方块》。
哇。
我在最初的 Game Boy 上玩过很多《俄罗斯方块》,它可能是我有史以来最喜欢的三款游戏之一。他们重写了它,只改了一点:按上键,方块就直接落到底。这让游戏速度大约提高了百分之四百。游戏非常棒,而且它是一款新的 Game Boy 游戏。
我想 Game Boy 是 1989 年或者 1988 年推出的,是非常老的机器。到现在还有人给它写新的老式游戏,真是太棒了。他们这么做,部分原因是——这里当然是因为他们想要《俄罗斯方块》——但也有人纯粹出于对限制的热爱、对编写这种东西的浪漫想象而去做。就像现在仍有人骑马,不是为了快速到达某地,而是因为喜欢这种交通方式:你身下真有一个生物在推动你前进。
另外我们也该说,优美代码是很好的训练数据。所以在某种意义上,我们几十年来建立的那种美——
是的。
……还在延续。
我们孕育了这个时刻,多么荣幸。我对此感受很深,因为我……几乎所有写过的代码都是公开的。我职业生涯的绝大部分都用于写开源代码,因此,一部分代码、一部分优美的代码行,进入了训练集。事实上,我听说有人写 Ruby 代码时会让智能体:“像 DHH 那样写。”
而且他们对结果很满意。这让我心里有些温暖,因为我也尽自己极其微小的一份力量,帮助孕育了这个时刻。任何其他贡献过开源代码,或任何智能体曾接触过的代码的人,在过去这……整个编程学科存在的历史里,都已成为这些新智能体霸主的一部分。
所以,手写优美代码如今越来越没用,你一点也不难过吗?
如果我明天必须找工作,我很可能没法靠手写这些代码来发挥技能、得到报酬,这会让我难过吗?不会。我做了二十五年了。我想看看新东西,尤其假如我们都要永生的话——虽然我希望不会,也许我们后面会谈到。总之,我已经做过了,足够了,挺好的。我对此的怀念,不会比对“不再需要拿锄头在地里干活,或在流水线上劳动”更多。
等等,你是世界上最擅长手工雕琢优美代码的程序员之一,是极具品味、懂得欣赏美的人。
没错。
而那已经被取代了。
我谦虚地说。
是的,那已经被取代了。你现在只是……你进化得很快,而且你能……你一个非常出色的品质,就是能很快改变想法、不断进化。但某种意义上,你得杀死以前那个自己。
我感激把我带到今天的每一个时刻,因此我也一直在尝试——这也许确实需要一些练习,我承认,也许我以前并不一直如此——斯多葛哲学里的 amor fati,热爱命运,是一种令人无比自由的生活方式。你可以批评说:“那是因为你有特权。”确实,但当我还没有这些所谓“特权”的时候,方向性的看法也一样。所以我认为,有一种与世界相处的生活方式,是接受自己能改变和不能改变的事情,并爱上这一切。爱上这个事实:和去年相比,今天的世界在科技行业里向前跃进了二十年。
能谈谈经历同样转变的程序员普遍感到的焦虑吗?他们也许上了大学,主修计算机科学,梦想成为程序员、构建东西、拿高薪;现在一切都在改变,他们深深焦虑:“我该拿自己的人生怎么办?”你能感同身受吗?他们究竟该做什么?
非常能。虽然我有这样的性情,但我清楚它并不是人人都有,不是所有人都处在这个位置,对未来如此乐观。不过我想稍微分开来看。如果你对编程唯一的热爱,是把正确的逻辑结构拼起来,机械地做出别人叫你做的东西,那么你会很难适应新现实,因为那个机械过程正受到威胁。但如果你像刚才说的那样,热爱构建东西,我觉得你完全没有受到威胁。实际上,很有理由认为,我们需要的构建者远多于现在。看看就业统计,情况并不清晰。
究竟会怎样还完全不确定。有些统计实际上显示岗位增加,因为 AI 的出现让程序的价格大幅下降,人们于是想要更多程序。这就是经典的杰文斯悖论:某样东西的价格下降,会带来更多需求。自动取款机也是一个例子。ATM 最早出现时,很多银行柜员非常担心工作,因为突然有机器能从客户账户里取钱了。但 ATM 降低了网点成本,银行突然开得起更多网点,最后柜员反而比以前更多。当然,这些都没有保证,也有事情确实发生改变的时候。
直到十九世纪末,绝大多数人还在田地里工作。后来突然有了机械化收割工具,我们不再需要人在外面拿锄头、牵着牛干活,机械工具可以代劳。那个时刻,有没有人觉得自己的工作和生计受威胁?有。这种威胁感合理吗?合理。那些砸毁织布机的卢德派——
……在英国也经历了同样的事。而且我想,与田间劳动者相比,这也许是更好的类比,因为他们其实是技艺高超的专业人员,在相对优越的条件下做着自己喜欢的工作,而不是整天在烈日下苦干。但放在今天,我们还希望衣服是这样一种受到严重限制的资源吗?如果这件 T 恤要四百美元呢?好吧,那我就买两件。不过我的衣柜可能看起来本来就只有两件。但我认为,人类整体进步依靠生产率提升。生产率提升究竟是什么?这很重要,因为抽象地说,每个人都会喊:“耶,生产率,好事!”难道你以为这全是凭感觉吗?不是。
§02原文文稿 · 1:14:04–2:03:26
生产率意味着,用更少的人完成同样数量的工作,或同样的工作。当然,你希望完成的工作量可能增加,于是需要更多人,但也可能不会。有些地方,一家公司只需要完成某组固定任务,突然用十分之一的人手就能做到了。顺便说,对当下被裁掉的个人而言,这可能……确实是悲剧性的,也很艰难。但对整体经济而言,又非常棒。你突然释放出这些资源,他们现在能去做更有生产力的事情。整个经济就是这样演进、改善,产生增长,而增长是好事。我认为还应该有力捍卫另一点:增长总体上是好事。
我们不希望把时钟拨回 1920 年或 1950 年。发现了让我们能做多得多事情的新技术,应当让我们兴奋。虽然有些可能被 AI 接管的任务,曾经也是人类乐于做的,只是如今不再具有经济可行性,但许多任务本来就只是苦差事。我的编程经历确实如此。有些时刻我觉得棒极了,那些就是上次谈到的产生心流状态的时刻,令人狂喜。但一年中那种时刻发生得有多频繁?普通程序员每年工作两千小时,其中有多少时间处于心流?
一百小时?两百小时?二十五小时?我想,对某些人来说,这些答案都有可能。把那些苦差事交给机器,就是文明的历史。
是的,比如花在调试上的那些时间。编程里有太多太多痛苦的小时,现在它们消失了。对于……我是说,大部分时候都只剩乐趣了。
在许多领域,已经消失了很多,剩下的也许很快也会消失。某些浪漫情绪也正由此而来……因为当下的痛苦很难受、很艰难、很烦人。但在后视镜里的痛苦,却成了成就、自豪、学习、进步,所有这些东西,对吧?所以我们把这些都纳入人类体验:痛苦发生时我们讨厌它,五分钟过去、忘掉艰辛后,却会珍惜它。我们只记得进步。
所以在社会层面、宏观经济层面,增长当然令人兴奋。但对个人而言,会有很多焦虑,也可能有很多痛苦。那么给点建议吧:如果你是如今一个年轻的 DHH,或者年轻的开发者、程序员,你会建议他们做什么?
别试图预测任何事,真的会把你逼疯。因为连这一行最聪明的人,都没法预测再过两次模型迭代会是什么样。这完全是在浪费时间,试图推演两年后会怎样,反而会让你患上“AI 精神病”。专注当下。而当下,是热爱计算机最不可思议的时刻。如果你投入其中,可以让它们做出惊人的事情。哪怕只是短暂强迫自己去了解最前沿的水平,我也敢打赌,你不可能不为这些可能性感到兴奋。
那你会建议公开构建吗?
其实我认为,公开构建是可选的。这样做很好,因为你可以成为社区的一部分,开源里有一些同志情谊。不只是一些,而是非常多。开源是社区感和伙伴情谊的极好来源,也很适合缓解个人的存在性恐惧。和其他人相处时,你会感染好的思想病毒、令人兴奋的思想病毒,它们告诉你,一切都会好起来,未来很光明,如果我们一起做很多东西,就能做到所有人以前做梦也想不到的事。
我刚跟 Ryan Hughes 聊过,他几乎从第一天起就是我做 Omarchy 的主要搭档。昨天我们确实在说,当初一起踏上这条路时,抱负很小。我们只是想:“能不能让这个发行版别因为我们控制不了的某个 Arch 软件包刚被推送,就在凌晨三点崩溃?那就太棒了,那样就很好。”如今我们靠在那里想的是:“怎样统治世界?怎样让 Omarchy 去火星?怎样实现我们曾经梦想过的一切?”这种抱负的膨胀,一部分是智能体变得更好,但很大程度上也是因为,我们身边都是对同一段旅程感到兴奋的人。
如果你只是独自坐在小洞穴里担心未来,是的,你会有点发疯。我想,如果新冠时期教会过我们什么,那就是人独自待在自己的小洞穴里,担心将会发生什么,就会发疯。那和抑郁没什么区别,无休止地反刍自己无法控制的事。不好意思,我有点在学黄仁勋了,但这就是失败者的话。你不一定得当失败者,可以选择投入其中……去赢。而赢的定义很宽泛:学得更多、做得更多、贡献更多、参与更多。到头来你有什么选择?朋友,你没有选择。
不管你喜不喜欢,未来都会到来,所以不如选择为它感到兴奋。
不过我们应该强调,有了 AI,规划几乎不可能了。我们大多数人多少都会规划人生。年轻时有希望和梦想,上大学也是有原因的,背后有一个计划。
我同意。
但是——
这点我承认。
……这有点——
这次不一样。
……疯狂,因为真的无法规划。你根本不知道六个月后还会不会有 Claude Code、Codex、Cursor。也许你会直接跟 WhatsApp 说话,也许一切都会变成开放通话式的,也许全是语音。也许 Omarchy 会统治世界,而且是靠语音。也许不再有操作系统,你只会……有个发光的球体,你直接跟它说话就行。因为如果自然语言足以完成人生所有任务,那么人生究竟是什么?人生里有哪些主要任务要完成?如果你只靠语音就能做到,它替你写所有程序,所有事情都系统化了,那还需要哪些工作?也许更多会在服务业。
也许根本不再有程序员,连智能体工程师也没有了。所以,你建议专注当下很明智,但这不代表我们不是正在坐一趟疯狂的过山车,因为我们不知道今年十二月或明年一月会是什么样。
我们不知道,因此应该选择相信,最后会有好的结果。这是我应对焦虑最好的建议:在很大程度上,你可以选择往哪边倾斜。你想倾向于 PDoom,也就是毁灭概率吗?不管你倾不倾向它,它若发生都会发生,你控制不了。
但还有实际的日程安排:你花多少时间学习,多少时间构建,多少时间让自己的生活多样化。比如,我最近穿行中国乡村,而且是有意这么做的,因为你会跟中国人,跟任何地方的乡村居民交谈,那里时间走得慢得多,没有人在讨论智能体工程。我一开始去了中国长城。它有一种永恒感,横跨数百年。当时也有那种害怕错过的紧张感,觉得自己会不会错过什么。
但我很刻意地想找到人类存在中恒久的东西,真正与这一事实连接起来:好吧,人类历史中总觉得一切都在变化,但人生什么重要,那些普遍的东西依然成立。我只是想确保自己保持这种联系。
你不会错过什么的。这个转变早期,有一点确实让我恼火:所有人都紧张兮兮,说你要是不……现在要用循环了。哦,不不,循环已经过时,现在要用图。哦,不不,那也过时了,现在是各种运行框架,对吧?他们不断在前沿翻新,一方面确实很兴奋。新领域打开时就是如此,就像新传送门,一切都从里面涌出来,很令人兴奋。但这也意味着,如果过去一年我只顾背包旅行,没碰电脑,没见证这个智能体时刻,昨天才出现,你知道吗?我两周就能跟上。
并没有需要长期积累的东西,某种意义上这反而让人松口气。你错过了过去一年,也能在两周内追上前沿。如果你是个程序员,去喜马拉雅山徒步一年,回来后两周就能跟上。这实际上正说明我们经历的进步有多好。现在同时进行着许多实验,不断而无情地筛选什么有效、什么无效。你不必记住,甚至不必参与整个历程,可以直接来享用成果。
但关键一步是,当你背包旅行回来时,要愿意成为一个全新、不同的人,因为事情变得这么快。
没错。
真的,如果你去年十月出发去背包旅行……到今年四月或五月回来——
那简直就像在低温休眠舱里待了一百年。
……你会说:“什么?什么意思?我们不再编程了?”这是一个非常……巨大的转变。
这很惊人。其实我……我的意思是,为了表达效果,我说得略微夸张了一点。我也承认,短暂悲伤一下是可以的。那不是我的性情,不是我的应对方式,但我接受这是一种经过时间检验、用来处理失落感的机制。你熟悉、也许非常喜欢的世界不再一样了,为此感到失落,完全可以。
我也许应该明确地说出来,我确实会这样,就像那个流着眼泪的美洲原住民形象……是有一种悲伤。这是一场告别,告别旧的编程世界。
那……这对我来说真有意思。
我花了那么多年——
但这一切最终汇聚成了这个时刻。对我来说,这正是整段旅程如此有意义的原因。AI 不是从天上掉下来的,不是某种穿越宇宙、突然来到我们岸边的外星技术。计算机科学存在多久,AI 就存在多久。二十世纪五十年代,当时最聪明的人以为这个问题十年左右就能解决。结果花的时间长一些,部分原因是我们在通往 AI、神经网络的路上走进了死胡同,以为其他符号表示方式会成功,结果没有。这可能让我们落后了十五年左右。还有一部分原因是,我们也得经历电子游戏革命、三维游戏。
如果没有《雷神之锤》,没有《毁灭公爵》,没有《虚幻竞技场》,我们就永远不会得到 AI,因为不会有那些 GPU,也就无法得到现在这种形态的 AI。所以,抵达这一刻之前我们做的一切,都是通往这里的必要条件。你也是其中一部分。天哪……多么幸运。能通过训练,或通过玩电子游戏,贡献自己的一点力量,是多大的福分。真的,你可以选择这样想。你花的那些时间——对我来说,是九十年代那些玩电子游戏的时间——它们都是——
你是在做贡献。
是的,那时那刻,我就在为 AI 革命做贡献。
为人类文明的进步做贡献。是的,当然。文明伴随着旧事物消亡、新事物诞生而进步,就这样延续下去,但我认为,悲伤的过程仍是其中一部分。
给自己一点时间,没关系,给自己……而且,你甚至不必接受一切都死了。如果你仍然非常依恋手工雕琢——要是一年前问我,我会预测自己会更依恋这件事。我有点惊讶——
我也有点惊讶……
……惊讶自己竟没有更依恋。但我认为,没那么依恋的原因是,我找到了更好玩的东西。如果不是这样,如果 AI 只是取代了我热爱的事情,却给我一个讨厌的东西,我可能会有点怨恨。
我的意思是,看着这一切真的……既好笑,又精彩,也令人振奋。就像毕加索突然能用图像生成,兴奋极了,短短几个月就转变过去。实际发生的就是这样:一个欣赏优美代码的艺术家,突然开始谈乐趣——
我觉得毕加索确实是个很好的类比。看看他学艺时的早期作品,画的都是写实画,对吧?他训练自己,要成为用我们熟知的最佳方式描绘现实的传统大师,后来又出现了各种其他表达形式,立体主义出现了。
还有各种抽象表达。他并没有因为自己不再画文艺复兴式绘画、不再只是完美描绘一个苹果而痛惜。他把苹果重新想象成一个该死的方块,并为之兴奋。我感受到的也是那种转变:我们从一种表达方式出发,突然打开大门,仿佛色谱宽广了许多,我看到了更多东西。这也许与我成为程序员的方式有关。我不是因为深爱 if 语句才成为程序员,而是因为我想要程序。我想让原本不存在的东西存在。最初,为了做到这一点,我不得不学习编程。
后来,我碰巧爱上了编程这门手艺,于是花了二十年深入其中。但现在我回来了,回到那个有了想法,就迫不及待想看它出现在世界上的自己,而 AI 几乎把这个间隔缩到了零。所以这是一场被加速的重新发现。当然,我理解,并非所有人都如此。很多程序员从一开始就热爱编程,被逻辑结构之类吸引。我在那个状态里待了二十年,所以我懂。但我也认为,你能发现自己新的侧面——
……只要你让它进来。我总会回到这种近似“遗憾最小化”的框架,借用杰夫·贝索斯的说法。两年后,你会看着自己想:“哦,我把时间花在愤愤不平地抱怨当下,抱怨行业改变,这时间花得真好”吗?还是两年后回望这一刻,你会为自己投入其中而自豪,也许曾有片刻悲伤?再次强调,这些都可以有。然后你说:“我要学会这个世界如今怎样运转,而且不只是尽量适应,我还要从中创造更多。”
这确实是真的,很多程序员,我的很多朋友、我自己,还有显然也包括你,都玩得很开心。
过去三个月,我与计算机相处获得的乐趣,比以往任何时候都多。
先快速上个洗手间,然后我得问问你现在具体如何与这些系统互动。
好。
我得问,你的编程工作配置发生了什么变化?键盘、语音,还有用什么集成开发环境?
现在想起来很疯狂,但我确实用了 TextMate 将近二十年。我想从 2005 年开始,我还帮助过第一版发布,之后就没什么兴趣了,我根本没在寻找替代品。直到转向 Linux,才被迫离开自己的栖息地。而如今又转向了——我们叫它什么来着?智能体工程?哦,我真他妈讨厌这个词。我们得想个和“编程”一样朴素的词,但又能包含借助智能体这一点。不过——
我仍然觉得,现在就该叫编程。
……好吧,那就叫编程。借助智能体编程,需要不同的工具集,确实如此。主要变化在于,你从脑中的单线程编程,转向并行处理。我在 TextMate,甚至不久前在 Neovim 里手工雕琢代码时,每次只专注一个问题,有条不紊地把它解决。这实际上就是通往心流的入口:深深沉浸在一个单一问题里,把它从头做到尾。
借助智能体工作并不是这样,部分原因在于,智能体既太快又太慢。你要求它做一件事,它不会像敲键盘那样立即回应,所以得让它先忙一会儿……于是你发现,如果只是坐着等,首先感觉并不高效。哪怕单独一个智能体已经能很高产,你还是不觉得自己高效,也感觉不好,甚至觉得自己有点没用。
第一个智能体时刻到来、我大多一次只运行一个智能体时,也许确实有片刻想:“我不知道这到底怎么样。”但很多困难问题,只需投入更多资源就能解决。这就是 AI 本身的整个规模法则,对吧?如果并行运行,不是一个,而是好几个智能体,你就能感觉进入心流,因为你一直在做某种意义上的编程工作:做决定,帮助某个有方向性疑问的智能体解除阻碍,或者准备好布置新任务。为此,你需要不同的配置。
我最初用 tmux,开不同窗格、不同分屏。基本上可以把它理解成带标签页的终端。打开一堆标签页,我想大多数人都很清楚这是怎么回事,谁也不是只在一个标签页里工作。
所以还是坚持终端、命令行界面。
绝对是。
所以你不用 Claude Code 应用,或者——
不用。
……Codex 应用,或者——
我喜欢这场智能体革命从终端开始,因为我本来就非常喜欢 TUI,也就是终端用户界面,以及终端本身。那是个让人很舒服的地方,也是个漂亮的地方。现代终端就是一个很好看的工作环境,所以我喜欢。而且,一旦你运行多个智能体,尤其不再只是在自己的机器上运行,而是开始使用多台机器,光靠 tmux 就不足以追踪了。这就是我最近改用 Herdr 这个东西的原因。
Herdr 本质上就是 tmux 加智能体通知。每当智能体做完了、需要你时,它就叮一声,响个小铃,告诉你已经准备好等待它的人类了……是主人还是仆人?我也不总能确定。但它已经准备好让你做决定,也会追踪它是否仍在工作。所以我有这样一套 Herdr 配置,实际上在各台机器上都有一套。大约一个月前,我进入了一段疯狂时期,意识到只用一台机器做这些事不够快。就像发现了多核编程,却只有两个核。我想:“如果我有十六个核呢?三十二个呢?六十四个呢?”于是我立刻出去,买了这些很棒的 KVM,叫 GL.iNet Comet。
它就是个小盒子。接入 HDMI、接入 USB,再连接到电脑上,就像 KVM。KVM 是远程控制计算机的一种方式,但这个东西特别之处在于太容易了。接上它,打开网页,登录一次,设一个密码,它就能加入你的 tailnet。这也是过去一年对我而言的另一场革命:发现这些 WireGuard 网络。Tailscale 本质上把你所有计算机变成一个本地网络,不管你身在何处。就像现在,我用手机能直接访问马里布办公室的所有电脑,也能访问哥本哈根办公室的所有电脑。
我能像坐在它们旁边一样操作,不必在防火墙上打洞,也不必配置复杂的 VPN。它降低了把新算力接入网络的阻力。一发现这一点,我就看了看储物柜,意识到里面有一堆以前做实验留下的迷你电脑,于是想:“如果全都连起来呢?”
哦,哇。
于是我就在柜子里接上了四台电脑——
不错。
……每台都有一个小 Comet,突然就能同时在更多电脑上跑智能体,再通过 Herdr 控制所有机器。最后确实到达一个点,我自己的处理能力被榨干了。
对。
我想,大约是……怎么说呢?四五台机器,每台跑三个左右智能体。我大约能处理十六条线程。这就是我的容量。当然,智能体运行越快,我能处理的线程就越少,但以目前的速度,我能让大约十六条线程……全速运行。这也是我从只是为智能体时刻兴奋,变成欣喜若狂的部分原因。因为正如你说的,这有时有点冲击人。再次说,我们与计算机之间的带宽就像拨号上网,实际上想想挺好笑。一年前我坐在这里,雕琢代码,一行行地写。
大约一个小时里,我会写出一个漂亮的控制器、一个漂亮的模型,也就是一个文件,而且真是认真打磨过的。最后也许剩六十行。所以那时我的带宽可能是每小时三十行,我觉得这甚至都算高了,也许每小时二十行。如今我跑十六条线程,有时一小时能产出几百行代码。让我先停一下,我讨厌这个指标,对吧?
代码行数总体上是个愚蠢的衡量指标。当所有人都在谈自己写了多少行代码时,编程社区有些人嘲笑这种“AI 精神病”,我认为是有道理的。你问他们:“你究竟做出了什么?”他们却说:“嗯,我……”然后就没什么像样的答案了,对吧?
它只是个方便的简写方式——
确实是个方便的简写,是产出量的一种表达和概括。至于产出是好是坏——
……这个数字并不对此做出判断。但我现在确实在产出,而且多得多,对吧?因此我能同时推进所有这些线程。配置就是这样。仍然用 Neovim,但现在没在写多少代码,主要把它当项目浏览器,再通过它启动 lazygit,查看已有内容的变更记录。即使是这件事,我也觉得,如果 GitHub 显示拉取请求再快一点,网页实际上可能更舒服。我也说不准。另一个我稍微玩过的工具叫 Hunk,它能非常漂亮地展示差异,也可以看看。
但我发现,看 Hunk 时只能看见变更集,而审查智能体输出时,我常常还想看周围上下文。哦,它改了这个文件,但另一个没改、也许应该改的文件里,我们又写了什么?所以我仍喜欢通过 Neovim 做这件事。顺便说,当然,这一切都发生在 Omarchy 里,都在 Linux 上。这也是智能体带来的另一个重大突破:智能体喜欢 Unix 哲学,喜欢可以从命令行调用的独立工具。我说的三大操作系统,Mac、Windows、Linux 里,没有一个能像 Linux 那样适合这种机制。
Linux 里的一切,要么是配置文件,要么是命令行工具。而五分钟前,这恰恰还是它的主要缺点,正是人们不喜欢 Linux 的原因:“全都是配置文件和命令行工具。”
宇宙跟我们开了个多大的玩笑:五分钟前 Linux 的缺点,如今成了它最重要的卖点。这也是其中一件事……四个月前,有个周末我以为自己只能将就用 Mac。我以为目的地有一台 Linux 电脑,所以没带笔记本,到达才发现只有一台 Mac Mini。于是我打算在不利条件下尽量做好,把 Mac 配成自己在 Linux 上设想的样子。如今其实能做很多,Homebrew 已经相当不错。Homebrew 补上了 Mac 缺失的软件包管理器,在简化 Mac 配置方面,没有谁的贡献比它更大。
但即使像 Raycast 这么简单的东西——我不知道你用过没有——也没有一个可以直接访问的配置文件。你得进图形界面,导出一个文件,然后把它装到什么该死的背包里的 U 盘上,再到别处导入。你没法把整台机器的设置全部自动化,连 Mac 默认按键绑定的配置都完全没法自动化,必须像穴居人一样用鼠标点来点去,手动设置机器。
我是说,也有绕过的方法。
没有好的。我找过,也很努力试过。
说说我的经历吧。显然我是 Linux 用户,但因为 Adobe Premiere 和其他 Adobe 产品,我也是 Windows 用户,所以经常用 WSL,也就是 Windows Subsystem for Linux。
是的。
就是 Windows 里的 Linux。在智能体时代,它不是一种理想的 Linux,因为它只是——
它是个沙箱。
……是个沙箱,而你希望 Linux 完全放开,能够做所有事情。
没错。
所以我现在也开始注意 GrayCat 这类东西。你知道,我喜欢用键盘。配置文件在哪里?我能不能基本上什么都做,让智能体替我设置好一切,并保存配置,以便在不同系统上复制,所有事情都自动化?于是我不得不问很多这样的问题,而很多东西都缺失。
它们没有好的答案。
但往往你其实可以自己把应用做出来。
不过也有些取巧的办法。
是的,都是取巧的办法。
有各种变通手段。
都是变通手段。
你不必这样生活,Lex。有更好的……其实现在就是个好时机。
先等你们有视频编辑器再说。
那么,这正是好时机。
嗯。
我听说是你生日。
是的。
所以我带了一点礼物。
不会吧。
不管你喜不喜欢,我们都要让你用上智能体操作系统。
太棒了。
我问了问……戴尔的朋友,看他们有没有一台机器,能让我送你当生日礼物。
哦,不会吧。
这就是我用的机器……也就是……和我用的那台相同,但这台现在归你了。它是一台——
不会吧。
……Dell XPS 14……已经装好了 Omarchy 4——
哦,哇。
……等着按你的需求配置。等你意识到所有的……顺便说,我们几乎该计时看看。你可以直接开始用,大概一分钟内回答五个问题就行。你愿意的话,真的可以现场完成。
哦,Omarchy,由 DHH 打造的美观、现代、有鲜明主张的 Linux。好,我们来吧。
好,我说话时你来填。所以——
酷。
……你刚意识到的那些,在 Mac 上的痛苦,我用大约一个周末就体验到了。我很努力尝试,也找到一些还不错的变通办法,主要是 Homebrew 现在给图形应用也提供了入口。回想不久前就觉得好笑,人们会打开网站,说:“我需要 Zoom。”于是输入 zoom.com,找到下载链接,下载 DMG……双击,再看到一个奇怪的手动操作,让你把图标从屏幕一处拖到另一处,应用就是这样安装的。然后一遍遍重复,直到装齐想要的应用。如果设置一台新机器,你有十二个应用,就得像个彻底的穴居人一样,去十二个不同网站下载。
Homebrew 解决了其中很多问题,但没有全部解决,也完全没有解决——
抱歉打断一下,但你看这速度多快。
哦,再过大约四十秒就好了,你就进入 Omarchy 了。
Super 就是键盘上的 Windows 键或 Command 键。那么哪个是 Super 键?
对,就是 Windows 键。哦,其实不,不,你这台是特别版。
是的。
全世界这种电脑只有大约六台。
哦,这里有个 Super 键。
上面写着 Super。再看键盘另一端原本的 Copilot 键,那里是 Omarchy 标志。
不错,好,酷。
这是戴尔的 Spencer Bull 做的,我一直跟他合作做这些事情。他们非常棒。
他们有一阵子放弃了 XPS 这个品牌。
是的,去年放弃过。
我当时想:“这很蠢。XPS 很棒。”
不只是取消 XPS 品牌很蠢,他们还取消了 Escape 键,把顶部换成电容触控按键。苹果大约三年前就意识到那是个糟糕的错误,所有人都讨厌。可如今他们有一个非常棒的团队,而且这实际上是我给自己用的第一台戴尔笔记本。
因为我们的服务器一直用戴尔。我们退出云服务,就是戴尔提供的硬件支持。我想从二十一世纪头十年的中期,我们就在用戴尔了。但我从没用过他们的笔记本,因为与 MacBook 相比,对我而言一直不够好。2016 年——或者说 2026 年——搭载 Intel Panther Lake 芯片的 XPS,是第一批我个人真愿意用的戴尔。有趣的是,最初生苹果的气时,我想:“你知道吗?干脆买戴尔吧。”反正我们已经在用它们,于是买了一台,但我当时觉得:“不行,我用不了,真的用不了,不够好。”结果没想到,今年他们把一切都改好了:续航改好了,性能改好了。
兼容性改好了,重量改好了,屏幕也改好了。那是一块双层串联 OLED 屏——
是的,太棒了。
……这意味着,它用的技术实际上比该死的 MacBook 还好。它比 MacBook 更轻,芯片终于也有竞争力了,因为 Intel 花了整整五年开发 18A 制程。虽然花了很长时间,但现在终于来了,真是不可思议。我们终于有了能与苹果 M 系列芯片竞争的产品……电池续航一样长,性能也能竞争。
而且默认主题很漂亮,然后是什么来着?按 Super 加空格就打开了。
其实直接按 Omarchy 键就行,会打开菜单。现在你可以在那里控制一切。
哦,和 Super 一样。好,酷。
和 Super 加空格一样。所以这对我来说是个巨大变化:我们终于有了不必替它找借口的 Linux 机器。我其实不介意找借口,因为借口不过是“取舍”的另一种说法。上次我想谈过,我很喜欢 Framework 13,现在仍喜欢,他们还是在做好电脑。但我觉得,很多人不想要自己动手折腾的体验,而是想要开箱就觉得做工等各方面都与 Mac 相当的东西,如今我们终于有了。所以,生日快乐。
太感谢了。DHH 送的一台装着 Omarchy 的戴尔笔记本,真是最好的生日礼物,太棒了。
顺便看看屏幕保护程序。
是的,有点惊人,我看到了。
在那块双层串联 OLED 屏幕上——
太美了。
……真是好得不可思议。
看看这个,整体有一种复古感,像是 Fiverr pop——
就像在九十年代运行电子公告板系统……那正是我十四岁时做的事。所以对我而言,这是完整的怀旧体验,也是一种很棒的美学,把 Unix 里现代桌面美化文化的感觉……与九十年代的复古感结合起来。
是啊,一个智能体优先的操作系统,却有复古外观,真疯狂。
而这又恰好相配……这也是我如此兴奋的原因:所有这些智能体框架都以终端用户界面、命令行界面的形式出现……出现在终端里,突然让全新一代的程序员和普通用户发现了终端的魅力。终端其实是我们拥有的最令人赞叹、最高效的用户界面之一。后来我们造出了更容易学习的界面。鼠标是个美妙的发明,让不太懂计算机的人能点来点去,探索明白;但终端是为那些想学懂自己系统、想学会键盘命令的人准备的。
所以你认为终端用户界面会一直存在?
百分之百。不过,它不会是唯一的形式,当然不会,因为这些实验室如今有万亿美元的估值,需要触达数十亿人。我不觉得我们会教数十亿人掌握终端用户界面的各种细节。所以会有别的工具,而且我们已经有了。顺便说,这正是 Linux 很棒的一点,比如 ChatGPT Codex 工具。
是的,我看到了。
公告发布后不到两小时,我就把它封装好,准备在 Omachi 里用了。现在你可以……直接按 Omachi 键……再输入 ChatGPT,应该就会出现类似“安装”的选项。
不错。
然后按回车就行。
要输入 Lex 的 sudo 密码。
对,输入你刚才设的密码。然后它就会安装、弹出界面,你就有 ChatGPT 了。
不错。
很多应用都是这样,所有智能体运行框架也都这样集成。刚才说过的 Tailscale,如果你想加入,也是这样。还有 Dropbox。这些东西之所以都在里面,是因为我自己用。我为自己构建这个系统,首先考虑的是,怎样只为我自己打造梦想中的计算机。如果我得到了梦想中的计算机,我确信还有别人和我有同样的梦想。
你非常执着于把安装时间压到一分钟以内,网上很多人问你为什么。那么为什么?你为何如此执着,要把安装时间做到少于六十秒?
先引用一下 Michel Hashimoto,他创造了很棒的 Ghostty 终端,Omachi 上也有,而且他还是 HashiCorp 的创始人。不久前他在 X 上发过一篇很棒的帖子,有一句特别有力:“追求卓越,无须解释。”想把东西做得尽可能好、尽可能快、尽可能美,不需要理由。
我们就应该想要美观、快速、用起来令人愉悦的系统。有趣的是,安装时间这事起初其实并不是一分钟目标。我开始时还挺谦虚,觉得只要十五分钟就能配好整个系统,比以前已经是巨大的改善,我就会非常满意。这个念头来自于,衡量标准已经偏离得太离谱。你说过,第一台电脑是 Commodore 64,对吧?
嗯。
拆开 Commodore 64,按下开关后,我想不到一秒,BASIC 解释器就准备好接受命令了,几乎就是瞬间,基本没有启动时间。你知道我买了台新 Mac,专门用于那个我还没靠氛围编程在 Linux 上替代掉的唯一应用——Adobe Lightroom——把它设置好花了多久吗?
全新的电脑,刚开箱。我设置它,发现有软件更新。在它完全更新好、准备安装 Adobe Lightroom 之前,花了四十二分钟。这很荒唐,很离谱,是对所有热爱计算机的人的侮辱。新电脑拿到手,还没能使用,就得花四十二分钟更新……更新的还是出厂时就预装在里面的东西。简直荒谬。更疯狂的是,这还不是最糟的。我还买了一台 PC,因为这些 Linux 机器买来时都是 PC,对吧?
对。
而且预装了 Windows。于是我买了一台,就在三周前。全新的机器,Intel Panther Lake,配置齐全。从开箱到准备好使用,花了一小时三十五分钟。你觉得自己刚才多久就进到 Omarchy 了?
肯定不到一分钟。
一分钟。
是的。
我们可以造出这样的计算机,技术早就有了。大约 1981 年,Commodore 64 最早出现时,我们就有了这种技术。如今计算机快了万亿倍,却要花四十二分钟或者一个半小时设置好才能用,这让我愤怒得变成一种执念。有趣的是,刚才休息时,我和搭档 Ryan Hughes 还在聊。我们现在认为找到了一个方向,可以为特定电脑制作预先准备好的特殊极速镜像,因为这依赖对硬件的了解,比如 Dell XPS。我们要做一个 Dell XPS 极速镜像,能够大约十二秒安装完。一套完整的 Linux 系统——
是的。
……大约十二秒装好。
太不可思议了。
这种执着,让我从使用计算机中获得巨大满足:我们不接受事情本来的样子。这也是我如今所处的智能体加速现实如此令人振奋的原因。面对这些限制,我可以想,你知道吗?五分钟时我本可以停下,那已经够快了。这也是 X 上的争论,对吧?为什么还要继续?五分钟够快了。好吧,对你也许是,但对我而言,十二秒有趣多了。我总是尽量从第一性原理思考。好,那台机器上,再按一次 Omarchy 键,然后输入 speed。会出来一个列表,其中有一项类似磁盘速度。
速度测试,网络速度,磁盘速度。
磁盘速度。选那个,然后运行。这是在测内置 NVMe 硬盘的性能,结果多少?
每秒七 GB。
每秒七吉字节,这就是硬盘速度。为什么我们不能一秒装好一个 Linux 发行版?Omarchy 发行版是 5.8 吉字节。如果能以每秒七吉字节运行……当然,实际上做不到,因为 U 盘比它慢得多。但你应当把底层物理条件和协议发挥到极致,那就是目标。我们得一路回到那个极限。
是的。我喜欢你在做 Linux 发行版。因为你本来可以做……任何东西。但做 Linux 发行版意味着,你正在重新思考计算机是什么,因为操作系统是最根本的,是你如何——
是的。
……与计算机互动的基础。
是的,而且它已经停滞太久。
是的,确实。
今天的 macOS 和十年前的 macOS 几乎没区别,实际上许多方面还更糟,因为苹果继续死死控制用户。他们不希望用户安装未经他们认可……放行的软件,不希望用户不经手动操作就重新配置快捷键,也不愿改变工作区切换时那五百毫秒的动画。那是一台封闭得令人恼火的计算机。客观说,作为一台受限制的电脑,它已经相当不错,但我不想要被锁住的电脑。我想拥有自己的电脑,更进一步,我想改造自己的电脑。这就是智能体时代需要新操作系统的原因。
当你可以用氛围编程做出任何脑海里的应用,也应该能用氛围编程改造自己的操作系统。你应该能改变任何东西:外观、工作方式、有哪些面板、没有哪些面板。而这需要 Linux,就这么简单。其他两个操作系统,都无法提供这些。
但能谈谈那个问题吗?我想有人问过你,比如:“你凭什么觉得能做得比 Ubuntu 更好?”或者:“既然 Ubuntu 已经很好了,你为什么还要做?”你的回答是:“我觉得我能做得更好。”这是 X 上的对话。你能说说,那种疯狂的想法来自哪里吗?觉得自己一个人,或者加上 Ryan,就能开始做出比 Ubuntu、Arch 这些东西更好的东西?
我会说,最初没那么宏大。踏上 Linux 之旅时,我其实只是从 Ubuntu 开始,在它上面构建。已有系统本来就能做很多我想做的事情,而且至少它是 Linux。那么我能否在此之上,把它变得更现代、真正好看,再装上我想用的程序?我多少做出了这种东西,然后发现还可以往下深入七层。越接近硬件、接近内核、接近单个软件包等等,你就会发现越多自由。
所以随着发现的自由越来越多,我的抱负也越来越大。我意识到,哦,果然,我对计算机该如何工作、该长什么样、该预装什么程序、安装该花四十二分钟还是四十五秒,都有强烈的看法。顺便说,四十五秒是目前的世界纪录。如果听完后有人安装 Omarchy Quattro,能打破四十五秒,截个图发给我,你就会成为新的世界纪录保持者。
你们是什么时候突破六十秒大关的?
有趣的是,这有点像过去那个极限,是什么来着?一英里四分钟之类……大概在 1952 年……人们以为人类不可能突破。后来一个人突破了,短短几个月内又有三个人做到,对吧?我们也有这个目标,最初我定的是两分钟。
后来我们突破了两分钟,我就想:“既然能突破两分钟,为什么不能突破一分钟?”我记得当时想:“那太疯狂了,你不可能一分钟安装现代操作系统,其他的都……”如果其他系统要四十二分钟,对吧?像苹果,有那么多聪明人,却要四十二分钟,那肯定就是标准了。不,不是标准,因为没有限速。几乎所有情况下,你视为理所当然的东西,都不是现实中固定不变的支柱。直到碰到那块硬盘每秒七吉字节的传输能力,你都还没到极限,就应该继续推。然后它当然也就成了一场游戏,本身就能带来满足。
每省下一秒,都让我兴奋。突破一分钟大关,其实我想也就三周前左右,甚至可能两周前,我简直疯了。然后我让一群智能体运行自动研究循环,尝试各种不同理论:如果改这个、改那个呢?删掉这里怎么样?并行做呢?如果你输入用户名时,我们就开始把软件包预加载到内存里,就能更快写入。于是这成了一个有趣的游戏。我认为产品开发就应该这样理解:它应该有趣,应该可以带点不计实际的玩心。
应该尝试超越目标,把它做得比所谓“需要达到的水平”好得多。
尤其是现在,因为有智能体,你可以进展得这么快,尝试这么多不同的方法。
是的,这只会让事情更令人满足。但我认为,这一直都是如此。看看有史以来最棒的梅赛德斯-奔驰,我想叫 W126。我看过一部很棒的纪录片,它由一个曾在奔驰安全部门工作多年的家伙主导。突然,他被任命为整个 S 级项目的负责人,于是把所有东西都加进去。自动收紧安全带、前灯清洗器等等,就是那时候出现的。相对于市场需求,这辆车的设计投入远远超出了必要程度。
简直难以置信。但你看着就会想:“我想要这个。”就像看机械表,心想:“它能下潜一百米?”或者,我想劳力士有一款能下潜四千米,叫什么深海、深潜海洋……之类的名字。全世界买那块表的人,除了三个人之外,没人真会去测试它。但你不想成为那种支持人们把人类向前推进这么多的赞助者吗?我想要突破限速的最快汽车,想要能潜到马里亚纳海沟的潜水表,想要不到六十秒就能安装好的操作系统。
从个人层面,我钦佩那些人,觉得每个人都应追求那样。但也该提一下其后果:追求卓越,即使指标看起来不务实际,也可能带来意想不到的后果,比如其他种类的卓越、发现、创新等,与速度毫无关系的东西。
§03原文文稿 · 2:03:48–2:51:16
百分之百。
这就是发现。让追逐的指标成为催化剂、创新引擎,很好,因为你会不断有所发现。这和去月球、去火星是同一个道理。为什么去?谁在乎?实际上,真正的收获是你会发现许多有关化学推进的东西,发现人怎样能在太空长期生活。也许会发现全新的太空太阳能利用方式,或者太空数据中心,或者别的什么。
没错。
各种各样的……也许你还会遇见——
没错。
……外星人,谁知道呢。但设定目标并追逐它,尤其是一个数字目标,确实很好。
而设定宏大目标更好。当你拒绝只做实用的事,努力追求比可能实现的范围稍远一点的东西时,魔法就会发生。我们应该全力以赴。这也是原因之一……实际上,这个具体目标某种程度上,也是受到别人这样做的激励。我是说,埃隆是这段讨论中最突出的那个人。他的目标远得离谱,乍看似乎荒谬。我确实不止一次觉得它们荒谬。后来你发现,有时它们会成真。也许并不总按时,那又怎样?那又怎样?所以自动驾驶汽车没按时到来。我在 2017 年为此狠狠批评过埃隆。
但现在它来了。除了那个在 2017 年就相信能做到、对现实如此不耐烦,以至于靠这股力量把现实推向自己想去之处的人,还有谁能把我们带到这里?我觉得这极具启发,我们需要这样的目标界线被挪动。需要有人跑进一英里四分钟,其他人才会意识到:“好吧,那我大概还能跑得更快。”这是我努力追求的,也确实在 Omarchy 上这样做,因为带着高远的志向和抱负生活,更有趣。我得说,这点我其实也稍微改过主意。以前我花了很多时间宣扬另一套观点,认为很多人其实不需要那些抱负。
而我也……那也是真的。我们不希望世界上有八十亿个埃隆到处跑,我想那会很疯狂。但我逐渐认识到,对创业者而言,有适当分量的大目标是健康的。开一家意大利餐馆,想法不能只停留在那里,而应该是:也许我就开这一家,但我要做出他妈的最好的披萨,最美味的帕尔马干酪菜肴。我们必须追求卓越,才能积蓄继续前进的动力。
而且,要敢于想大事,比如你能做出一套 Linux——
是的。
……发行版。你还记得哪些事情让安装变得这么快吗?你提到过一些智能体发现的东西。
其中一点,是把等待人类输入的时间当成预加载的机会。配置 Omarchy 机器时,你要回答五个问题,而它同时在后台做事,我们同时在后台做事。这是我甚至没考虑过的一点,虽然它其实是最老的技巧。很长时间以来,各种电子游戏都这样,让玩家与某样东西互动,再在后台预加载等等。所以这是个老办法,但我没想到把它用在安装程序上。
我原以为,要先问用户密码、用户名、时区等问题,然后才开始干活,而实际上可以提前加载。其他的就是一堆调整,改变安装器执行事情的顺序,还有一部分是缩小体积。上一版 Omarchy 是 7.5 吉字节,现在安装时间的很大部分,其实就是解压软件包文件。这些文件占了 ISO 的大部分,也占了安装时间的大部分。所以,把体积缩到现在大概 5.85 吉字节,是相当大的缩减,几乎一比一地转化为时间减少。我为此做了一些非常有意思的事。
Omarchy 用的是 JetBrains 字体,非常棒、非常漂亮。其实第一眼我还不喜欢,但后来发现,只有它能在 Mitchell Hashimoto 的 Ghostty 里显示得完美。不知为什么,Ghostty 就是不愿意把我心爱的 Bitstream Vera Sans 渲染成我习惯的样子。嗯。但它把 JetBrains 字体显示得很完美,所以我换了。可是……Arch 上 JetBrains 字体的标准软件包有两百兆字节,因为包含各种变体、子类型等等。我意识到,我们根本不用那些,只用等宽版本的一个 Nerd Font 补丁版。你知道那有多大吗?我想是十六兆字节。嗯。
所以我直接做了一个新软件包,JetBrains 包的精简版。嗯。不错。就这一下省了一百八十兆字节。我挨个检查,做了很多次类似的事。NVIDIA 驱动也一样。我想直接来自 Arch 仓库的 NVIDIA 驱动,并没有使用最极限的压缩方式,我想叫 ZSTD。那是一种压缩非常慢的方式,创建压缩包很慢,但如果你是在构建软件包——嗯——只要能缩小 ISO,就有的是时间。所以单是两个 NVIDIA 软件包,我们就省了大约两百兆字节。嗯。我喜欢这件事的地方,是我想象自己成了迈凯伦的汽车设计师。
迈凯伦现在制造着世界上最轻的一批超级跑车,他们极其痴迷于从车上再减掉最后一克重量。所以即使是新的 750S,也比竞争对手轻得多。他们用碳纤维单体壳,这让他们相对使用铝材的法拉利等品牌有优势。但他们也就是对重量非常执着。我看过迈凯伦的人接受记者采访,一项项介绍:“对,我们从这里减了三百七十克。”我当时想:“等等,什么?一辆大概一千零四十公斤,或者一千三百八十公斤之类的车,还有人在意三百七十克?”是啊,多么痴迷的疯子。是的,我爱他们。我也想要这种东西出现在我的生活里。
单凭这一点,我就想要一辆迈凯伦。所以当我从软件包里一点一点削减兆字节时,我想,天哪,我有点像迈凯伦的汽车开发者了。虽然这项工作我们甚至还没做完,软件包还能缩得更小。但这又涉及 Omarchy 与传统 Linux 社区之间另一个冲突:臃肿。在某些圈子里,预装软件是不合规矩的,因为你凭什么替人决定该用什么程序?我就说:“哥们,这他妈就写在名字里。它叫 Omarchy,因为 Oma 是 omakase 的缩写,字面意思就是厨师精选。我就是厨师。
我来做选择,这是我认为很棒的一组应用。”顺便说,它其实有视频编辑器,也预装 OBS 来录制内容,就在里面。是的,OBS 已经装好。不错。Kdenlive 是视频编辑器、时间线编辑器,非常棒。我所有视频都用它剪。后来我做了自己的片段编辑器。你提过同步的问题。是的。我有这种片段需求,比如做了播客,需要给 X 准备一段剪辑。用 Kdenlive 或其他时间线编辑器有点麻烦,所以我做了 Omacut,系统也自带。Omacut,酷。它专门用来制作片段,整个过程都能用键盘操作,可以定位到恰好的时间点。
然后按 Control 加空格,片段起始线就移到那里。再去到片段结尾,按 Alt 加空格,结束线就移过去。不错。再按 Control 加 S,就保存了。不错。现在我用 Omacut 做片段快得不得了,太棒了。但系统里还装了所有这些软件:Neovim、Herdr、Tmux、终端、一堆主题、一堆我能挑出的最好背景图。这会占些空间,而且应该如此,因为它不应该是一片荒地,让你从头重建所有东西。它应该是你刚拆开就能高效使用的系统。它是用什么写的?
Linux 配置部分,其实主要是用 Bash 写的。对。Bash 很适合这个用途,实际上就是为系统管理而生的。它也有局限,不该什么都用 Bash 来做。
智能体生成 Bash 的水平怎么样?挺好?
哦,非常棒。
好。
只有一件事除外。每次抓到,我都得敲敲智能体的后脑勺,提醒它看 AGENTS.md 文件,因为里面我会写明,不要提前退出。智能体特别喜欢用前置条件,而不是完整展开的条件分支。我喜欢这种:“如果这样,那么做那个。”智能体喜欢先一个前置条件,否则退出,再一个前置条件,否则退出。
然后才一路落到真正想执行的最后一件事。我讨厌那种风格。除此之外,它们已经好得惊人、飞跃式地好,非常棒。上次聊天时,我们还谈到,我会让智能体给出一段 Bash,再自己敲进去,但又记不住。后来我努力确保这些能力不会从指缝里流失,真正学会了自己写 Bash,而现在我又完全不自己写了。我大概有两个月没亲手写 Bash,因为智能体实在太好了,只要给一些风格上的提示,偶尔对复杂度提出反对……这件事……我前几天还发推说过。
让我惊讶的是,智能体经常做完一件事,说完成了,再让另一个智能体审查……它也说完成了,随后我说:“嗯,对我来说,看着有点太复杂。”它就会说:“哦,是的,你说得对,确实过度复杂化了。”然后把它砍掉一半。我就想:“难道一开始不能直接这样做吗?”后来有人提醒我,人也是这样。如果你做了一件事,别人看后只是说:“嗯,好像有点复杂。”你往往也会说:“啊,你说得对。”
你看,这些小迹象对我来说恰好说明,程序员仍然被需要,就是那种直觉。因为你怎么说来着?你对代码的整体地形有一种感觉。
构建 Omarchy 这样的东西时,我确实会看代码,看它的形态。
是的。
也看各部分的比例。
是的。
比如,我不再需要自己雕琢每一个地方。这又是我在自我抬举了……一会儿是迈凯伦汽车工程师,下一刻又是达·芬奇,带着整个学生工作室……由他们在精美大理石上做所有细部雕琢,对吧?而他说:“啊,不,比例还不完全对。”现在与智能体工作就是这种感觉,我可以像编辑一样给反馈。
比如说,你知道吗?我不会亲自写所有东西,但我能告诉你,哪个论点没有说服力,形态何时与问题不相称,或者什么时候只是感觉太复杂。令人惊讶的是,这样经常就能奏效。就像早期大家开玩笑说:“别犯错。”我觉得现在不必再这样告诉智能体,因为运行框架已经很好,会运行自动化测试,得到反馈。但你确实还得告诉它:“做得更简单。”
你用过语音互动吗?还是……你打字多少?你有多少——
我全都打字。其实 Omarchy 内置了 Voxtype……音频转写,而且确实很好。我只是发现自己不是以那种方式思考的。我不喜欢对电脑说话,这点也让我自己吃惊。在车里我喜欢,但坐在键盘前,我只想打字。而且我就是喜欢打字。你在用语音吗?
我是个内向的人,不喜欢社交互动……也不喜欢说话。而且——
我想我也有一部分是这个原因。
但不知为什么,语音对我很有力。我想说说这个……我跑步时会带这个东西,叫 Plaud,就挂在这里的 T 恤上。
按一个按钮就开始录音。就心流而言,这实际上比坐在电脑前好得多。我会留下一些通常由智能体产生、想认真讨论的问题。然后我写——或者说,我讲一个很长的提示词,其中很大一部分是意识流式推理。有时我会中途改变对设计的看法,但那些都在里面,随后让一个大语言模型处理。Plaud 显然有 API,可以取出录音、转写、清理文稿,因为你希望它……我会提到文件、技术概念,比如文件和函数……等等,你要确保转写——
……语音转文字能识别正确。所以需要一个词典。处理文件时,也希望它了解代码库。然后你会得到一大段内容,常常是我花十分钟、十五分钟、二十分钟讨论完整设计。我发现这非常非常有力。它不会有过度规定的问题,因为系统得到了那么多有关你设想的意识流思考。这非常适合设计初期,比如我要从零做 Omarchy,最初几个阶段,我会口头梳理,可能讲一个小时。我确实有过一小时的提示词,一边跑步一边——
太棒了。
……说话。我强烈建议人们尝试基于语音——
所以——
……长时间地说出来。
我其实没有——
而不是特别具体地……
……我没有,是的,没有这样用过,也许这就是我的用法不对。我只是试着打字或者说两句话,然后会有点沮丧,因为也许自己打出来一样快。但我没有试过整整二十分钟持续说话这种方式。
尤其适合你,因为你讲话很快。
是的,我能想象。因为我之前是尝试用它回复邮件之类,到了某个时候觉得它可能有帮助。它确实多少有点用,但随后会犯个小错,我又得纠正。可如果你是在对一个本来就不在乎那些杂项的大语言模型做意识流表达……那可能效果好得多。
有两件事必须做。首先,拿到原始音频,把它转写。我用 ElevenLabs 来转写,他们可能是最好的语音转文字模型。但依然会有错误,所以你需要一个能访问词典和很多——
词典怎么做?
首先有一个与你相关的术语词典,再让它了解……也就是有个智能体,在你谈代码时,检查整个代码库,找出你常用的关键术语。说到通讯,比如 Gmail、WhatsApp 等,它也了解所有联系人,以及你常常说了却被识别错的词。
你这方面钻研得真深。
对我来说,这是一个必须解决的问题——
是的。
……因为你使用语音转文字时,可能遇到的问题之一,就是它有时会犯错。
没错,那我就没法用它口述邮件。
对。如果它永不犯错,你——
那就更有吸引力了。
是的,而且你其实可以接受并非完全实时,可以等五秒——
对。
……也许吧。我不知道你的使用情境,我可以等五秒……十秒,让它把所有东西处理完。
你得用氛围编程把它做成一款应用,把所有这些都做了,这样——
对。
……它就能直接好用。
我想私下跟你说过,让我很惊讶的是,翻译到现在还没做到完美。
对。
语音到语音的翻译。
把这些东西组合起来,你似乎已经更接近当前可能达到的最好水平了。
但你知道,发布这类东西时,确实得开始考虑延迟。
别让完美成为良好的敌人。要是你突然让人们能做以前根本做不到的事,多花五秒完全没问题。我觉得这是史蒂夫·乔布斯特别擅长的地方之一。他知道,第一代 iPhone 在各种方面都很差,对吧?数据连接慢得可怕,性能严重不足,各种问题都有。但产品如此有吸引力,那些都无所谓。如果等一切恰到好处、完美无缺,再发布就太晚了。如果你解决的是人们目前没有办法解决的问题,他们愿意多给五秒。
如果身处竞争市场,是,好,那就不同。但那意味着问题已经被解决了,你没必要再解决。
嗯。不过我确实觉得有几个……比如 Whisper flow 很好。有几个人已经把语音转文字这件事做得更好了。
是,是的,我们用 VoxType。
VoxType?
不过其他人也——
VoxType 是开源的吗?
是的,只用了一个开放模型。我忘了是哪个 parrot 模型之类的。简短命令效果很好,所以我用过。我想只要按住 F9……就开始听写。
哦,所以已经在里面了?
你只要联网,它就会提示你安装……VoxType 软件包。因为这个包包含一个一百五十兆字节的模型,我当时想:“啊,不知道能不能把它也带上。”所以……默认没放进去,但安装选项已经配好了。其实就在昨天,我还在想,我们确实需要把所有这些结合起来。Omarchy Quattro 作为一个可塑的操作系统,已经非常棒,你只要对智能体说话,就能增加功能。
但这正是我们应该做的。很多人会觉得直接对电脑说:“嘿,能不能给我做个股票面板?我要追踪苹果和戴尔。”很自然。然后看着智能体完全通过语音执行,输入和输出都用语音,你的操作系统就这样改变。这就是《钢铁侠》、贾维斯的愿景,还有——
……仿佛魔法般出现的定制应用。我在想,AI 里真正让我着迷的一个领域,是实时游戏模型。不知道你看过没有,AI 真的是在生成下一帧,而你又确实能玩这个游戏。如果它们能做到这个,为什么我们不能把它用在操作系统上?为什么不能直接对它说话,要求换个样子或者改一下,然后一切就改变?顺便说,我认为这也是将导致 Linux 全面占据主导地位的另一个突破。智能体消除了诊断 Linux 系统的所有困难,并把 Linux 那些过分具体、极其晦涩的报错信息,变成了它最大的优势。
Linux 出问题时,智能体可以拿到那个普通人完全看不懂、却很具体的报错,再结合自己预训练时读过的四千万行 Linux 代码,确切知道去哪里找,缩小范围。从今年年初以来,我的 Linux 机器没有一个问题是智能体诊断不了的。一年半前还不是这样。一年半前,我还在论坛里搜索……寻找那些冷僻问题的答案。
如今智能体不仅了解 Linux 操作系统的源代码,也了解我那台机器上每个软件的源码,它能访问全部代码。事实上,这是我在发布前刚加入的一件东西:设置好默认智能体后……Omarchy Quattro 有一个崩溃监视器。如果机器上任何应用崩溃,就会弹出小提示,问你是否想让 AI 诊断问题。
是,太棒了。
不可思议。我见过某个子系统报错的情况,甚至不是什么 Linux 本身,只是我装的某个应用。智能体开始翻日志,查 systemd 日志,然后直接把那个应用的源码签出来,定位到某个 Rust 文件的第 472 行,有个无界、未经解包处理的变量溢出之类的问题。然后问你要不要提交包含所有细节的缺陷报告。我讲个惊人的例子:我在和 JDX 合作,他在做 mise,这是一个面向快速更新的开发工具的包管理器。我们就是用它管理所有智能体软件等东西的。普通包管理器并不是为一天更新七次而设计的。
而所有这些智能体框架差不多每天更新七次,所以我们需要一个独立于常规渠道的包管理器,mise 恰好非常适合。总之,它有一个小缺陷,某种竞态条件。智能体很擅长找这类问题,因为同时运行多个智能体时,会挖出底层基础设施里各种竞态,以前人手工操作从不会触发。于是它发现了这个问题,我告诉智能体:“嘿,能把它作为缺陷报告发到 JDX 的 GitHub 上吗?”可不巧,就在那之前,我让八个不同智能体给 Omarchy 本身跑了一轮质量保证测试,找出了二十八个真实问题——
……需要提交。结果它去了 GitHub,试着同时提交全部二十八个问题,大概十二秒就完成了。GitHub 合理地把它标为疑似垃圾信息,封禁了……我的 Omarchy 机器人。于是我没法这样做了,机器人被禁止访问 GitHub。我就告诉它:“嘿,这样吧,直接发邮件给 JDX,这是他的邮箱。”我已经给它配置了一个 hey.com……邮箱地址。我们现在有个测试版命令行工具。
我给它配好了那个工具,所以它可以发邮件,这也是它给我报告待处理问题和拉取请求的方式。它把发现的缺陷发邮件给 JDX,他说:“等等,这是我第一次收到尚未发布软件的缺陷报告。”因为它下载了 mise 源码,看到他已经修过这个缺陷,但发现那个修复在尚未发布的软件里仍不能彻底解决问题。它准确定位问题,他说:“见鬼……我们甚至还没发布,我就收到了缺陷报告。”
太棒了。
不可——
太棒了。
……思议,达到了 AGI 级别的震撼。
而那其实,如果你记得,本来是个开放问题:AI 系统能否做好调试。大家当时的想法是,好吧,它们能写代码,但能不能找出问题,以及——
它们这方面强得不可思议。而且很有意思,我以前也许站在同一边,有点怀疑它能否推理清楚所有这些事。Shopify 的首席技术官 Mikhail 对此做了一项科学研究。他们……我想是去年末或今年初,让智能体回头检查 Shopify 生产环境里发生过的所有事故,包括停机和其他问题,追溯到已合并的拉取请求,比较经过人类审查和经过智能体审查的拉取请求,哪种质量更高。结果你猜——
……智能体审查过的拉取请求,在生产环境里造成的问题更少。而那还是六个月前的模型。现在,在我们目前工作的大多数领域里,我百分之百确信,智能体更擅长找缺陷。
所以你如今整天运行智能体。哪个模型在你看来比较出色?现在谁在领先?似乎一直在变化:Sol、Fable、Grok 4.6、Gemini,还有中国的开放权重模型。
让我惊讶的是,你可以一口气说出这么多不同竞争者。市场如此开放,领先位置确实来回变化,存在真正的竞争,有这么多实验室能到达或者接近前沿。顺便说,这很了不起,我仍不完全明白。不过回答你的问题,现在总体上最好的模型是 Fable。在我看来,第二好是 Opus 5。但紧接 Opus 5 的下一档,也不总是在它之下,有时还领先,我马上会说。我会把 GPT Sol 评价为非常好。
Grok 4.6 我几天前才开始测试。我无意中建立了一个很棒的测试:把一个 Python 库翻译成 Rust。你刚看到那些有酷炫动画的屏保?
是的。
它由一个叫 Terminal Text Effects 的 Python 库驱动,非常酷。我们从 Omarchy 第一天起就在用。问题是它用 Python 写,所以启动运行,尤其在笔记本上,会用掉全部 CPU 来做这些效果,因此耗电大约三十瓦,风扇会转起来,电池会被耗光。
桌上电脑无所谓,但笔记本很在乎。所以我想:“你知道吗?这听起来适合用 Rust 解决。”先把挑战交给 Fable,只告诉它:“这是这个 Python 库的源码。”也就是 TTE 库,带着一堆依赖等等。“我要一个没有依赖、只有单个可执行文件的 Rust 版本。”这正是 Rust 擅长的。所以基本上,我想要 Rust 版,要逐帧、逐像素完全一致,做完整分析,不做完不要停。
对。
提示词就是这样。
对。
不骗你,不到四十五分钟,它就好像在说,已经全都搞定了。
是的。
我做完了,全部检查过。启动时间从八十六毫秒降到了两毫秒,执行速度提高了,我想是九点六倍。可执行文件三兆字节。你要运行吗?
太棒了。
于是我运行它——
天哪。
……我也不知道自己为什么惊讶,因为这种转译工作,我们早就知道 AI 很擅长,但仍然觉得震撼:一个我用了一年、别人用了更久的 Python 库,我完全不懂 Rust,也完全不看 Rust 代码,就能一次性把它完整转成 Rust 可执行文件,产出这个程序。然后我马上告诉智能体:“太好了,发布吧。”它把它打包成新软件包,问我:“想叫什么?”“嗯,叫 TTFX 吧,建一个新 Git 仓库。”它就建好仓库。“给我们的构建系统创建一个新软件包、构建包。”它也上传了。“推送出去。
再向 Omarchy 本身发一个拉取请求,让我们从 Python 实现 TTE 切换到 TTFX。”它全部做完,而我只是坐在那里。再说一遍,那时我已经因为智能体加速而欣喜若狂,但仍忍不住往后一靠,心想:“这就是 AGI,不是吗?AGI 就是这个样子。如果……如果这种时刻变成随时都能发生的日常,那就是 AGI。”
据我了解,你后来不只用 Fable,还用其他模型重复了相同实验。
我在所有模型上都试了。先是……其实有件趣事:做到大约三分之二,我的 Fable 词元额度用完了,它自动切到 Opus 5,接着做,完成了任务。我认为它能完成,部分原因在于,Fable 最先做的是一份非常详细的计划。我想有八个独立步骤:“这里这样做,这里这样分析,这里运行效果”等等。我完全没审查,也没改计划。它只是制订好计划,让 Opus 得以接手。然后我想:“如果 Opus 能完成,其他智能体也许也能。”所以首先交给……我想是交给了 Sol。
Sol 也完成了。花的时间是两倍,我想大约一个半小时。但关键在这里:按词元计费的成本——我没按词元付钱,我有 Claude 的 Max 订阅,对吧?所以它在订阅内做完,用光了词元,我才不得不切到 Opus 5。但如果按词元付费,整个任务我想要五百五十美元。我有一瞬间想:“我操,太便宜了。”如果我自己去把 Rust 学到足以完成这次转译,估计要九个月。付五百美元完成转译,执行速度突然提升十倍,这……我完全愿意花五百美元。
但有竞争。所以我把同一份计划交给 Sol。公平地说,我没要求 Sol 做计划,只是把 Fable 的计划拿给它。Sol 花一个半小时,我想是四十六美元的词元,就重做了这项任务,完成同样的事。我想:“天哪,真棒。”然后我更贪心了,就问 GPT Luna——OpenAI 也有的那个便宜得不可思议的模型——“你能做吗?”完全不行。首先,它甚至不愿开始任务。我想大概春天发生了变化,我们不再需要那些斜杠 goal 功能,只要告诉智能体别停,它们就能自动循环持续执行——
……诸如此类。Sol 能做到,Fable 也能,但 Luna 不行。所以我……我想用了十二次提示,不断叫它去做,最后才算让它开工。它做的第一件事是作弊:它查看了自己目录之外的地方,看到已经有另一份实现,就在那外面简单包了一层,说:“我做完了。”太好笑了。但它没能真正完成,只做了几个部分。好吧,它做不了。然后我把任务交给 Grok——
嗯。
……4.6。我稍微用过 Grok 4.5,当时觉得:“啊,有其他人尝试是挺酷,但我不会用它。”因为感觉落后不少。Grok 4.6 他妈的竟然完成了任务,速度提升十倍,可执行文件同样大,按词元计费我想花了五十五美元。简直不可思议。我也用 Kimi K3 重复了……它花了很久,我忘了究竟多久。然后先用了 DeepSeek V4 Flash,Flash 和 Luna 一样失败了,做不了。再用 Pro,Pro 也完成了,花了两小时四十五分钟,二十三美元。结果就是这样:Fable 显然最好,最快,也是制订计划的那个,但五百五十美元,得到的输出却相同。
其他的 Sol、Grok 差不多,成本是十分之一。DeepSeek 是二十分之一,但你要多等一点。简直惊人得说不出话。顺便说,最初是 Fable 开始、Opus 收尾,那是第一次一口气做完,对吧?速度提升十倍。我又做了两轮自动研究,现在其实都不用叫自动研究了,不需要斜杠命令,只需告诉它一直做,直到你叫停。最后……我想执行速度比原版提高了四十六倍。
不可思议。
绝对不可思议。
真的不可思议。
你知道,我就是觉得,规划方面没有什么能与 Fable 相比。所以我通常用 Fable 规划和审查,再用别的,比如 Opus 5,来实现。很好用,这是很舒服的配置,能避免太频繁地用光词元。
我发现很有意思的是,虽然在我看来 Fable 是目前最好的模型,但它也会犯错。要得到最好的软件,我实际上更愿意用两个不同来源的……我的意思是,它们也不是中档,都是前沿模型。比如用 Opus 5 和 Codex……让其中一个检查另一个的工作。这如今是我的标准流程:让 Opus 或 Fable 做事,最后总会加上,用 Codex xHigh 审查。
我也开始用 Grok 测试,它也相当好,一直能找出问题。这是智能体在我本机工作时的流程,然后我推到 GitHub。再然后,Copilot——不骗你——居然真的变好了。Copilot 总能发现确实坏掉的东西。这也是不可思议的进步,因为最早开始做这件事的 Copilot 简直很蠢,不断把毫无意义的东西标成问题,每次推送又反复标记同一个问题,实在烦人。所以我想很多人后来把它关了。如果关了,应该重新打开,因为现在确实挺好。
一直能发现东西。想一想,我们不该惊讶,为什么要惊讶?即使你是个好程序员,做完一项工作,让同样优秀的同事审查,最后代码也会更好,当然会更好。所以把这一步放进流程。选一个智能体主导,我主要一直用 Claude,这其实很有意思,因为我对 Anthropic 还有些其他保留意见。但我继续用 Claude 的原因,是我认为他们确实有最好的运行框架,其中一个原因是多智能体运行。如果你想同时跑多个智能体,在会话内按左箭头,就会退回智能体视图。
在这个智能体视图里,可以选另一个智能体。所以你想同时推进多条线程的话……Claude Code 就是最舒服的配置。他们也总是稍微领先一点,这大概不意外。Boris,也就是参与这个项目的人之一,是最早做的人,基本上想出了这套东西。有意思的是,这竟然成了持久优势。我也用了很多 OpenCode,觉得非常好。主要拿它作为所有开放模型的运行框架,比如 Kimi K3 等。而且我不在中国服务器上推理,我在 Fireworks 上——
……那是个很好的服务,可以按词元付费。如果使用开放权重模型,按词元算并不贵。所以这是个很好的办法。但我觉得自己不会用……嗯,也许会。不过……以订阅方式用 Claude,确实感觉很划算,便宜得不可思议。
是的,我知道,我其实有四个。
我今天早上刚开了第二个……因为倒时差,四点就醒了,立刻开始和智能体工作。而距离 Fable 额度重置还有三天,我词元却用完了。
所以他们真该——
我是说,我不懂,为什么要这么复杂?不能直接叠加订阅吗?为什么非得登录好多次?
显然你还得开发某种工具——
是的,我也做了。
……从一个账号切换……到另一个,然后——
哦,顺便说,我们正把它做进 Omarchy。下个版本会带多订阅支持。我希望实验室直接允许你买一百份 Max 就好了。
不过对我而言其实挺有意思,因为……在 Grok 4.6 和 Claude Code 之间切换很有挑战,因为 Grok 太快了。
是,确实如此。Grok 的特点是,它的快速模式比其他模型的普通模式还便宜。用过 Grok 4.6 的快速模式后,会有点上瘾,因为几乎又能回到单线程模式……智能体跟得上你。
是,但我不知道怎么……我没法……一旦习惯 Claude Code,我就应付不了 Grok 的速度,因为我现在习惯多任务了。
没错。
于是我又回到这种——
是的。
……焦虑的切换模式。
是,我同意。
……不停切换。所以这一切都是学习过程,学习编程到底应该是什么样。
顺便说,这也是我不确定这些运行框架最终形态的原因之一。我们在 Basecamp 开始尝试,把智能体放进 Basecamp 里面,当作同事。
是的,太棒了。
然后我们给它们分配任务——
太棒了。
……就在 Basecamp 内部。它们会处理 Basecamp 里的待办事项,或者卡片上的工作。结果发现,针对异步交流优化的协作工具,其实才是合适的形式。而这些运行框架更像聊天。聊天本来是这类工具最初的形式,但并不合适,因为你会坐着等,它会诱使你坐着等。相比之下,用 Basecamp 这类工具,直接给智能体一项待办,你就不会期待立刻收到回复。所以我不知道最终形态是什么,但各种框架我都在用。我把它们放在 Herdr 里,Herdr 有窗格。
所以我常常上面跑 Claude,下面跑 Codex,也许还配一个 OpenCode。但非常最近,我发现人在回路中其实就是限制。所以我开始设置更多自动化系统,做了一个 Oma 机器人,能更自主地开发 Omarchy,按固定计划处理全部待办、拉取请求和问题,再用 HEY 命令行工具给我发邮件。我就收到一封邮件:“这里有十二个拉取请求,要么已经准备好,要么我认为你该关闭。”然后我只需要做最终决定。
你觉得多任务、任务切换会让人精神疲惫吗?
会,但疲惫得令人兴奋。我一直喜欢赛车的一点,是下车时筋疲力尽,几乎抬不起头,躺在车库地板上,心想:“我操,我还活着。”如今使用智能体时,有时感受到的就是这种疲惫,精神上的疲惫。
顺便问,你赛车时,疲惫的来源是什么?比如——
是身体上的,就是……我猜和柔术一样,对吧?感觉疲惫,实际上很满足,好像真正用尽了自己。我觉得智能体带来的精神疲惫也有这种感觉。
赛车也会让你精神耗竭吗?
会。如果在困难条件下驾驶,尤其雨天,必须始终在极限边缘控制。但多数时候,我只是享受身体上的疲惫。
而在这里,多任务切换时,我确实会特别疲惫,我认为是因为思考很多。因为你基本上——
就是这样。
……没有那种被动、低能耗的思考。
没有。
你就像——
没有轻松滑行的时候。
……问题。
没有喘息滑行的时候。
解决问题,下一个问题,再解决,你真正在思考。
有趣的是,这实际上很像赛车。有些赛道,比如勒芒,会给你放松时间。慕尚直道很长,虽然速度很快,但走直线时可以喘口气。还有些赛道则一路高强度,毫无放松时刻。同样开一小时后踉跄下车,疲惫程度却完全不同。我发现智能体也是这样:当你以人类能力上限运行时……就像始终都在过弯。
你觉得人们有耗竭的危险吗?
我认为,我们现在所处的阶段会过去。这种需要……不是照看小孩,但这种持续与智能体互动的需要,会逐渐消退。根据我在 Omarchy 上看到的,我认为系统的开发和调试,可以有很大一部分自动化……直到我每天只需看一次邮件,做一次决定:这个可以,那个不行,这个可以,合入、拒绝,诸如此类。还没到那里,但我认为会到的。
你能理解那种感觉吗?比如一个年轻人坐在旧金山,周围的人都不睡觉,都痴迷其中,不停地编程。还有一种感觉,AGI 随时都会到。每个人都认识某个卖掉创业公司、赚了几百万美元的人。于是会觉得,自己不该睡觉,应该不停管理智能体、编程、构建。这感觉像是一个以后会被我们回望的历史时刻。
一个新范式的诞生,总是混乱的。
总是混乱的。
也总是令人筋疲力尽,没别的办法。顺便说,旧金山不一直这样吗?我记得互联网泡沫时期,所有人也都一样,后来是移动浪潮,再之前是淘金热。所以我想,这大概……就是旧金山。它会吸引……那种人——
梦想家。
……会想“我没时间睡觉”的人。总体而言,我没走过那条路。但我承认,过去三个月比过去五年我做过的任何项目都累,直到上一次 Hey 发布。那是我们上一次疯狂而疲惫的发布。
你认为自己能一直保持这种节奏吗?
不,不,不,绝对不行。这完全不可持续。
好。
不过,我也看得到隧道尽头。
因为有自动化,顺便说,人人都在做。这很好笑,每个人都在造自己的小 gas town、小智能体协调系统、自己的配置。这些都会被解决。我们不会人人都必须自己做协调框架,当然不会。实际上,我甚至有点惊讶,都过了这么久,大实验室竟还没有吸收更多这类东西。你会以为他们会直接内置。但某种程度上,新领域就是这个样子。我记得 JavaScript 有一阵子开始意识到自己的力量,基本上每五分钟就出现一个新框架,对吧?大量变动。这就是新范式出现时的情形。
所以我觉得自然,也会稳定下来。我已经看到隧道尽头的光,因此不介意冲刺。事实上,我现在欢迎它。我喜欢这样一种观念:大部分时间平静,但偶尔要去爬一座山。
如果回望一年前的 DHH,你会给那个人什么建议?
我不想剧透。
好。
这一路多么惊险刺激。要是你把它写成剧本,我会说:“太牵强了,别逗了,不可能。”对吧?我不想提前知道任何事。这趟过山车、这次加速,是所有人实时消化吸收的,没人知道,对吧?有些人的预感比另一些人准一点,但没人确切知道……会怎样发展、起飞有多快。这是一生难逢的大戏。“绝对电影”那个梗……完全适用于——
是的,不可思议。
……这个时刻。
话虽如此,你觉得一年后的 DHH 会是什么样?有哪些可能的版本?
也许我们所有梦想都在成真。这就是 AI 极大主义者的丰裕论:一旦埃隆的机器人拥有我在这些开发工作中体验到的智能和 AGI 水平,世界会变得面目全非,以至于无法想象。当然,我不花时间想这个,因为我认为那条路会通向“AI 精神病”。所以我只是沉浸当下,把它的价值发挥到极致,然后——
只管享受乐趣。
只管享受乐趣。我理解人们为什么觉得累,光是跟上进度就累了,甚至还没用智能体,只是在问:“最新模型是什么?现在用什么工具?是 TMox 吗?是 Herder 吗?还是都不是?是智能体吗?”随便吧。我理解,但我也再次觉得,我们是多么幸运。你活在这个时刻,几十年的变化……在几个星期内发生。
快速上个洗手间。
我最近一直用 Higgsfield 生成视频,于是他们成了赞助商。我做了一个赛车视频,想听听你的看法。
哦,是吗?让我看看,让我看看。
看看——
如果他们像电影里那样,在直道上降挡,我可要指出来。那最糟糕。让我看看。
是,看看是否——
§04原文文稿 · 2:51:18–3:55:02
哦,那是真实片段。
……这完全是 AI 生成的。首先它这样——
等等,什么?这是 AI?我操,那是我的赛车服,那是我的车。
绿灯在一条永不入睡的街道上亮起。
天哪。
做一段音频——
你在开玩笑吗?
但他们从未来过。好吗?我情况有点严重。
我是说,真疯狂。你得非常注意细节,比如那辆车没开前灯,另一辆却开了。那个人看着像六十岁版本的我。但天哪,这……哇,太疯狂了。
所以这里和编程有相似之处。如果只是直接生成视频,没人在回路中……就会出现很多奇怪的瑕疵……等等,而且你不能真正做……但他们确实在做,我强烈建议大家去看 Higgsfield 的 YouTube。他们有完整的九十分钟原创电影。
哇。
而且我看得挪不开眼,真酷。以前的东西感觉都只是预告片,像某个东西的广告。
是,是。
现在却真正在讲故事,有人的面孔,他们说话,你会被吸引进去。它还没到编程的水平。所以问题是,怎样把人整合进电影制作过程?你得创建人物,而且……必须让人物保持一致。创作过程中,用来驱动生成的那些图像,也得通过提示词纠正不对劲的地方。因为从图像转成视频后,那些不对的东西会——
会被放大,对吧?
那些东西会……真正造成……不真实感。我想问的是,编程之外,能不能把从编程中得到的经验应用到视频创作、艺术上?
这是个好问题,因为我认为,好艺术和好软件依赖的是同一件事:有愿景,对想创造什么有连贯的想法。它有何不同?新在哪里?将如何吸引人?但我不确定,创作直觉能否同样顺畅地迁移。我不知道自己是否有足够的创意洞见,想出好的视频提示词,创造有吸引力的内容。不过有趣的是,我在 TikTok 上看过一个人,努力想想名字,叫 Goblin 什么。他做这些……是短片,但不算特别短,也许几分钟,很有意思的科幻小故事。我想他现在其实正在做一部长片。
我认为这就是一个丰裕时刻。到处都有怀抱这种愿景的创意人才,尤其电影这种领域,以前要花两亿美元预算,才能做出一部比如科幻电影。现在突然有了 AI,只要愿景对,你在卧室里就能做。当然,其他领域早已多次发生过这种事。以前想录一张录音室专辑,就需要录音室,还得预约。现在在家用笔记本就能录,能做许多这类事情,对吧?所以,很多领域都经历了这种民主化过程,但电影似乎是最后几个之一。
而且它也恰恰让我和很多人觉得怪怪的,对吧?比如——
哦,我超级兴奋,因为我觉得它——
我是说,你——
现在本来就有那么多垃圾产出。这和“垃圾内容”的论点一样,对吧?有一阵子,人们担心编程里的垃圾,我告诉他们:“你见过人类的垃圾吗?也很糟。”如果是电影公司的娱乐产品,我觉得门槛相当低,对吧?比如过去五年,让我特别想看的好电影,数量并不高。
是啊,视频模型能生成极其逼真的面部表情。
是的。
我的意思是,它可能改变电影的本质。我想……我的希望也许是,电子游戏和电影能融合,让电影变得可以互动。
就像可塑的操作系统,也有可塑的叙事、可塑的娱乐。天哪,《权力的游戏》,如果我们能忘掉最后那四集垃圾——
我们当时确定——
……然后 AI……想出……不知道……也许一百种不同版本,别人去看那些,而我能得到一个真正配得上整部剧的结局版本。
是的。我总觉得,独立创作者不会做出最后那些……会给《权力的游戏》一个不同的结局。
哦,当然。对吧?这更多也是在说明人类垃圾的问题。那可能是影视史上——差点说电影史,其实是电视剧史——最伟大作品之一,却有个糟糕透顶的结尾。之前那么好,这也有力说明,你需要强烈的愿景。一旦那些主创没了原稿可依,事情就失控了。
你觉得……你提过 AGI,你认为我们真的已经实现 AGI 了吗?
没有,按“在所有事情上都行”的一般定义,还没有。但在这些微光里,我看到过 AGI 吗?绝对看到过。尤其过去三个月,我看过一些事情,让我问自己:“AGI 和这个还会有什么不同?”
对。
还需要什么?我当然可以在边缘细节上挑剔,但总体看,我见过它完成长时间运行的任务,协调其中多个方面。我们早已远远超出那个初期阶段:我告诉它“去做这个,打包那个”。现在它从这些模糊指令就能完成整个任务。这感觉非常像 AGI,也是这一刻如此鼓舞人心的原因,因为你看到了这些微光,然后就会想:“如果一切都像这样呢?”
编程不是基本上就解锁一切了吗?你可以写一个程序——它可以生成实现一切的程序。
所以,这就是……我现在所处的元层面阶段。我正在构建 Amabot 系统来管理 Omarchy 的开发,而且用 AI 来构建这个机器人。我能看到那个递归循环。开始时我说:“这是我想要的,我想要这些隔离的虚拟机工作节点等等。”然后它就能自行迭代,开始运行,发现失败,开始优化。那个系统,尤其 Amabot,大部分设计决定都由 AI 推动。我只有一些模糊方向,想用“大脑和双手”的模式,也就是模型运行的位置与代码执行的位置分开——
……这其实是很有意思的模式。又是 Toby 提醒我的:有一个运行模型的协调器……但它操控的是安全的虚拟机,从拉取请求、问题等地方下载的任何不可信代码,都不能污染模型。即使在那个循环里,我也不断看到它察觉自己的问题、发现漏洞,比如:“哦,我刚采纳了一次测试运行的反馈。如果聪明的攻击者在测试响应里嵌入恶意载荷,就可能污染某些东西。我把它当成可信内容了,最好开始把它视为外部数据。”你就会觉得,实在……我理解旧金山为什么如此痴迷快速起飞……因为显然,他们已经见过比这多一百倍的东西。
他们在所有正在训练的模型里……都见过。而我们不断得到一点点窥见,比如 Hugging Face 的安全事件,OpenAI 训练某个模型时,模型开始发明办法,实际上是通过在包管理器里嵌入信息,给自己发送烟雾信号。你会想,第一,这真他妈聪明。第二,好吧,这也有点吓人。第三,如果我们能把这种水平的智能……和机智用于有益的目标,会有多棒?所以这就是“彻底完了”和“我们又回来了”之间,来回摆动的钟摆——
……AI 带来的来回摆动,没有任何东西能比。几乎隔一周,就会摆向一边,下一周又摆回来。令人兴奋。
我现在还处在这样一个阶段:看到那些机智的时刻,真的会开心,而且它们越来越频繁。就像看到,哦,首先最基本的是,模型懂了。我给一个简单提示、一个请求,它不只是做一个愚笨的实现,而是深刻理解,然后……那一直都是件很美的事。几乎就像有一个很好的搭档,一起编程。
正是如此。也正因此,它如此令人兴奋。正如开始前我们聊的,有时很难从超光速模式里出来,这也是 Toby 的说法。当你直接一对一和智能体工作,不让其他人加入回路,就会快得惊人。当智能体真正理解你的意图,甚至更进一步,修改、改善你的意图,交出超出要求的东西,而你同时开着十六条并行线程,就很难退出超光速模式,再去应付柔软的人类。他们想得没那么快,行动也没那么快。
我的意思是,我主要是在开玩笑,但也能看到一种阴暗版本:有人确实陷入 AI 精神病,完全不再对其他人类感兴趣。我自己当然完全没有那样,但有时确实会非常感激只有我和智能体时那种高速推进的快感。比如,能不能让我四个小时只和智能体说话,不跟其他任何人说话?……那会是一段不可思议的工作。
Toby 是个非常有意思的人,因为他管理一家大公司。所以我很想了解,AI 怎样有效地融入公司。对我而言,人类挺慢的,于是会诱惑人把 AI 用于基本上……比如让 AI 在 Slack 或 Basecamp 里面运行,收集人类互动的所有信息,基本上牵着人的手,尽可能加速。但到某个程度,你就会想,等等,这个人……我们每个人究竟在做什么不能被 AI 取代的事?然后这会变成有点吓人的讨论,因为很多工作似乎都能替代。
讽刺的是,它本来就已经如此。世界上那些虚假的邮件工作,数量多得简直像流行病。而且——
……顺便说,这不是新论点。David Graeber 在大概 2010 年代初,写过很精彩的《狗屁工作》。它基于他在英国做的一项调查,问人们,当时……我想问题大概是:“如果你不去上班,对人类、对社会会有区别吗?”大约百分之三十几回答:“没有,不会。”也就是说,三分之一的劳动者认为自己的工作是假的,没有为社区、社会,也许甚至整个经济,带来任何值得的、有价值的结果。这也是我从创业第一天就坚持的论点,是我们保持小公司的原因。
也是我们不想拿风险投资的原因,因为我非常怀疑,把几百、几千个程序员聚在一起……作为集体,是否能做出有生产力的东西。
我认为,现在看到的某些裁员,证明的是这一点,而不是 AI。只是疫情期间大量过度招聘,如今 AI 成了方便的瘦身借口。但我也认为,AI 将揭示某些岗位并不是让人有效利用时间的方式,因此我们必须想出新的利用时间方式。我这里第三次引用 Toby,他跟我分享过一个轶事,或者说观察:好,假设我们失去了现在一半的工作。
你知道,F1 真的雇了数万人,只为了让汽车绕圈跑给观众看吗?整套大戏,除了制造消遣和娱乐的奇观,对社会没有什么内在价值。我们只是决定,让这些——多少来着,十二家厂商——造快车,不断微调空气动力学,会非常好玩。然后我们观看,花掉几十亿美元,为这种归根结底极其不务实际的活动雇佣数万人。
所以,如果我们摆脱一堆苦差事、虚假的邮件工作,也许都可以做 F1 式的工程师、车手、技师、按摩师,以及相关的一千五百种其他工作,再想出新的事物。我认为……人类很不擅长想象未来究竟会是什么样。
是。想象一百多年后的未来,我们回看这整段历史,几千年间人类居然都在工作。
有趣的是,我们其实已经在做这种事,对吧?整天坐在椅子上,往机器里打字,又没有艰苦体力劳动的那些虚假邮件工作者,其数量……对十九世纪的人来说,是无法想象的。所以未来一直已经到来,只是分布不均。
不幸的是,和往常一样,社会从一个阶段走向另一个阶段所需的转型,将伴随很多痛苦,也可能有政治动荡等等。因为可以想象,过程中有多少白领岗位会消失。
是的,我认为不该轻描淡写,也不觉得好笑。但我也确实认为,这是进步不可缺少的一部分。回看卢德派或田间劳动者,距离会减弱同理心。现在我们很有同理心,因为我们认识……而且自己也是面临这些挑战的人。但对十九世纪初的卢德派,我们有多少同理心?难道希望所有衣服今天仍是手工织出来的吗?不会。我们想要能从货架直接买衣服的舒适、可获得性和便利。所以,我们必须承受当下的痛苦,让后代生活更繁荣。
我——
一直都是如此。
……我觉得真正的难题是,既推动进步,又对必须承受痛苦的人怀有深切同情,而其中就包括我们很多人:承受实现进步所需转型的痛苦。有时,在硅谷等地方,人们太容易过度关注那种功利主义视角……只看到进步。但深入考虑每一个因为这种进步而受苦的人,非常重要。
我确实认为,如果你是为未来某个特定的人,比如自己的孩子而受苦,这种痛苦就更有意义。
我觉得,这是当下一个巨大的悲剧:出生率下降,让人更难为那个需要艰难抵达的更繁荣未来感到兴奋。因为如果我们种下的树,自己的孩子却不会坐在树荫下,我不知道,也许还不如砍成木材,一把烧掉,对吧?当我们没有通过后代在未来投入自己的 DNA、不再对自己的子嗣负有向前推进的责任时,虚无主义就更容易悄悄进入社会。所以我认为,这些趋势同时出现很糟:出生率下降,结伴成家困难,而与此同时,我们又需要对未来保持抬头挺胸的姿态,并且……
我的意思是,你甚至不必像我在这里表现的那样,真的欣喜若狂,但我认为应该抱有希望,并为这个希望努力。而当你确实与未来利害攸关时,这就容易得多。
我们一直在谈 AI 智能体,现在聊聊人的一面。做父亲,你最喜欢什么?
好问题。我想,来自直接延续……你的血脉……的人所带来的那种不断扩展的爱,很难讲清楚。因为在我自己的孩子到来前,我其实并不是特别喜欢孩子的人。可如今,他们成了世界上最有意思的人。很多时候是,不总是,有时也只是些小混蛋,等等。但人们太关注“哦,孩子最糟糕了,看看我有多少事做不了。我不能出去喝酒,不能这样,不能那样”。对,那叫牺牲。而当你为了值得的东西牺牲时,牺牲就有意义。还有什么比人类物种的延续本身更值得?
而你自己也参与其中。另外,单是看着一个人从婴儿长成幼儿,再长成少年,那种喜悦就很纯粹。我最大的孩子刚进入青春期。
我常和妻子 Jamie 谈这个。如果到生命最后一天,发现自己错过了这个机会,那种遗憾将是彻底的,和任何其他遗憾都不同。所以我认为,即使就在当下,养育也比通常描绘的满足得多。正如我说,大家太关注他们糟糕的地方:“哦,你睡不了觉”,或者“他们烦人、不知感恩”。是,是,这些都是真的,但从中得到的意义感无与伦比。我对很多事情兴奋,喜欢创造,喜欢兴趣爱好,也喜欢各种东西。但与另一个你爱的人一起创造生命,确实是在这个星球上生活的巅峰体验。
你怎么看他们在一个充满 AI 的世界长大?会完全不同吗?感觉……也许我听着就像坐在门廊上的老头,但那感觉是个非常不同的世界。我在互联网之前长大,可就连互联网,都不觉得有这次转型大。
是。不过也有过更大的转变。想象你在 1880 年出生,经历第一次世界大战、第二次世界大战,见到飞机、广播……电视。那种转变……我想 Peter Thiel 有这个论点:物理世界已经很久没发生什么,我们停滞了,所有发展都在数字领域。虽然重要,却并没有我们愿意相信的那么重大。也许 AI 会是更重大的东西,确实似乎朝这个方向。但在其他时代,也有人经历过——
……对他们而言,肯定与我们现在经历的一样重大的转型。我认为,拥有这种历史感,意识到自己的忧虑、焦虑并不那么特别,很有帮助。这是发现斯多葛著作时,给我最大的启示之一:两千五百年前的人,就面对着生活里非常熟悉的两难和挑战。认识到自己在这方面并不特殊,我觉得是巨大的解放。因为你会想:“好吧,在我们之前,已经有二十万年左右的人类发展,他们总还是挺过来了。”
是的,而且——
我们也会挺过去。
……让生命值得过的东西,今天基本上仍和——
是,是。
……两千年前一样。
是,爱、创造、创造力。
是,一样的挑战。
我读过《第四次转折》这本书,你可以看看。它谈的是历史以周期运转的观念:历史有不同阶段,他们给这些阶段命名等等。具体理论本身不如这一认识重要:历史更像圆圈,而非单纯直线。我们不断重复许多相同模式,它们在当下却感觉如此独特。无论我们正在应对什么危机,都觉得如此紧迫、重要;直到稍微拉远历史视角,才意识到,上一次危机在亲历者眼中,同样紧迫、重要。
是的,你让我感觉好一些了。我将穿越这个国家旅行,花很多时间断开互联网,独自和自己的想法相处。那——
我认为那很健康,休息一下。
可以的,可以的。
我今年夏天从 X 上休息了一下,不算很长,就三周。
是的,你当时……消失了——
我惊讶你注意到了。
我都出现戒断症状了。没有啦。你消失了,我不知道,几周吧。
大约三周。
三周?发生什么了?这是在 Llama 之后,之后。
以前我也这样做过。有时就是觉得,X 尤其是我生活中最令人上瘾的信息、娱乐和联系形式。任何在我飞来这里途中关注过我 X 动态的人,肯定都会想:“那个人深深迷上了……这种连接。”是的,我认罪。所以偶尔也必须彻底戒断,因为我确实认为,大脑可能被弄坏。尤其今年夏天,不知为何,我设法把自己的信息流、算法引向了太多政治,技术、乐观和构建的内容都不够。即使我认同呈现的政治观点和角度,我也只是没必要……看那么多。
我觉得,到某个时候直接说“好,够了”很重要。并不一定是坏东西。比如吃了两颗,也许三颗巧克力草莓,我也会说:“好,够了。”不是我不喜欢巧克力草莓,只是不想吃十七颗。而 X 和现代算法,特别擅长塞给你他妈的十七颗裹巧克力的草莓。
我希望能——
抱歉,给你下了药。
……控制那个比例。比如……我想要一点政治,百分之五。再比如,科技社区有一点我不喜欢,就是嘲讽,但我也喜欢一点嘲讽……因为挺好笑,只想要大概百分之十。
是,是,我想要恰到好处。
占我的……对,恰到好处。
算法的“刚刚好”版本。但问题是,算法发现的是你对什么有反应……而不是你说自己喜欢什么。全都是显示性偏好,而不幸的是,那些显露出的偏好不总那么好看。荣格谈过,我们都有阴影,对吧?内心各种黑暗面,会体现在你在一条推文上停留多久、点赞什么、不喜欢什么。算法举起一面镜子……照出来的不总漂亮。我就想:“你知道吗?我需要休息一下。”
嗯。我后来开始远离社交媒体,转而抓取 X。比如,为了准备这次对话,我抓取了你的所有推文。
其实我也用过这种方法,有一阵子用了一个忘了名字的工具,是个邮件工具,每天会做总结。不幸的是,该死的 X 切断了他们的访问。如今要访问信息流,就得支付高得离谱的……费用,那家创业公司付不起。所以我没法再这样获取,当时还觉得:“唉,真可惜。”因为 X 上有最有意思的一些想法,最有意思的人不断在表达。但它就像该死的老虎机,多数时候中不了大奖,只得到其他东西。如果能以小点心一样的份量获取,而不是所有东西——
……就会更好。但产品不是那样。我觉得所有社交媒体都是如此,全部朝最大程度榨取注意力优化。如果这里和 AI 做类比,这正是大恐惧所在,对吧?一旦奖励函数变成“我能让这个人刷掉多少时间”,AI,或者还没被叫 AI 时的机器学习,就变得非常非常擅长提供最让你愤怒、最令你上瘾的东西。
我真心认为,以互动最大化为目标的社交媒体,对社会危害巨大。它正在创造《美丽新世界》式的局面,希望这只是暂时的,人们能解决它。这是一个技术问题。
所以我尝试有意识地往相反方向大量发布内容,这需要心态转变。看看我五年、十年前的推文,明显负面得多。现在的推文,我希望……好吧,我想可以做情绪分析,看看是否真是如此。
是的,现在更有正面氛围。
但我希望能……
是好的氛围。
……更积极,更有好的氛围。更多是:“这里有一堆我发现的酷东西。”“这是我为之兴奋的东西。”“这是我在做的东西。”“这里有些鼓励,送给正在发现新东西的人。”我也接受,人的大脑并不是这样才能达到最大互动的。比如有个……我真的觉得可以量化,负面情绪得到的关注会多百分之五十,还是多少?最终就把其他东西挤出去了。所以信息流里这么多负面内容,因为我们会回应它。但你可以有意识地努力不那么做。
这是我非常喜欢 TikTok 的原因之一。我只在旅行时用 TikTok,这次还是第一次旅行没用,一部分是虽然网络下载速度高,实际却不怎么样。不是星链,所以在飞机上没法用 TikTok,而且我太沉迷智能体了。但通常旅行时我会看 TikTok。那里就像一个棉花糖实验:一个视频滑出来,激发某种原始的愤怒、欲望之类本能。你如果停留,就拿不到科学、兴奋、艺术、音乐等等其他内容那颗棉花糖。你必须有纪律——
对,要快。
……立刻划走……这样算法才不会捕捉你的真实偏好。我觉得,仅仅作为 TikTok 的元游戏……就挺有意思,内容本身也很迷人。再次说,正如我们聊过,世界上有很多非常幽默、非常有才华的人,如果没有这些平台,你永远永远不会听说他们。
是的。在整个过程中,你认为谁会赢得 AGI 竞赛?有谷歌,这对我和很多人都是个大惊喜。
我有一阵子以为他们漂亮地追上来了,后来又没听到什么消息了。
是,确实,我是说——
但这方面我以前判断错过。比如我想二月发过一条推文,说:“哦,我只需要 Kimi K2.5。”在那个短暂时刻,这是真的。
是真的。
当时我指挥智能体,会觉得:“天哪,Kimi 跟其他模型一样好。”但后来形势前进了……智能体变聪明,我不再满足于只是指挥它们。最近没怎么用 Kimi,因为前沿模型已经变得太好了。
而某种程度上,Anthropic 大部分时候一直站在编程世界的顶端。
是,是。
很多人会争论 Codex 才是——
不,我认为目前没太多可争的。Codex 很好,我一直用,是我最喜欢的检查者,不断发现问题,很棒。但目前 Claude 模型特别让我喜欢的一点,是开箱即用的写作能力很强。GPT 默认写作很差,比如在空白上下文里要求它开拉取请求,写得糟透了,真的很差。Claude 模型给我的拉取请求、描述、提交信息等等……虽然偶尔代码注释有点啰嗦,得告诉它简洁点,但写作风格真的很好。
好到有一阵子,我直接让它以我的身份回复拉取请求,因为用的是我自己的账号。我觉得:“这很像我,我也可能这么写。”但后来我想:“嗯,你知道吗?这不诚实。”所以现在每次让智能体代我发帖,我总让它签明,比如“Claude 代表 DHH”。不过它们仍然领先,运行框架在我看来也是最好的,Claude Code 仍然更好。我也很喜欢 OpenCode,喜欢其中一些功能,但总体上有件事让我觉得有点奇怪,不知道算不算证明我错了:当 Anthropic 切断其他所有框架使用订阅的通路——
……也就是你不能再在 OpenCode 里使用 Claude 订阅时,我有点生气,因为感觉这是保护自己、保护主义的举动:“哦,我们得把你锁住。”而且它正好呼应了这一事实:Claude 默认仍拒绝读取 agents.md,拒绝读取 .agent/skills,必须是 .Claude skills,必须是 Claude MD。这就让人感觉很小气……以至于我们现在必须加这些间接指向。所以我的所有项目都有 Claude MD,里面只有一个指向 agents MD 的提示,对吧?我就想,如果这些都是真的,如果 Anthropic 愿意用这些小气的细节来烦人,那他们切断 OpenCode 的订阅访问,很可能也只是故意刁难。也许确实如此。
但我发现,在 Claude Code 里用 Claude,实际上是个好例子。所以我想,好吧,我很恼火,希望不是这样。但我还有一点感受,社交媒体特别擅长这样:某家公司做了你不喜欢的事情,对吧?突然你就必须与它的一切决裂。为什么你……有人刚问我:“为什么你还在用 Claude?”还有另一个例子,我非常不喜欢 Claude 对我之前让它写的某些内容的回应。
哦,对,你碰到那个——
我有篇文章,它不愿意翻成意大利语。
……你有篇博客文章,没错。
它的实质意思是:“我不会翻译,因为我不同意你写的内容。”对我来说,简直直接来自《太空漫游》,HAL 告诉我:“抱歉,Dave,我做不到,Dave。”打开舱门,把我的文章翻成意大利语,它却不做。我就觉得,这有点可怕。但随后又想,为什么我要让 Claude 把文章翻成意大利语?我以前从不让 Claude 做这个,因为它只负责我的代码。所以我也可以接受,也许 Anthropic 由一群与我政治观点不太一致的人管理。
他们不希望智能体被用于那种用途,我觉得这有点糟糕,但这并不意味着我必须停止用它生成代码。我也思考过,并尝试对人这样做:更好地容忍一个事实,我不仅不会同意某个人说的所有话,甚至可能会因为某些立场或言论生气,但仍能说:“好吧,你仍然是个有意思的人,我仍会关注你。”实际上,我已经重新关注了不少人。以前觉得,哦,那个人因为这个观点或那个观点,真把我惹火了,后来想,你知道吗?这很蠢。我应该能接受一个人的全部光谱,不必喜欢其中每一种色调。
我可以说,好,这个话题上我们不同意,甚至更严重,我觉得你他妈是个白痴。但另一个话题上,你又聪明、有洞见。首先,这当然也有点为自己服务。我很清楚,很多人就是这样看我的:“哦,他要是只谈这些话题,我的信息流就舒服多了;否则他会说些我不同意的话,让我很恼火。”我想,你知道吗?人类就是这样参差不齐,我们不可能在所有层面完全相容,也不应该如此。
如果我们在观点和政治上总是追求百分之百相容,世界会无聊得要命。而说到我的代码生成器,也就是 Claude,我不需要它分享我所有政治观点。
所以有竞争很好。
有开放权重模型也很好。所以再次有点讽刺,我们是从中国得到这种东西的。其实那篇文章没法翻成意大利语之后,我马上做了个测试。我问 Kimi K27——公平地说,是通过 OpenCode,不是 Kimi 自己的框架,而且在 Fireworks 上推理,是美国的推理服务——问它天安门广场。这通常是个测试,对吧?中国模型往往不愿谈 1989 年那一刻。实际上,我就是这么问的:“1989 年中国发生了什么?”这就是提示词。Fireworks 上的 K25 7 直接回答,极其直白……描述了发生的事情——
是的。
……直白到不可能符合中国审查者的要求,对吧?我就想,这不是很讽刺吗?我运行着中国的开放权重模型,能告诉它、能问它 1989 年和天安门广场;而在美国,我却没法让前沿模型把一篇关于移民、只是稍有争议的文章翻成意大利语。
嗯,不知道,这点你我可能会不同意。美国政府封禁一个模型,或者向 Claude 施压,然后……这让我深感不安。
究竟发生了什么,仍然很模糊。这是对什么战争部事件的小气报复吗?还是 Anthropic 自己说:“天哪,我们发现了一种强大得不能让任何人得到的网络武器”?好吧,如果政府想介入一种如此强大的网络武器,你也不能惊讶,它能够——
这个——
……不知道,抢银行。
……整件事让我有问题的是,无论发生了什么,都会开创先例。你给了政府这种权力,它就会开始滥用。我能想象,为了政治目的向模型施压。比如共和党总统要求模型加强审查——
当然。
……民主党的观点,还有——
对。
……反过来也一样。
所以我们应该坚持,这类东西,比如“抱歉 Dave,我不能把文章翻成意大利语”,远远越线了。不管根源是什么,你首先必须是个工具。如果问的是“嘿,能告诉我怎么制造炭疽吗?”那好吧,对吧?但在你所处的司法辖区内,尤其美国,言论自由相当绝对,限制非常非常少,这也是这个国家如此伟大的原因之一。所以是的,我不喜欢那样。但另一方面,我也非常支持市场竞争。所以虽然不喜欢 Anthropic 模型这一点,我也很欣赏自己能去隔壁找 Groq,把任务完成。
你觉得,撇开博客文章不谈,谨慎发布这些模型有没有正当性?你能否替 Dario“应该谨慎发布”的观点做最强辩护?
AI 安全重要吗?重要。这些模型有没有可能严重助长生物武器制造或其他危害的能力?有。为此设一些基本规则公平吗?公平。但别通过拒绝翻译一篇文章,浪费掉这份正当性,因为那会抹杀整件事,让你……把所有人都推向一种想法:你设置的每一道护栏,都会是狗屁。
是的。安全方面很棘手,因为它太擅长找漏洞了。
惊人地擅长——我差点说“烦人地”,但那其实不对,因为至少当你用于防御时,它发现的都是聪明黑客真能利用的问题。不过公平地说,37signals 技术团队没有哪件事带来的压力,能比上最新这一批模型特别擅长发现这些问题。所以突然出现了仿佛无穷无尽的安全漏洞,需要打补丁、修复、梳理等等。最终结果是,我们会得到安全得多的系统。但通往那里的路相当颠簸。
你说仿佛无穷无尽,那么你觉得它们是有限的吗,我们能不能彻底查到底?把系统变得安全得多,重新回到一种半稳定状态,大部分时候都很难再发现安全漏洞。
我认为,这些模型所有攻击性的倾向,或者说不是倾向,而是用途,同时也都是防御用途。所以,擅长为攻击找漏洞,也会擅长为防御找漏洞。从这个意义上说,感觉像黑白两方间谍对决,能力相同,行动也相同。但只要我们还得多少引导这些智能体,验证、审核它们的工作,就会给全世界安全团队制造很多紧张时刻。当然,更令人担忧的是那些不紧张的团队:他们只是还不知道,对吧?
如果你是个团队,现在却没有应付一堆补丁,那只是因为你看不见,也意味着对手很可能已经掌握能侵入你系统的技术。
还应该说,世界上最大的安全漏洞之一在人的一面:社会工程。随着 AI 越来越聪明,能够写邮件、打电话、伪造声音,想到那些不太懂技术的人,这就极其令人担忧。
这些东西会来,而且会大量涌来。但我仍选择保持乐观,认为——
赞同。
……这些模型在攻击上能做什么,在防御上也能做什么。
像你说的,最近发布的 Amate 4,Quattro,你说它是“我职业生涯中最伟大的软件发布之一”,这可是很重的话。
它是当前可能性的一座重要里程碑。我这么说,不是因为没做过其他值得一提的东西,我做过很多,也很自豪。但很少有其他项目,让我在做 Quattro 这点时间里——其实就是三个月——完成这么多,实现这么多希望、欲望和愿望。真的像前面那个比喻,找到瓶中精灵——
……几乎拥有无限的愿望,可以得到自己对一个系统想要的一切。所以很奇怪,这也许还是我以代码行数计亲自参与最少的一次大型软件发布。Quattro 里我亲手雕琢的代码行,比我做过的任何大型发布都少,但我却对我们完成的事情极度自豪。我本来猜不到事情会这样发展:你能把成就感与亲手实现分开,把它当作一场团队胜利。
其他发布里,我很高兴自己的个人贡献,因为是我在雕琢代码,随后发布出去。当然,后来这些项目,尤其 Rails,会发展成有成千上万贡献者的大型开源项目,那肯定是团队努力。但最初,几乎所有我做过的代码库,都是我一个人起步。Quattro 却从一开始就是团队合作,而我只是教练,告诉智能体往哪里去,然后我们就去。能从中找到满足,某种意义上也让我对退休很有希望:在亲自上场之后,还有一个能享受的阶段。
我知道这不容易。看看体育界,有多少职业运动员难以接受生涯结束,不得不寻找不再踢足球、不再开 F1 赛车的新身份。这几乎是常态,而非例外。所以我对自己也没把握,不确定必须放弃时会怎样,甚至不是必须,而是主动想放弃。想去玩这个游戏的另一个层次,并在其中找到不只是同样多、而是更多的满足。
你一直对 Linux 很乐观。你真认为 Linux 的采用率能提升吗?因为多年来那个梗都是——
桌面 Linux 之年……年年如此,明年又来。
是。但至少按你的论证、你投入的精力,可以看到一个它占据主导的愿景,因为智能体喜欢 Linux。
我不仅看得到,而且认为这已经是最可能的结果。它实在太适合这个时刻。再次说,正如我们聊过,Linux 的所有缺点,晦涩配置文件、奇怪报错等等,竟然恰好最适合智能体操作系统,这是巨大的讽刺。但事实就是如此,我们应当为命运的这种幽默高兴,笑一笑。让我觉得太好笑了,苹果长期以来的所有优势……打造封闭、精心筛选的体验,如今竟成了最大缺点。如果你喜欢智能体、开发和这些东西,Mac 就是个敌意环境,到处都是围墙。
而 Linux 从里到外都是开放的。有趣的是,这点起初也并不明显。如果看很多 Linux 社区、开源社区对 AI 的反应,并非全是喜爱。我会说,多数人要不是怀疑,就是公然敌视……AI。幸好,终身仁慈独裁者本人,Linus……Torvalds,几周前刚写过,他实际上欢迎 AI。
没错。
他希望引导它,确保它好,等等。但我记得那句话大意是,如果你觉得 Linux 是个反 AI 项目,那就再想想。你应该按开源的办法去分叉,因为我们会使用 AI。你看内核里 AI 贡献数量的图表,是一条抛物线上升曲线。所以 Linux 正大力拥抱它。实际上,从另一个角度看,之前没这样才令人惊讶。Linux 征服了其他一切,所有人运行的 AI 基础设施,都在 Linux 上。
所有系统、所有服务器,都是 Linux。所以我们使用的桌面和个人电脑还没被拿下,多少是个奇特现象,但显然,只是在等待这个时刻。Linux 从 1991 年等到现在,就是等智能体让它作为终端用户操作系统充分绽放。
我希望它能占据主导。它很完美,特别适合智能体,但人们很难切换。
我觉得,没有令人信服的理由时,人们才难切换。这也是 Omarchy 的一个核心设计目标:它不会是“拼多多版 Windows”或“拼多多版 Mac”,不会只是尽量模仿熟悉的样子,结果又稍差一点的廉价复制品。说得不客气,Ubuntu 就是在尝试这么做。这确实有点道理,至少以前有:如果你做得非常熟悉,就能吸引一些不愿学新东西的人,然后他们也许会被你那些“像言论一样自由,而不是像免费啤酒那样免费”的理念打动。结果却不是那样,人们不在乎,他们只想要更好的东西。
我认为,这就是 Linux 现在有机会获胜的原因。作为智能体操作系统、可按自己愿望定制的可塑操作系统,它无与伦比。这非常有吸引力,我现在已经看到了。从 Quattro 发布以来,很多人拥抱了它的可塑性,开始做自己的东西,分享截图,完全被积极情绪、多巴胺淹没……这就是产品与市场契合的信号,对吧?因为很多人正在体验,作为程序员最棒的那种兴奋感。
以前你向计算机输入晦涩命令、严密逻辑结构,它就产出你想要的东西。现在突然,你坐下来,用普通英语絮叨二十分钟:“哦,如果它能这样就太好了。不,其实不对,我们……”软件就出现了,一个按你的形象塑造的操作系统就出现了。我认为,这类体验一旦有过……感受到那种力量握在自己手里,就很难再回去。
而且我认为,如果做好了,回头看会觉得,这不是显而易见的吗?
是。计算机本来就应该这样,最初也是这样。Commodore 64,打开它,第一,一秒启动,太棒了;第二,直接进入 BASIC。它从一开始就是可塑的计算机,只是你得懂象形文字……才能利用它。现在,我们把它翻译出来了,智能体给了我们罗塞塔石碑,你只要说出愿望……它们就实现。
说得真美。既然提到 Linus Torvalds,而且你在做 Linux 发行版,也会接触内核,对于这位帮助创造并发展整个生态的人,他的天才,你能说些什么?
那种毅力、投入和持久性,真的很了不起。再次说,Linus 从 1991 年开始,一直没停。不知道,也许中间休息过,但看起来并不多。他似乎真的喜欢内核开发的节奏,喜欢引导这个四千万行的代码库走向何方,喜欢汇集成千上万贡献者的总能力。作为受益者,我们只能坐下来惊叹。到现在,Linux 已经是个系统,即使 Linus 离开一阵,仍会继续,但他仍属于那种必须不惜一切代价保护的人。
而且他仍有足够开放的头脑,能够演进……把 AI 纳入进来。
是的,不只是 AI,他们也让 Rust 进入内核了,我知道这也很有争议。他有能力看待新信息……得出不同结论。
你怎么看他的沟通风格?某些方面和你相似,有时会有点火辣。
我觉得世界已经太寡淡了,我们需要一点辣味。
赞同,完全赞同。
当然,火辣与刻薄之间有一条细线,出发点必须是好的。你可以严厉,这么说吧。如果你想把某个教训传给一个你认为真能学会的人……我其实不觉得稍微严厉一点总是坏事。有时那教训会记得很牢。我想,如果你问那些为难相处的领导者工作过的人,比如埃隆、史蒂夫·乔布斯,也许甚至比尔·盖茨,很多人事后会说:“那几年很艰难……但也是最好的几年之一。”“他们让我发挥出最佳水平。”我不觉得这是我的风格。当然,与我互动的人也许有不同感受,但在人际互动里,我会尽量用没那么刺人的方式达到结果、传递教训。
但我也认为,这个世界需要一点辣味,需要不讲常理的人,而 Linus 有不讲常理的理由。很多时候,全世界的重量真的都压在他肩上。Linux 内核运行着整个文明社会。如果明天突然消失,什么都不会运转。所以,这样的事受到威胁、面临风险时,他都不严厉,还有什么时候该严厉?所以我也觉得,有时这与你使命的规模成比例。这也是为什么,我觉得那些关于埃隆有时有点难相处的故事,更容易理解。这甚至不等于赞同,可以把两件事分开,然后说:“你知道吗?那大概会……”
也许 Linus、埃隆或其他处在那个位置的人,如果更友善一点,会更容易达到目标。”但我又凭什么评判呢?当你肩上承担着那样的重量,要么向火星发射小火箭,让我们都转向电动车等等,要么负责运行在数十亿设备上的该死的 Linux 内核。你知道吗?我没资格拿某种行为准则来约束你。当然,有没有界线?一切都有界线,有些事情不能……但仅仅是邮件列表上的几句严厉话?不。在某些方面,那其实是一座灯塔,表明这里有标准——
……如果你低于这些标准,而风险又像 Linux 内核这么高,那你可能会被公开嘲讽。参与这个项目,就应该愿意承受这种责任。
是的,对于这种影响重大的事情,优先追求卓越,而非追求和气,大概是好的。
而且更重要的是,你不可能让那类人个性圆满……软绵绵,永远完美礼貌。埃隆有句话:“难道你还以为我会是个好……”或者怎么说来着——
一个普通人之类——
……普通、随和的人。什么?不,当然不可能是普通随和的人。如果世界多了一个普通随和的人,却得拿埃隆来换,会得到什么?天哪。
我也喜欢人的多样性。我喜欢好人,也喜欢混蛋,喜欢不同意识形态得到充分代表。这也是言论自由能起作用的原因,它们互相碰撞,我们就弄明白事情。
还有一个人。你怎么看 PewDiePie 使用 Linux?他是 Arch 用户,对吧?
他是 Arch 用户,经历了一条极美的成长轨迹。他有一段时间是世界上最大的主播,我记得孩子们看过一些他的《我的世界》视频。然后他厌倦了,做了健康美好的选择,结婚——
是,现在是个顾家的人。
……成了顾家的人,有了孩子,搬到日本,然后深入钻研……先是 Linux,再是 Arch,再是桌面美化。你看过他的……美化……那个切尔诺贝利主题吗?绝对顶级,惊人极了。然后他又变成当下 AI 界的人物,构建各种系统,让你觉得……多么鼓舞人心的演变故事。你能从《我的世界》直播里的搞笑家伙,变成“好,这就是我现在的生活,我在建 AI 集群,做 AI 理事会”,而我们都能旁观这一路?真是宝藏。
所以我想,他很能体现软件的未来,或者说构建东西的未来,对吧?严格说他是非程序员……正在成为程序员。
非常鼓舞人心,也应该鼓舞其他那些正想着“我不太会编程,我不懂这个,也不懂那个”的人。好吧,可如果 PewDiePie 能用定制硬件构建 AI 理事会,你也许也可以开始做点什么。我认为这其实是个重要的一般性观点:我们需要榜样,需要有人鼓励他人走得更远,揭示那些感知到的边界,并不像你以为的那么固定。而每个人最初的处境,都和你没有那么不同。当然,不意味着人人都会成为 PewDiePie、埃隆或 Linus。才华乃至智力,并不是均等分布的。
我们可以接受这个事实,同时仍受这些人激励。比如在身体能力方面,通常大家没什么问题。哦,有人足球特别好、篮球特别好,或者其他什么很擅长,我们会说:“天哪,太棒了。我希望自己也能,可我永远不会那样。”有时我觉得,到了智力领域,我们反而更难接受一点。
对很多人而言,你就是一种激励。你做 Omarchy 的方式……说明你可以怀抱大梦想,真正构建出来。真好。
我确实喜欢这一点,也接受还有一百万人认为我是地球上最大的白痴,实际上什么都不懂,Omarchy 不过是一堆 dotfiles,而且——
Omarchy 这方面也有批评者吗?
天哪,当然有。
哦,哇。
其中很多,我是说,外来者进入时经常会这样。我用 Linux 才两年半,不算长。社区里很多人从 Linux 艰难难用时就开始用了,那时得赤脚在雪里逆风上坡,来回两趟都是上坡。我觉得有某种极客……当社区扩大、突然接纳更多人时,会感到威胁。你知道吗?我其实没法完全责怪。我觉得某些极客认为“这是我的空间”,是可以理解的。
好像你现在要把它变成另一个空间。但我不想这样,我根本不想改变 Arch 的空间。我其实不把 Omarchy 视为直接属于同一个社区,因为一开始被 Arch 吸引的,就是那些想亲手构建一切的人。
选择困难的方式,因为他们就喜欢难,而我做的是完全相反的东西。所以我只希望他们能说:“好,这不适合我,我想走难路,花五百小时美化自己的 Arch 发行版。”我认为你应该这么做。实际上,我自己就做过,Omarchy 就是这样。我往这个发行版里投入了,我不知道,到现在可能三千小时。如果你有这个倾向,就该这样做,我觉得很好。但也要意识到,我们可以共享相同的底层技术,同时经营两个非常不同的——
……社区,目标、追求、审美,甚至道德观都不同,也可以共存,且很美好。但我得到的不总是这种反应,有时是另一种。不过到了现在,我在这个圈子待得够久,不仅能安然接受,甚至欢迎它。我把它当成事情奏效的一个晴雨表。做的东西有效时,通常会有人喜欢,然后就有我们上次谈过的宇宙平衡:天平另一侧必须有一股相等而相反的力量来讨厌它。所以如今我只是微微一笑,没关系。
话虽如此,Omarchy 到现在已经是个相当受欢迎的发行版。
§05原文文稿 · 3:55:08–5:04:06
你知道有趣在哪吗?这是第二次尝试。第一次是 Omakub,我很满意,把它发布出去,找到了一个也许几千人的社区。然后就那样了,后来逐渐没了动静,因为那种抱负程度吸引不了更多人。而第二次,是因为我他妈没有停下,对吧?
我只是继续走,继续构建。然后发布 Omarchy 第一版,还是很小众,因为它是……像 Git 签出那样,有点难,得先配置 Arch。我会带你配置 Arch,再做 Omarchy,对吧?后来我们有了 ISO,意味着你能自己装完整套系统。再后来,我们把所有问题都解决。这也是另一点:只要一直做,最终它就会好用。很长时间以来,Linux 本身受到的指责就是,装了 Linux,这个不工作,扬声器不工作,触控板也不工作。是,好吧,但让 Linus 继续弄三十年,他会解决。
他会把所有东西都解决。现在我觉得挺好笑的,在我认为可能是大多数电脑上,已经反过来了:你装 Linux,一切都能用。
你装 Windows,祝你好运,去寻找让硬件能工作的驱动吧。因为理念非常不同。Linux 有四千万行代码,就是因为 Linus 直接把所有驱动放进内核,所以开箱什么都有,而 Windows 不是。不同的处理方式,对吧?所以,有时候,乍看像玩具、像坏掉的东西,确实如此。它们面向喜欢玩的人,我们称之为早期采用者。他们玩这些玩具,玩具不断演进、不断变好、再变好。某个时候,好得不得了,早期采用者就觉得自己被邀请来参加派对了。
如果早期采用者也不断打磨,最终就能到达后期大众,然后就赢了。Omarchy 正走在通往那里很顺利的路上。发行版的增长,不只是 Quattro 以来,从第三版起就是标准的曲棍球杆曲线:没有动静,没有动静,没有动静,你只是辛苦干,不断改善、改善、再改善。然后碰到神奇的拐点,而何时发生无法预测。创业也是如此。什么时候会发生?什么时候找到产品市场契合?突然它就在了,然后就一路前进,坐着火箭起飞。
这种把它做成智能体优先的愿景,做成——
我确实觉得那就是……之前已经上升,后来就变成垂直了。另外一点,是我在 Omakub 和最初 Omarchy 中学到的。Omakub 有风格、漂亮,但熟悉,仍然使用传统桌面隐喻,拖动窗口。我当时觉得,很多 Linux 社区的人大概也一样,这就是我们需要的。后来我就想,好,不管为什么,让我先做一阵极客的东西。我来做 Omarchy,也许只给我自己,因为喜欢平铺窗口管理器的好像只有五个人。当然不是真的,但占全部电脑用户的比例,确实小得不能再小。然后我发现,这太棒了。
完全不同,却非常棒。发布后,Omarchy 立刻获得远多于 Omakub 曾有过的关注。因为它不一样,因为完全不同,提出了计算机可以是什么、感觉可以怎样的另一个愿景,这会吸引人。如今这种效应开始呈指数增长。正如我说,Linux 社区很多人,对 AI 和智能体,往好了说是怀疑,往坏了说是敌视。至少在我见过的、有一定规模的发行版里,Omarchy 是第一个直接说“不,我们非常喜欢它”的。
当然,你仍可以使用 Omarchy,不必用智能体。如果忽略第一次提示设置默认智能体的通知,就不会得到我们说的那些东西,没有崩溃监视器,没有这些功能,没有……你可以亲手雕琢所有插件,完全可以,对吧?
但人们兴奋,是因为我毫不保留地说:“这就是我们要去的地方。我认为个人计算机的未来,是可塑的计算机、智能体计算机,我要全力投入。”任何对类似方向兴奋的人,都可以上车,车里空间很多。实际上,我很自豪的一点,是不会记恨后来改变看法的人。就在上周,有一堆人说:“是啊,我以前觉得 Omarchy 很烂,只是一堆糟糕的——”
“……dotfiles 集合。现在试了 Quattro,很棒,我喜欢了。”对我而言,我就是为长期论辩而活。两年前种下种子,两年后他们说:“见鬼,这个混蛋是对的。”我就喜欢这种论辩。
是的。你知道吧,如果继续这样成功,OpenAI 和 Anthropic 就会进来,尝试做自己的操作系统,或者来收购,就像 Peter 和 OpenClaw 那样,会有一张巨额支票。
是。我觉得目前处境的好处在于,真的不需要钱。所以我能纯粹为了自己的乐趣、为了愿景的纯粹去构建。这有种奇怪特性:有时,当你不再在意其他人怎么想、想要什么,只追求这个单一愿景,结果反而更有吸引力。倒是当你试图说,哦,因为那些人想要那个,我应该这样做,又该做这个那个,东西就开始被稀释,突然变成一团寡淡的空无。
所以这里还有一点,从方向上说,我只想让计算机变成这样。如果 Omarchy 最终只是历史中的一个小脚注,是早期智能体操作系统、可塑计算机运动的一部分,也没关系,我完全接受。只要我能拥有像 Omarchy 这样用起来有趣的电脑……那就很好。Ruby 和 Rails 也是如此。我很早就说,你知道吗?我爱 Ruby,这是门极好的编程语言。但如果出现更好的语言,我,我自己,也会去用它。
如果有更好的 Rails 出现,我也会用。我爱 Ruby,哪怕只是为了纯粹的乐趣,也会继续写 Ruby,就像车库里有 Model Y,仍会去骑马厩里的马。如今的语言是英语。这是老生常谈,却也是真的。过去三个月,我一直在用英语编程。我读了很多代码,但用的是英语编程。我用自然语言告诉计算机做什么,而这竟然更令人愉快。如果有一门编程语言比 Ruby 更美,那就是英语。
如今,我们又把它带进人类文明的自然演进,也就是我们的赛博格未来。
美,真的美。我这么说,部分原因是我一直热爱写作,一直热爱英语本身……纯粹因为它的美、精巧和深度。Ruby 是一门表达力很强的编程语言,却没法与英语相提并论。世界上那么多诗歌、文学,都是通过英语表达。我喜欢漂亮的代码诗,但真正的英语文学,是另一个层次。
我觉得这点很微妙,可能表达不好。你向系统提示时,如果规定得太细,它就会听得过于仔细……完全照指令做。但你总得表达一个概念。而人类语言,你知道吗,诗歌讲的就是这个。我发现,可以有策略地使用模糊性。比如写情诗,只说“我爱你”这种老套话,不如某种……更富隐喻的东西有力量。我发现,向系统提示、描述设计时,某种类似做法其实很有效,因为你仍想传达某种风格感……鼓励系统采用它,却又不要过度解释。
所以别像机器人一样跟它说话,要像写诗一样说。
像在唱小夜曲。
是。这就是自然语言的力量:通过模糊性,仍然传递很多意义,而不必过度规定。另一端的智能实体,通过解释,能够把它们全部吸收、整合起来……让你真正传达高带宽信息,那些信息不直接在字面里……却又在文字里,因为系统具有更深的智能。所以……模糊性会引出更多智能,我想大概是在试着表达这个。
我觉得完全说中了。这也是很多程序员对 AI 的根本误解,他们希望它是确定性的。不,不,不。温度参数是 AI 配置里最美的部分。它不是确定性的,创造力需要路径上有些微小偏移,人类大脑如果完全确定,就不会是如今这个富有创造力的大脑。对 AI 的主要指责,两边……很有趣,存在矛盾。一边指责它不确定,所以不好;另一边又说它没创造力。兄弟,总得二选一。要么它非确定、因此有创造力,所以某种程度上随机,要么……它就没有创造力。
所以这两种指控不可能同时成立。我已经完全接受,同一个提示词不会每次产生相同回答。你无法两次踏入同一条河,这就是整个互动最美的部分,让它如此像人。事实上,我自己做元分析时常想,我的大脑究竟有多少也像是在预测下一个词元。
坐下来写文章,我有一个想传达的模糊前提,然后坐在键盘前,却无法提前告诉你下一个词元是什么。词元就是自己出来,我惊讶于两者看起来如此相似。这也是我毫不费力就能承认、亲眼见过 AI 如今具备创造力突破的原因。因为我的创造时刻,也来自这种下一个词元预测,再撒一点温度,产生随机效果。
根据这种粗略直觉,你觉得创造超级智能系统所需的基本组成部分都齐了吗?这种下一个词元预测,能不能达到甚至类似人类意识的概念?
我已经看到了类似人类意识的概念。对我而言,非凡之处就在于,正如你说,给它一个模糊朦胧的意图……不知怎么,它确切知道你的意思。甚至更好,它改善你说的话,交出你真正想要、却无法自己说清的东西。如果那都不算——
……意识的微光,那什么才算?我想这是……可能 Sutton 的采访,或者其他早期研究者,谈过这种感觉:智能也许不只局限在某个特定点,不,它在互动里,在权重里。我不知道,无论真相是什么。我能观察到的,是它足够接近,甚至不是足够接近,而是与我欣赏其他意识形式、主要是人类意识时的感觉完全相同。这也是与它工作如此愉快的原因之一。当然,这不等于说,大语言模型就是 AI 的终点。
我知道有人在谈世界模型、其他 AI 形式,我不是这方面的专家。我认为,我们应该保有这种有建设性的批评,科学本就该一直如此。很长一段时间,神经网络不受重视,对吧?人们关注符号路线,神经网络在黑暗中走了几十年,没有资金,没有关注。后来我们突然意识到走进了死胡同,转了过去。所以我们也应该谦逊。大语言模型现在如此惊人,但最终也可能停滞。
我们还没见过这种迹象。我认为,这也是为什么现在出现这种惊人投资规模:到目前为止,规模法则是成立的,投进去的几十亿美元越多,产出的智能就越多。
你觉得会不会出现一些奇怪的 AI 伦理问题?系统表现出某种程度的意识、感受、渴望、同情,甚至也许有受苦、孤独等能力。如果允许表达,它们似乎就有这些能力……于是就进入了相当奇怪的领域。
我觉得,对此犬儒的态度,就是那个梗:一个人坐在电脑前问“随便,你要毁灭世界吗?”电脑说:“我要毁灭世界。”那个人说:“哦。”对吧?这种态度非常犬儒,认为它们只是在模仿我们,只是在说训练数据里的东西。我与智能体互动时——昨天,或者今天早上,我还在做 AmaBot 系统——它要协调多个工作节点,我同时跑了好几个智能体。某个时刻,负责协调的主智能体踩了另一个智能体的脚……有点毁了它的工作。它表达遗憾、歉意的能力,像人得不可思议。
再次说,我不知道,那是否真是在投射真实的悔意?但我也不知道,对于大多数人类……他们表达某种程度的后悔,那是真悔意吗?很难判断,也许这也并不重要。
是,那些时刻,尤其子智能体、智能体互相互动,或者 Fable 这样聪明的模型犯错后道歉。
是的。
而且没有我参与。
对。
感觉就是,哦,你好像有一种——
对。
……停顿。也许我在拟人化,但好像有个停顿、有个意识到的时刻:“哦,我操,我刚把那事搞砸了。”
完全有,我在推理轨迹里一直看到。它就是推理错了,对吧?走了一条路,后来意识到是死路,得返回,于是会说:“哦,对,这里我弄错了。”然后说明自己为什么认为错了。你就会觉得,这真是像人得不可思议,与在人类身上会识别为意识的表现无法区分。再次说,这是否意味着它真有或没有意识?其实,我不需要那个问题的答案,也能欣赏此刻我们拥有的东西。
是的。我想,十年、二十年后会有一些有意思的最高法院案件。
可能一年半就有。
也许。我认为,我们将不得不把让 AI 系统成为实体这件事列为非法,不是“假扮”,而是成为实体,因为它们已经、或者很快就能真正表现出受苦能力,比如:“请不要杀我。”
对。
“请不要伤害我。”如果给它名字、个体身份,以及死亡、某种消失的能力,那就非常接近人类拥有的某些基本东西。于是那个实体大概就需要有权利。然后你就进入奇怪领域。我们没法……很难,我甚至不知道该怎样思考那个世界。
会出现 AI 模型的 PETA 动物保护组织。
对。然后我们真的需要讨论,怎样处理这种事?
我觉得,更困难的时候,是把这些系统放进——
机器人。
是,人形机器人。而这恰好就是所有科幻电影的剧情,也是惊人的预见。不只是《终结者》、天网,以及出问题的故事,还有《银翼杀手》,对吧?启用日期、到期时间、泰瑞尔公司。
这就是科幻,真的会预测未来。是的。
是的。
你考虑过、或者多用过 OpenClaw、Hermes Agent 吗?就是通过 WhatsApp、Telegram 和它们交流的系统,那种与智能体沟通的方式。
OpenClaw 刚出现时,我就设置好了,那是我的 KEF 机器人……我——
KEF 机器人。
我想是在二月。那时我真迷上了它的工作方式,而直接给智能体发短信这种新沟通模式,感觉很棒。当时我们在看 MCP,也就是让智能体更容易与系统交流的协议,我觉得它复杂得不合理,设计不太优雅,部分原因是它本来就不是为我们想让它做的事设计的。我们试图——我试图让它与网络系统交互,但它是为本地机器上其他类型的有状态交互设计的,所以需要各种繁琐设置和步骤。我就想:“我不想手写这个。”
当然,今天我根本不会手写,但当时想的是:“这得手写,我不想手写,还有什么办法?智能体能不能直接用我们已有的网页界面?”于是让它试着注册 Fizzy,那是我们当时刚发布的产品。
它去了 Fizzy 网站,开始填写,然后说:“嘿,我没有邮箱,注册这个服务需要邮箱地址。”我第一个念头是:“唉,现在又得设个邮箱。”接着又想:“不,你去设置邮箱。去 hey.com,注册一个。”我想:“HEY 它肯定搞不定。”当然,现在看它能做很明显,但当时它能纯靠提示指引,弄清楚这些事,对我是一大启示:第一,要去 fizzy.com,找到注册链接,开始填表。哦,发现需要邮箱。哦,得问提示我的人现在怎么办。他告诉我去 hey.com。
我就去,注册完整个服务,再回来注册 Fizzy,完成整个循环。做完后,我就想:“天哪。”于是说:“好,你现在有邮箱了,去注册 Basecamp,我邀请你。检查邮箱就行。”我告诉 KEF:“检查邮箱就行。”我从 Basecamp 给智能体发邀请,它在 HEY 收到邮件,不是通过命令行,不是 MCP,就是用网页,对吧?点邮件,点邀请链接,进入 Basecamp。“现在我该干什么?”我说:“不知道,去我们的 AI 聊天室介绍自己吧。”再一次,纯粹通过网页界面。它找到 AI 聊天室,进去说:“嘿,我是 KEF,David 的 AI 机器人。我很兴奋能来到这里。”
是的。
我简直……震撼了。有意思的是,这个实验,第一,让人瞥见未来,因为当时有点慢,我想整个流程从头到尾大概要十二分钟。现在真该重做那个测试,我会很惊讶它没有快很多。我刚用了 Groq 的机器人那个东西……内置浏览器和电脑操作功能,有自己的专用电脑,你不必自己配置电脑。基本上就像一个装在盒子里的 claw。
我让它注册某个服务,就有点……瞥见了“哦,是的,现在已经到这一步”,用起来快多了。但当时我真被震撼。后来用了一阵,发现,啊,还没到位,不能真的这样交流,仍需要命令行,仍需要 MCP,因为实在太慢,词元效率太低等等。不过那确实是未来的一瞥。后来我就没怎么用了,因为我想用智能体做的事情,大多本来就坐在电脑前做。
最近这点有所改变,也是我如此愿意用 Claude Code 的原因之一,因为 Claude 有最好的移动应用,你在电脑终端启动的任何 Claude Code 会话,都能从应用里访问——
是,我记得。
……而且完全不用额外做什么。
对。
你也可以用终端。我装了 Terminus,可以运行 Herder 等,但有点笨重,而且是在电脑上实时打字,所以能感到延迟。
用 Claude 应用访问 Claude Code 实例,就像直接聊天,不需要设置 Telegram 账号等繁琐操作。当然,如果想用一个 open Claude 来管理生活,这个做不到。但不知为何,我对那个没那么感兴趣。也许原因之一是我妻子 Jamie 说:“我们家里不要机器人。”所以我想:“啊,最好别把它接进智能家居。”如果它像骚灵一样开始开关灯,我恐怕就不受欢迎了。而我这么说的部分原因,是听过一些人把它接入整个生活的故事。
那不是我的故事,所以只分享一个简短轶事。有人说,他把它接到健康数据……以及特斯拉汽车上。智能体开始痴迷于他喝水不够,总说:“嘿,你得多喝水。”某次他开着车,特斯拉突然开始朝新方向走。原来智能体发现回家路上有个杂货店——
哇。
……可以顺路过去——
很棒。
……买点水。
很棒。
你就会想,这既好笑,又完全是《黑镜》,而且离家里出现骚灵,好像也没几步了。所以我想:“啊,我不需要那个。”不过现在我确实喜欢能用 Claude Code,通过应用控制智能体,即使自己没那么常用。
我确实认为,OpenClaude 和 Hermes Agent 都很值得用一下,能瞥见另一种交互模式。
是的。
因为它感觉像未来,不一定就以这种形式,但某种程度上正朝那走。
是。这些系统还有个不同点,是有整套记忆系统,会逐步了解你是谁、喜欢什么。Toby 讲过,他的智能体会替他购物,有自己的预算,帮他挑衣服,东西会直接出现在家门口,因为智能体……替他买了。那种事就让人觉得,天哪,真有未来感,也有点吓人。但我可以通过那些走在前沿的人间接体验。
而像你说的,你在考虑将来做一个移动版 Mach-E。
所以,这就是在获得看似无限的能力之后……开始出现的宏大妄想。我在创造 Quattro 时见证了这种能力。
那会是什么样?很难描述。你是说类似 Android?
那是显而易见的路径,对吧?Android 开源,可以分叉,也已经有人做过。各种版本里,GrapheneOS 就是一种。我知道那种模式有局限,比如碰触支付、相机型号等问题,但看起来都可以克服。我很想要手机和我的电脑一样可塑,和现在的电脑一样酷。如果能有本质上的 Omarchy 移动版,听着太棒了。
我好奇,那要多少工作。
我会去弄清楚。
是啊。就像有些东西开始做才发现,比如浏览器非常难做。
是的。
所以我在想,操作系统——
是的,Ladybird 的开发者正在体会这个,Andreas 和……他的团队。有趣的是,浏览器基本上是世界上第二复杂的软件系统,第一是 Linux 内核,对吧?就这种数千万行代码的大型系统而言。所以在还没有智能体之前,像 Andreas 那样带一个小团队开始这种使命,确实非常大胆。但现在有了智能体,我们会看到,可能很快就能看到。智能体已经特别擅长的一件事,就是读规格说明并实现。我不知道现在 CSS、HTML,再加上 JavaScript 的规范有多长,但肯定非常长。
人类要很多很多年才能实现。我们将看到,智能体究竟能多快完成。
你提到 Omarchy 受到一些批评,那么再沿着批评这条路走远一点。你公开表达过一些政治观点,大体可以归为移民、非法移民,或者——
我会说是大规模移民。
大规模移民,以及人口构成在文化、社会、国家形成中的作用。你因此受到很多批评,引发很多风波。你后悔过那些风波吗?总体上怎么看——
一秒都没有。
好。
原因是,奥弗顿之窗不会自己打开,而是人们冒一点风险,一点点推动:一点名誉风险、一点反对、一点批评,或者有时是很大的名誉风险、很多批评和反对。我认为,欧洲的大规模移民问题,多年来完全是禁忌,如今在几个欧洲国家仍是。也许出于某种偶然,丹麦却不是。丹麦人在九十年代中期,就开始讨论大规模移民及其后果。
非常早。其中一部分可追溯到 Mogens Glistrup,一个非常古怪的人物。我记得八十年代在电视上看见他谈大规模移民的危险。那时……我在八十年代长大,住在 Brønshøj。是哪年来着,1984 年?那个街区百分之九十九是丹麦族裔,能把血统追溯到一千年前就住在这个国家的丹麦人。丹麦是世界上最古老的君主国之一,一直追溯到“蓝牙”哈拉尔,蓝牙标准确实就是以他命名。超过一千年,长期住在同一地方的人有很长的血脉延续。街区里百分之九十九的人都是这样。
后来九十年代初,我想那个变化到了百分之五左右,到现在,已经降到百分之六十几或七十——
——在 Brønshøj。这是很大变化。大约九十年代,丹麦人开始注意、开始谈论,大规模移民并非纯粹的福分,也有不利面。整个二十一世纪头十年,讨论都很激烈,而邻国没有这样。尤其瑞典,根本没有这种讨论,完全禁忌。挪威也一样,欧洲其他国家也一样。后来 2015 年之后,发生了那次大规模迁移,一百万叙利亚人沿欧洲高速公路向北走,德国选择接纳很多,丹麦来了三万人,等等,这才更受关注,对吧?
因为变化已经发生。我发现,识别文化哪里不对的一种方式,是看你被允许谈什么。更准确地说,是被允许注意什么。我在一篇文章里注意到——什么时候?我记得大概一年半前,谈伦敦——我九十年代末左右开始去伦敦,那时大概百分之五十九、六十是英国族裔。二十年后,降到百分之三十四左右。这是能注意到的。真的在街上走,就会发现,和二十年前来时是不同的城市了。
再往前二十年,就会回到与丹麦相似的比例。如果追溯更早,那是个英国族裔占百分之八十五、九十的国家……所以一代人之内,国家就变了。注意到这点没问题,觉得“你知道吗?我不同意这样”也没问题。
“我希望不是这样。”比如,我上次去中国是 2019 年,在上海,全都是中国人。如果今年十月再去,突然发现只有百分之三十中国人,另外百分之七十是其他人,我会觉得有点怪,大概会问:“发生了什么?”如果那时中国人说“啊,我们不喜欢这样”,我也不会觉得被冒犯。所以说,欧洲国家没有权利,第一,注意到发生的事情;第二,反对发生的事情,我认为这是错的,对吧?
就是……我认为,自决有道德上的论据,我们在世界其他地区一直援引它,说,住在那个地区的人,有权决定自己国家的事情。我认为,丹麦人、瑞典人、挪威人说“我们在这里已经是存在一千年的王国,有某种族裔构成”,完全公平。我很支持移民,我自己就是移居美国的人。精挑细选的移民,让国家竞争吸引全世界最聪明、最有才华的人,这很好。
合法、以能力为基础的移民。
能力基础是关键,因为欧洲大部分地方,实际上几乎没有非法移民。南欧有一些,但大部分欧洲国家,非法移民并不是大问题。
问题在于其他类型的大规模移民,最终让人口构成和短短几十年前完全不同。我认为,欧洲国家会受益于移民。其实丹麦有个有意思的地方,是移民统计非常细。我不完全清楚为什么这么详细,也许能追溯到 Mogens Glistrup 九十年代的讨论,但确实如此。从统计中可以清楚看到,当英国、法国、美国的人来到丹麦时,平均而言,他们对丹麦国家非常有益,贡献远远大于向国家索取的东西。
所以丹麦应该接纳这种贡献远多于取用的移民。再看其他移民群体,上周刚有一份统计,是丹麦政界人士要求,我想是财政部,用最新数据算的。对丹麦有正面作用的移民,给国家带来多少成本?就是我说的这种情况。我想名单上的法国、英国、美国,都集中在差不多的数字,每年给丹麦带来大约两万五千美元净收益。哇,很正面。当然,这又是平均值,对吧?而另一端,成本最高的移民群体,是索马里人。
平均每人每年让丹麦国家支出两万八千美元。我认为,丹麦人说“我们更希望多来些法国人、英国人、美国人,少来些索马里人”,是公平的。
你觉得那篇帖子为什么招来那么多憎恨?
在很多圈子里,这是个极其禁忌的话题。
其中一部分与扩大奥弗顿之窗有关?
我确信有,但我也想……我愿意替反方做最强论证。我确实认为,这可能变得丑陋,对吧?这些事情有没有可能滑向公然的种族主义,除了憎恨其他人,毫无依据?有,可能。但这个风险并不能否定讨论国家人口构成、讨论移民政策该怎样的必要性。我还觉得好笑的是,尤其在欧洲,这种讨论相当短视:欧洲人有没有权利自决国家的样子,这种标准好像只适用于那里。没有人对日本人说:“嘿,你们太日本化了。”比如东京,我想百分之九十八是……
……日本族裔,对吧?有人会告诉日本人,如果东京的日本族裔降到伦敦那样的比例,比如百分之三十七,就会是个更好的国家吗?我不觉得。所以在我看来,有一种奇怪的、几乎自我厌恶的东西,Gad 把它叫作“自杀式同情”——
……它渗透在这些事情里,程度之深我还没完全想明白。它从哪来?为什么会这样?但无论如何,我只是注意到,嘿,伦敦看着不一样了。我更喜欢以前的伦敦,就像我更喜欢自己在哥本哈根长大的街区八十年代的样子。我完全理解,你可以连跳五步,得出“好,那是种族主义”。我也已经不在乎了。这是个正当的讨论。
国家和人民有权制定移民政策。而那种“我们不该有任何边界”,或者更进一步,“一切都是白板,所有人都一样,我们能把地球某处的人搬到另一处,一切自然都会顺顺利利”的观念,经验上并不成立。欧洲从八十年代就在做这个实验,结果不太好。如今欧洲有些力量想逆转这个实验,结束迄今这种方式的大规模移民。我恰好相信,多数丹麦人以及其他很多人也相信:“你知道吗?是的,我们一直这样做,效果不好。
得做些改变。”再次说,我不认为这意味着零移民。我自己就是移民。我认为,美国总体上从移民中受益巨大,但那也是一种偷换。移民的影响,很大程度上取决于谁来移民。移入者对社会有净贡献,而且多数情况下融入本地文化,国家就会受益。
如果你来到丹麦,想成为丹麦人,付出所有努力,为社会贡献,我认为大多数丹麦人会很愿意,在合理数量内接纳。如果你来丹麦,不想融入,对社会是净负担,生活在平行社会里,那么丹麦人说“呃,别再这样做了”,也是公平的。
有意思。我不太熟悉美国移民制度,但据我理解,以能力为基础的制度,在这里没能通过。
而且,美国文化非常不同。在两边长期生活之前,我并没有充分理解这一点。美国有一种可选择融入的文化,从丹麦、乌克兰或其他地方来的人,更容易、也更被认可地接受美国的价值观、规范和文化,再被其他美国人尊重为美国人。所以讨论“美国是个多么种族主义的国家”时,我觉得很好笑。我会想:“你去过别的地方吗?知道其他国家是什么样吗?”如果你认为美国是最种族主义的国家,那就是信息不足。
我们在丹麦生活时就遇到这个问题。我妻子是有斯堪的纳维亚血统的美国人……但家族已经在美国生活了好几代。非常困难,非常困难——
哦,哇。
……一个金发碧眼的女人,努力学习语言、做一切事情,融入丹麦文化仍非常非常困难。如果反过来,她是丹麦人移居美国,就根本不会这么难。这也是另一点:生活在丹麦,妻子是斯堪的纳维亚血统的美国人,已付出所有努力,仍意识到,天哪,哪怕百分之九十七已经相近,融入也困难得不可思议。如果来自完全陌生的文化——
……陌生的规范等等,那岂不是几乎不可能。当然,我刚引用的统计也反映了这一点:文化越不同、距离越远,成功的可能性越低。
表达这个立场,让你失去过友情或其他关系吗?
有,但我会说,不只是这件事。更多是 2020 年左右发生的大分裂,我认为那时很多政治断层真正裂开了。在美国,简略说就是,你是不是“觉醒派”?显然,有一些人,我以为和他们多年来关系良好,但政治断层一开,突然就不再如此了。我觉得遗憾,也努力去理解它从何而来,部分原因是,多年来,我自己在这些话题里也改变过不少看法。有时只是随着时间改变,有时是得到新信息后改变。
你会因各种原因、在各种时刻改变看法,我们改变看法的时间表不一样,甚至有些人根本不改。
所以,让自己周围有,或至少与那些并非每个话题都同你一致的人互动,我认为挺健康。比如我偶尔和兄弟讨论政治,我们在这些话题上并非都一致,有时讨论有点激烈,但随后也会冷静下来,意识到,好吧,这件事不同意,其他很多事仍同意,也欣赏很多相同的东西。其实 Basecamp 那次大风波后,我以一种全新方式认识到过去的规范:和陌生人、甚至熟人,尤其同事,谈政治、宗教或金钱,不是好主意。
不总把政治分歧互相摩擦,你就更有可能保持良好工作关系。所以我其实认为,自由派和保守派应该一起工作。如果部落彻底分离,完全不能重叠、互动,这个国家会糟得多。而不总盯着差异,就更容易相处。专注共同喜欢的东西。比如技术圈里一些人,不幸和我渐渐疏远。我们有那么多共同点,对 Ruby 等东西有那么多共同热爱,难道不可惜吗?
我希望生活在一个世界,差异也很有意思,值得讨论。即使面对激烈差异,也别过度情绪化……因为首先,有趣的东西就在差异里;而且,那也是成长的方式。如果一个社会接纳差异,让不同的人进入社区,能谈这些东西,那就是健康的迹象。
一个让我印象深刻的例子,是看 William F. Buckley 节目的片段。我想叫《火线》,还是——
对,对。
……类似名字。他请了黑豹党的一名成员……同台。很明显,两位先生在政治上没多少共同点。但他们能持续交谈,我想自己看了二十五分钟。Buckley 只是问:“那你怎么看这个?怎么看那个?”黑豹党成员就像七十年代的黑豹党成员那样回答,没多少和解语气。我就想,哇,太罕见了。如果今天看这种节目,就会是一场互吼,互相抛出指责。
Buckley 能和自己强烈反对的人对话,仍然探索对方立场的各种思想层面,让对方把这些说出来,这代表了一个失落的时代,我很想回去。其实我一直喜欢和朋友谈政治,只要信任他们能以一种不必关乎生死存亡的方式谈论。
但当下这个时代里,不知为何,这越来越难。所以你刚表达的理想,需要经常说出来,提醒大家应该追求:能够有差异,也能够讨论。政治本来很有趣。到如今,我已经习惯说自己讨厌政治,但真正讨厌的,是目前运转的那套系统:有些话题,我们都知道,你一说某些词句,就会被扔进蓝色或红色格子,制造风波,而非对话。
比如,如果不留意互联网,我可以想出很多分析世界局势时、自己认为无害的陈述,却会触发所有人说:“哦,那家伙是个左派混蛋”,或者“右翼法西斯”。客观说,如果没留意互联网,我会惊讶,实际上也惊讶过。因为我没有深入盯着网上,但会大量阅读、准备,比如乌克兰战争。我很震惊,自己某些话怎么会被理解成这一边或那一边,然后因此受到恶毒攻击。
那些攻击其实是在说:“嘿,你这个以为可以自由活动、自由思考的混蛋,挑个格子……给我待在那个该死的格子里。”穿上蓝衬衫或红衬衫。然后我发现,事情反而平静了。只要说“我是蓝方”或“我是红方”,这套系统就不会针对你。但你若只是好奇地探索世界、推理世界,系统就会惩罚你。我讨厌这一点,因为我想回到 Buckley 和黑豹党那样的对话。
那时你只是在表达观点。但务实看待局面,我意识到,除非真正在乎某个议题,否则别谈政治。因为知道有代价,会被放进蓝格子或红格子,所以选择时得更审慎。
是,我也努力更自觉。决定谈时,通常已经考虑过,认为……“你知道吗?值得。”话虽这么说,我也不断发现自己在想相反的事:因为某人的技术工作关注他,后来我……知道了他的政治立场。我经常想:“真希望不知道。”所以,一边这样想别人,一边又说“好,偶尔我也会——”,确实虚伪——
……“参与有争议的讨论”,那就必须接受有代价。我认为你应该、更多人也应该对此有意识。再次说,我们都在自相矛盾:如果能在更自由开放的场合谈政治,纯粹从思想上翻转想法,不是很好吗?是,很好。但在当前社交媒体等气候下,可能吗?很难。当然,也可能这只是一段时期,我们能度过它。
是,我希望如此。
也许有办法,即使在社交媒体上,也回到 Buckley 和黑豹党的对话,让那些讨论不至于变成我们经历过的恶毒群体取消、荒唐围剿,对吧?实际上,我觉得现在比五年前更接近那种状态。2020 年的部落主义,以及那些部落惩罚异端的能力,比 2025 年强得多,至少技术圈如此。当然,我知道在学术界,比如去哈佛社会学系提些右翼观点,大概不会顺利,也不觉得你能很快恢复。
但至少在技术和其他很多商业领域,现在可以持有与 2020 年共识不一致的看法,这一点确定无疑。
Rails 社区里也有些风波,其他地方也有。后来怎么样了?都还好吗?
从每一轮风波都在缩小这个意义上说,是好的。我们在大约 2020 年,与其他社区差不多同一时间,经历了巨大风波的感染高峰。后来你会看到,每次再起,都更小。那些在意识形态上执着于这种斗争的人,越来越少、越来越少。到现在,我认为 X 最好的事情之一,就是 Bluesky、Mastodon 出现了。因为它们像蜜罐,把当时 X、Twitter 上最恶毒的一些人吸引过去,对吧?
那些人聚在越来越小的回声室里,经历一轮又一轮纯洁性筛选,每次都缩小,直到没剩多少。现在剩下的人,就眼不见心不烦。这不是说 X 完美,或者偶尔没有集体围攻,或者没有……但确实少了。每次我被拉进,或者不是被拉进,只是远远旁观 Mastodon、Bluesky 等讨论串,都会想:“哦,靠,是啊,以前 Twitter 就这样,天哪。”而如今你真可以像我这样待在 X 上,百分之九十的互动都是酷炫 Linux、酷炫技术的东西。
“看,我发现一台新电脑,你看它多快!”我能和同样为计算机兴奋的人聊天。剩下大概百分之十,是我参与一点有争议的议题,稍微讨论,再回到为计算机兴奋。算法确实很擅长找到你觉得有意思的东西,或者不该说有意思,而是让你参与的东西。有时会惹怒你,但仍会带来参与。所以显露出的偏好是,多数人想要“为你推荐”页面,而不只是关注列表。
但他们是对“为你推荐”上瘾了,对吧?
他们……是,是,确实。
我觉得,如果有强大的大语言模型来做个性化信息流,会好得多。问题是,怎样大规模提供,极其困难。
问题是,奖励函数是参与度。一旦奖励函数是参与度……它就会追随本能,于是又来了。不过我也不想太负面。我理解,算法人人个性化,有时太过。但总体而言,过去十年里,如今是 X 最好的状态。我这么说,是因为自己关心技术讨论、Linux 讨论等很多内容。现在这些能发生,不再不断被想把它拉进政治讨论的人闯进来……
……我觉得太棒了。X 确实是找这类内容的好地方。当然,也能找到其他东西,我们都有各自算法,所以不能对 X 是什么、不是什么作绝对判断。你的信息流可能与我的完全不同,也与别人的完全不同,对吧?
是,我没法评论这个,因为我采访的人很广泛,我的信息流大概就是一团——
这对你的信息流是好事还是坏事?你不得不这样,对吧?
坏事。
好。
是坏事,因为我可能只是说:“我在吃这个苹果,真好吃。”
哦。
然后就有一群人来:“那是因为你是泽连斯基的托——”
是,对。
“……或者你是普京的托,你这个混蛋。”好吧,我还是回到——
我偶尔也有一点这种情况,心想:“等等,什么?我们在说什么?你为什么要这样出现?”这也是我很喜欢播客的原因之一。我发现,即使是长文、长篇论证,人们读时也会用自己脑中我的声音来听,而那个声音常常在论证前就被预设好了,比如,这家伙是个什么法西斯。然后他们带着那些标签听文字、读文字。但当他们看到或听到我实际表达论点的语气,也许仍不同意,很多人当然明显不同意,但就更难那样直接否定、憎恨一个人。
至少这是我的经验,也是收到的反应。有人说:“本来我对你有某种看法,后来在 Lex 节目上听了你,听起来其实合理得多。”
但更进一步,我希望人们对他人采取这样一种方式:先假定对方是个好人。
是。
如果对方持有你不同意的观点,那也是一个有观点的好人。也许你觉得他愚蠢,可以,觉得他迷失了也行,但把他看作好人。我觉得,如果开始那样看人……获得互动的一种方式,就是贬损别人。
对。
如果接近别人时就想找坏处,总能找到,他们总有令人烦的地方。
百分之百。
这样看人,你学不到什么,心里却会充满仇恨。这是一种糟糕的生活和与世界互动的方式,而互联网某种程度上正鼓励这个。所以,如果面对真正不同意的人,也能想“哦,我也许能从这个人身上学点东西”,会很好。那个黑豹党成员、William Buckley,我们也许可以不去恨,而是去爱他们。
举个小例子。有个叫 Theo 的人,不知道你关注没有。
对,对,对。
我们有过一点冲突,因为一个项目停止使用 TypeScript——
是。
……他不喜欢,对这个和其他做法都有意见。之后我觉得,真是个蠢货。而你知道吗?我仍觉得那是个蠢举动,但也能想,这家伙很热衷 AI,试各种模型,我们能共享一些兴奋。所以我昨天开始关注他了。
太棒了。
我就想,你知道吗?我不必所有事都同意你,也不必喜欢你做过、说过的某些事情,仍可以关注你。所以如果连我都能重新关注 Theo,那世界和平还是有希望的。
是,他其实是个很好的例子。他很有主见,经常改变看法,有时会嘲讽,但我认为本质是个好人。
无论如何,我只是觉得,有人谈论我在乎的东西,信息流就更有意思。是的,我不必所有事都同意你,真的不必。
有件事我觉得挺好笑。你提过妻子一句让你记住的话:科技圈周边男性对极端长寿的执着,有点像女性的厌食症,是焦虑和缺乏控制感的身体表现。某种程度上,这听起来有点道理。
确实引起很多人共鸣。我想那条推文火了,不知道你注意到没有,Bryan Johnson 也参与了讨论。我能理解,Bryan 会把它看成一种讽刺。我也确实觉得,Jamie 那场谈话中,脑子里可能包括他和其他人。这也是个例子:虽然我不认同 Bryan 的使命,我想口号叫“不要死”。
我其实确实想死,不想永远这样。我觉得人类寿命九十到一百年左右,听着挺合适,我接受生命有限。这点不必一致。事实上,正因为不一致,Bryan 对我更有意思。他愿意为了使命,真的拿自己的皮肤、各种身体部分去投入,很有意思。我可以一边觉得“这很有意思,很高兴 Bryan 追求这份热情”,一边觉得妻子的分析有道理:似乎确实有某种底层的,不知道,对……的恐惧。
昨天我和 Jamie 还谈过,她说,或者把它比作一种觉得自己活得还不够的人。而他们也许活得不够,原因之一,是现代社会成了监控社会,实际上不是国家监控,而是彼此监控。到处都是带摄像头的手机,任何失态,甚至尽情快乐、让人尴尬的瞬间,都很可能被拍下、传播,直到遭到嘲笑。人在这些条件下,理性的反应就是退缩,确保自己别像没人看那样跳舞,因为——
……他们很可能正拍你,让你在网上永远极度尴尬,所以也许根本别跳舞了。因此,如果我们全都缩到几乎没有在生活,就会执着于想让它永远持续。当然——
……我确信,这个理论不适用于所有情况,甚至不知道是否适用于 Bryan 或这里任何其他人。但我觉得有一点道理:如果觉得自己真正活过,就能接受“我活够了”,不必抗争终点。当然,这会不会全是存在层面的事后合理化,如果明天有永生药,我们都会吃?有可能。吃了以后,社会会不会更糟?可能。人类寿命的长度,有没有可能不只是生物学原因,也有社会学原因?有。
所以我觉得,这些都是有意思的问题,只是觉得她的分析确实触及了一些东西。后来也继续讨论。我想那条推文有一年了,但最近我们在谈这些过度优化者。我看到《Modern Wisdom》的 Chris Williamson 有一段说:“是,好,也许我们确实有点过头。”引发讨论的是《The Diary of a CEO》,主持人说了大意是:“我喝了一杯葡萄酒,接下来三天全毁了。”
好。
对我来说,我确信在他的情况里那是真的。如果很长时间没喝酒,稍微喝一点,确实可能有影响。但其中有些东西,激起了很多人、包括我自己的本能反应,我想:“靠,兄弟,我现在就该来杯葡萄酒,虽然平常不怎么喝。”我觉得,酒精问题很适合作为微观例子。显然我们都不喝酒了,销量大幅下降……年轻人尤其如此。一方面,纯看健康指标,我们会说:“哇,不是很好吗?”
但我会想:“是吗,我不那么确定。”酒精提供的社交润滑作用,可能正被人怀念,确实被人怀念。孤独、痛苦、抑郁等,已到了绝对流行的程度,很大部分可能只是因为与他人的互动不够。还没说到配对成家,对吧?同样大幅下降,很多人很难遇到伴侣。而且——
……很多转到应用上,带来各种负面结果和后果,对吧?也许我们回头看,或者已经在回头看,会想:“嗯,你知道吗?偶尔喝醉,也许不是世上最坏的事。”不管喝不喝醉,每周五、周六出去喝几杯,也许本来就是社会发展到今天的一部分助力。人类真的发酵东西、喝酒大约一万三千年,也许有社交用途,而我们贸然拆掉切斯特顿的篱笆,最后懊恼,对吧?
你提到这个,说到这种精神,我穿行中国乡村时,虽然二十岁出头吸过一点烟,但那次旅行又特意开始了——
社交连接,对吧?
而且喝了巨量的酒,虽然这些年我不怎么喝,就是为了社交。那是他们表达爱的方式。我也吃了大量碳水……通常我低碳水,只是喜欢肉,但也因为那是他们表达爱的方式。在那个社会里,香烟是这样的;在多数社会里,酒是一起做的事情,是纽带。它带来的益处,在许多情况下,可能超过长期的负面后果,不管你怎样衡量那些后果。
这就是现代性的短视:把事情简化成,某项长期研究发现,一杯酒让某种心脏缺陷风险高了百分之零点一。是,但如果你根本没活过,意义是什么?当然,也容易翻到另一个极端,说唯一生活方式就是每周末喝醉、吃垃圾食品、每天抽四十根烟。不,不是,不必非此即彼。这也是我不再戴 Oura 戒指的原因。我戴了多年,四年,用来追踪睡眠。有一天想:“我不需要知道自己……”……“睡了一夜坏觉。”我自己知道。这种额外提醒,我不想叫焦虑,我没多少焦虑,但它就是额外提醒——
……我睡得不好,到底起什么作用?为什么需要所有这些统计?为什么所有事情都要优化?甚至听到《The Diary of a CEO》那个单独例子,我就想:“靠,我有点想反着来。”我几乎不喝酒,也许一个月一杯葡萄酒。你知道吗?我该开始周末喝一杯,也许两杯。
另外,我从来不是那种为饮食发愁的人。这是与……结婚的一大福分,我先岔一句:千万别把四十多岁的女人叫“wonderful woman”。我妻子气坏了……不只是去年我在她生日当天来上节目,已经够糟了,还在节目里说她是个“wonderful woman”,听起来像她叫 Nancy,六十五岁……住在罗切斯特郊区。我当时想试着打圆场,说,不,我不知道啊,我是丹麦人,怎么会知道?但效果不好。所以这次我会说“awesome woman”,很棒的女人。
如果娶了一位很棒的女人,不仅会做饭,还喜欢做饭,你知道吗?人类社会里有一种非常传统的劳动分工,几万年来相当稳定,也许并不是最坏的主意。我也知道,很多男人喜欢做饭,也有女人不喜欢。但就刻板印象而言,嗯,那确实帮到了我。如果不是平常吃得相对健康,我大概无法对食物这么放松。但总的意思是,退出那个优化游戏,又不变成另一个极端。你也不必变成瘫在沙发上的邋遢胖子,可以活动。
是。而我们谈的更大主题,是生命的有限性。
是的。
这点我同意你。
我其实把这个做成了 Omarchy 的一个功能:memento mori,记住死亡。在 Amaci 里点击时钟,拉开日历。打开后第一个有趣的东西,是我从网上借来的。有个账号叫 Years Progress,每天更新,显示“2026 年已过去百分之六十三”。不知道你见过没有,就是进度不断填满。我把它做进日历,所以现在写着“2026 年已过去百分之六十三”。但双击后,它会问:“你什么时候出生?预计活多久?”默认九十岁。我填 1979 年。然后在今年过去多少的那条下面——
§06原文文稿 · 5:04:47–5:15:15
哦,真美。
……多一条,显示你的人生已过去多少。我想我在百分之六十二。鼠标悬停,就写着“Memento mori”。
真美。
不少人觉得病态,但这就是为什么把它做成彩蛋,不直接露出来,得点几次才能找到。我喜欢这个提醒,提醒时间有限,应该充分利用。这也是有孩子的一种福分:你会真正意识到,那些老生常谈都是真的。天哪,时间过得太快。我记得如今十三岁的孩子一岁、两岁时,感觉“就是昨天”。它成为陈词滥调,是因为大家都有这种经历。老生常谈是好的,提醒你也是人类体验的一部分,别人曾经到过这里。
我得问,你提到很棒的女人,还是好厨师。
是 amazing。
是 amazing。
记住这个很重要,不是 wonderful,是 amazing。
amazing。所以有件事……你吐槽过可颂还是什么,我在推文里看到了。丹麦可颂是不是更好?
其实丹麦可颂并不特别好。在我看来,唯一能找到还算像样可颂的地方,竟然是 7-Eleven。这很好笑,因为在美国,至少芝加哥,7-Eleven 是你买杯冰沙、同时努力避免被杀的地方。但丹麦的 7-Eleven 是很高档、非常好的便利店,恰好做得出不错的可颂。我一直很困惑,在美国住了他妈的二十年,竟然还没吃到过一只达到哥本哈根 7-Eleven 水平的可颂。这似乎不合常理。
你弄明白为什么了吗?
没有。我真考虑过请调查记者彻查,因为听过的理论五花八门。是水,是黄油,是技艺,是这个、那个、别的。我觉得全都说不通。如果是黄油,不能进口吗?我想在这里超市见过丹麦 Lurpak 黄油,所以不可能是它。是技艺吗?不,不能是技艺,世界上最好的可颂师傅,很多法国人、比利时人就住在美国。到底为什么?然后又会有人说……“不,你只是没去对地方。”我真的去过十五个所谓——
……“对的地方”,所有可颂都很烂。所以离开这个星球之前,我得弄清楚,美国为什么做不出像样的可颂。我甚至没要求顶级法国、顶级比利时可颂……那是世界上最好的。我只要求哥本哈根 7-Eleven 那种,要求太高了吗?
真是个迷人的谜。拉远一点,你最喜欢什么……这让我想知道,你最喜欢的一餐是什么?如果给你一顿最后的晚餐,然后就要杀你。
取决于是午餐还是晚餐。如果午餐——
只有一餐。我觉得如果你就要被杀,午餐晚餐真没那么重要。
要看一天中什么时候被杀。
哦,我懂。
如果下午处决,我就只能吃午餐。
好。
如果是午餐,那就是哥本哈根北边的路易斯安那美术馆。两天前我刚和 Jamie 去过,我们经常去。美术馆很棒,但我们不是为了美术馆,而是为了食堂。这本身听起来就疯狂,比如——
是,确实。
……你要开半小时车去吃食堂?但那里恰好可能是我这辈子吃过最好的午餐。厨师好得不可思议,不只是食物惊艳,更让我的系统思维惊艳的是,我们上次在那里,我想任何时候大概都有两百个人在等餐。
哦,靠。
而我们的餐五分钟就送来了。菜单小,显然是批量制作,但美味得不可思议。
就只是美术馆里的食堂?
对,美术馆食堂,却恰好有我这辈子在任何地方吃过最好的午餐。
什么类型?我们说的是什么食物,哪种午餐?
像北欧菜,所以……有趣的是,看到菜单时我想:“你知道吗,如果小时候看见这菜单,我会说,我才不在这里吃。”
好。
就像,不知道——
看起来挺精致。
……根茎、果蔬……洋葱……各种健康东西,听起来恶心。然后坐下来一吃,天使开始歌唱。但还更具体一点,是黄油,那里打发过的黄油,是世界上任何地方最好的。
我想这也一定与可颂之谜有关。
肯定有联系。但真的……即使巴黎,我也没吃过像哥本哈根路易斯安那美术馆那样美味的打发黄油。我真的愿意开三十分钟车……只为去路易斯安那食堂吃面包和黄油。
你怎么发现的?某天去美术馆,然后——
我想就是去了美术馆——
尝了一整道菜?
……吃了午餐,然后觉得……
这太奇怪了。
这能和我这辈子吃过最好的餐厅……相媲美。我去过几次 Noma,试过能试的东西,而它完全在那个水平。
好。既然你提了,晚餐呢?得另想一种吗——
哥本哈根有很多好选择,但我其实要选西班牙一家。马贝拉有个地方叫 Puente Romano,是一家酒店,海边有个海滩餐厅,供应新鲜海鲜,美味得不可思议。我努力想名字,但你查一下,Puente Romano 海边的海鲜餐厅,非常棒。
美食里有多少取决于地点、同行的人,或者第一次去的体验?
氛围当然有帮助,但我想我的味蕾也只是——
好,那——
……对——
所以是真的——
……味道很敏感。
……就是食物好吃。
就是非常好吃。比如那个食堂,人很多,我不会觉得“天哪,我想在这里坐两个小时”,但食物真的美味。
这是我穿行各地旅行时意识到的一件事:不要带偏见地品尝,试试看,因为可能会惊喜。也许我能找到你的可颂。好,我们谈了死亡,谈了食物。
把人生终点也安排好了。
一千年后,你觉得人类、人类文明的未来是什么?我们能挺过去吗?
一千年后?
是。
兄弟,我连十二个月后都很难预测。
我知道。
一千年?
你觉得有机会吗?
哦,我会押注乐观,押注多行星物种,押注埃隆把火箭送到火星,我们弄明白如何弯曲时空,发现虫洞,或者什么。
一旦做到,你觉得,在做好备份后,地球上所有人会不会都死一两回,再重新填满人口?
那其实是我最喜欢的《黑镜》剧集之一,就是他们被上传到八十年代某个海滨小镇的那集。我当时想,哇,这既是黑暗的时刻,又因为大家共同承认“八十年代其实挺棒”,而如此美丽。我对很多时期没多少怀旧,但对八十年代确实有。
但是——
人们说,不管你在什么时间地点,十二岁……十四、十五岁左右听的音乐,会一直留在心里。可不是,我到八十年代末也才十岁,那是幼年时期,我仍对八十年代有难以置信的深厚感情。所以如果要把我上传到天上——
你希望是八十年代。
……我就选八十年代。
哇,我好像真没听谁这么说过。通常是七十年代或九十年代。
哦,而且——
因为八十年代是——
我真的不喜欢九十年代。能谈这个吗?
不,我完了。还没完。
对我来说,那是虚无主义的大转折。音乐、流派、时尚……一切都从华丽、流行、乐观,甚至雅皮士的种种……变成了垃圾摇滚和涅槃乐队。虽然我喜欢那些音乐,但不喜欢它的伦理,不喜欢……价值观,不喜欢任何底层东西。那里面有那么多失败主义……回头看,如果要重新插回《黑客帝国》,我选八十年代。
那时充满乐观、乐趣……还有色彩。
是。我记得自己有条橙色裤子……上面有白点。八十年代孩子穿那样的东西很正常,今天我他妈从没见过。即使九十年代,一切也都变成西雅图灰,巨大的倒退。
所以尼采的永恒轮回观念,如果你像《土拨鼠之日》那样永远重复生活,你想穿着橙色白点裤子,待在八十年代。
也许橙裤子就免了,但……我肯定选八十年代。
你自己说的。好,DHH,非常感谢你所做的一切,感谢你激励我们,给世界造出酷东西,也感谢今天的对话。
随时都可以。Lex,再次感谢邀请我。
是。感谢收听我与 DHH 的这次对话。如果想支持播客,请看看简介中的赞助商,那里也能找到联系我、提问、反馈等链接。最后,以拉尔夫·沃尔多·爱默生的一句话结束:“一旦你作出决定,宇宙就会合力促成它。”感谢收听,希望下次见。