返回

文章详情

塔楼不断向上

Hacker News2026年7月14日 16:57

2026年7月13日写道,我觉得一些基于氛围编码的软件时常会随机和意外地变化。这让我想起了布鲁盖尔的《巴别塔》,这幅作品描绘的巴别塔已经呈现出相当混乱的景象。这个故事通常被讲述成关于骄傲和野心的故事,最终导致人们不再说同一种语言。但这也是一个关于使技术进步成功的团结的故事。文本以技术升级开始:他们彼此说,来吧,让我们造砖,把它们烧得彻底。他们用砖代替石头,用泥浆代替砂浆。他们用它来进行一项文明工程:让我们为自己建一座城和一座塔,塔顶可以通天。但当上帝评估局势时,砖块并不是他关心的:人民是一个,他们有同一种语言,……现在他们没有什么能够被阻止的。1 他们力量的源泉是协调。他们分享一种语言,借此共享的语言能够将他们的工作结合成单独一个人无法单独完成的东西。上帝并没有拿走砖块或他们制造砖块的知识。他让他们无法理解彼此,然后建设停止。人们有一个吸引人的想法:AI辅助编程意味着更好的工具,从而让我们能够构建更雄心勃勃的软件。这在个人层面上确实如此,毫无疑问,拥有代理的开发者能够显著地改变代码库。但大型软件项目从来不仅仅受到个体生成代码速度的限制。它们受制于人们能够协调对他们所改变的系统理解的程度。软件项目的共享语言不是英语或Python,而是对其概念的共同理解、边界在哪里、哪些不变量重要、谁拥有什么以及为什么系统会呈现这样的形态。这种语言很少在一个地方被书面记录。它部分存在于文档和代码中,但也存在于代码评审、对话、争论中,以及向他人解释变更时的经验中。在有代理之前,这种共享理解的维持其实伴随着摩擦。如果我想改变你的存储层,我通常需要阅读你的代码,问你问题,可能还需要与另一个依赖于此的团队进行协调。这一过程缓慢,其中很多慢是浪费,但并非全部。部分是你对理解的过程得以变为我的过程,双方都发现我们是否仍然一致地理解了系统的工作方式。这种摩擦让人们得以同步。代理减少了许多摩擦。我可以请求一个代理添加OAuth,你可以请求一个添加缓存,其他人可以请求一个从头重新构建数据库并将UI变为粉色。每个变更在孤立情况下都是合理的。代码可以编译,测试可以通过,解释可以按需生成。我们中的任何人都不一定必须和其他人交谈,甚至不需要获得改变所迫使我们学习的共享模型的一部分。正如我之前多次所说:代理不会感到痛苦,只有人类会感到痛苦。代理现在让我们能在以前需要其他人的系统部分和代码库中操作,而这些人曾经会轮流出现。当我查看一些基于氛围编码的扩展项目时,代码库变得像巴别塔,并非因为没人能沟通,而是因为没人需要沟通。每个开发者都有一个不知疲倦的翻译,能够解释塔楼的一角,并进行他们所要求的任何局部更改。变更不断涌现,尽管让人类能够共同推理的架构语言正在消失。但这并不是圣经中的故事。在巴别塔,失去共同语言停止了建设,而在AI辅助工程中,共建可以在共享理解已经崩溃后继续进行。没有立即的失败使这变得令人好奇并略显迷惑。塔楼不会倒塌,因此我们不会注意到失去了什么。它只是不断向上升。创世纪 11:3-6,KJV。

赞助内容

NordVPN Next-gen Antivirus

本站免费、广告极少。如果觉得有帮助,可以请我们喝杯咖啡 —— 任何金额都对持续运营有实际帮助。

请我喝杯咖啡