@bcherny: 我一直在思考的一件事:过去,我认识的最优秀的工程师们花大量时间以各种方式自动化自己的工作……

X AI KOLs Following 新闻

摘要

一条发人深省的推文串,主张自动化工程任务(尤其是使用像Claude这样的AI代理)比以往任何时候都更加重要。它主张将领域知识编码为基础架构,以加速开发并使非工程师也能参与贡献。

我一直在思考的一件事:过去,我认识的最优秀的工程师们花大量时间以各种方式自动化自己的工作。更好的vim/emacs自动化,编写lint规则来捕获重复代码问题,构建一套端到端测试,这样他们就不需要手动对应用进行冒烟测试。这些是工程师能做的最高杠杆活动,因为它成倍地增加了他们自己的产出,进而意味着他们可以构建更多东西。 我认为许多这样的自动化现在变得更加重要了。这有几个原因。 首先,基础设施和DevX自动化能加快你的速度。如果你正在运行一支代理大军,每个代理也会被加速。更多的自动化 == 每单位时间更多的产出。 其次,将事情转化为代码可以提高效率。你的代理可以在每次看到某个问题发生时修复它,但这会消耗token,并且可能会遗漏一些情况。如果Claude转而编写一个lint规则、CI步骤或例行程序,那么该类问题就可以被彻底永久自动化。这正是人们所说的循环——它是关于自动化整类繁琐工作,而不是一次性解决它们。这根本不是新想法。工程师们已经这样做很久了! 第三点也是最重要的一点,自动化使其他人更容易贡献代码库。我越来越多地看到,工程师们在第一天就能为代码库做出贡献,因为Claude可以为他们导航代码库,而非工程师也能像工程师一样有效地为代码库做出贡献。阻碍这两点的是存在于人们头脑中而不是自动化中的领域知识——那是你过去在入职时不得不学习的东西。得益于代理,领域知识可以编码为基础架构,而不再局限于可以通过lint规则、类型和测试表达的内容;现在它可以捕获几乎所有的领域知识,编码为代码注释、技能、CLAUDE.md规则和记忆。如果我为一个我不熟悉的iOS代码库提交PR,代码审查者因为我没有使用正确的框架而拒绝它,或者如果设计师构建了一个新功能却因为不符合正确的架构模式而被拒绝,这些都是自动化的失败。 每个团队都应该编写CLAUDE.md、REVIEW.md、技能和文档,让代理能够在无需提示者提供任何额外上下文的情况下高效地在他们的代码库中工作。这听起来很疯狂,但同时也是工程师们一直在做的事情的自然延伸:自动化和将领域知识编码为基础架构。随着模型变得更聪明,工具链也越来越成熟,这一任务将变得更加容易。与此同时,每个团队都有责任寻找方法,将他们的领域知识转化为基础设施,以便Claude能更好地编写代码,代码审查能自动捕捉问题,从而使下一个在你们代码库上工作的人能更容易地贡献代码。
查看原文
查看缓存全文

缓存时间: 2026/07/15 19:58

我最近一直在思考一件事:过去,我认识的最优秀的工程师会花大量时间以各种方式自动化他们的工作。无论是优化 vim/emacs 的自动化操作,编写 lint 规则来捕获重复的代码问题,还是构建一套端到端测试以避免手动冒烟测试应用,这些都属于工程师能做的最高杠杆活动,因为它们放大了工程师自身的产出,从而让他们能构建更多东西。

我认为现在这些自动化变得比以往更加重要。原因有几点。

首先,基础设施和开发者体验(DevX)自动化能加速你的工作。如果你正在管理一组智能体,那么每个智能体也会因此加速。自动化越多,单位时间的产出就越大。

其次,将事情迁移到代码层面能提升效率。你的智能体可以在每次发现问题时修复它,但这会消耗 token,并且可能遗漏某些情况。相比之下,如果 Claude 编写一条 lint 规则、一个 CI 步骤或一套例程,那么这类问题就能永久地完全自动化。这正是人们谈论“循环“(loops)时的真正含义——自动化整类杂务,而非逐个解决。这并非全新的想法,工程师们已经这样做了很久!

第三点,也是最重要的一点:自动化让他人更容易为代码库做出贡献。我越来越多地看到,工程师在第一天就能为代码库做贡献,因为 Claude 可以帮他们导航代码库;而非工程师也能像工程师一样高效地贡献代码。阻碍这两者的,往往是那些存在于人们脑中而非自动化中的领域知识——那些过去你必须在上手时学习的东西。得益于智能体,现在可以将领域知识编码为基础架构,这种能力不再局限于 lint 规则、类型和测试所能表达的范围;它几乎可以捕获所有领域知识,编码成代码注释、技能、CLAUDE.md 规则和记忆。如果我在一个不熟悉的 iOS 代码库上提交 PR,而代码审查者因为没使用正确框架而拒绝它;或者设计师构建了新功能,却因为没遵循正确的架构模式被拒绝——这些都是自动化的失败。

每个团队都应该编写 CLAUDE.md、REVIEW.md、技能和文档,使智能体能够在零额外上下文的情况下高效地在他们的代码库中工作。这听起来有点疯狂,但同时也是工程师一直在做之事的自然延伸:自动化,并将领域知识编码为基础架构。随着模型变得更聪明,工具链更成熟,这个任务会变得更加容易。与此同时,每个团队都有责任寻找将领域知识转化为基础设施的方法,这样 Claude 就能更好地编写代码,代码审查能自动捕获问题,下一个在你们代码库上工作的人也能更容易地做出贡献。

这就是为什么 Claude Code 总是告诉我它要“跑一个冒烟测试“—— @bcherny 教会了它这个。

嘿 @bcherny 你看到这个了吗哈哈?

相似文章

@saranormous: https://x.com/saranormous/status/2064510215056400652

X AI KOLs Following

尽管以Devin为代表的AI编程助手取得了快速进展,显著提升了代码编写和交付的速度,但本文认为,软件工程中最有价值的部分仍难以通过基准测试衡量,并且需要人类的判断和组织协调,这些是无法轻易自动化的。