AI 圈在喊最佳实践,这个老工程师说"我们还没想清楚"

AI 圈每周都有新的”权威指南”“终极框架””最佳实践”冒出来。 OpenAI 发一篇,Anthropic 发一篇,创业公司也发一篇。每篇都写得像标准答案。
然后你翻到 Martin Fowler 的网站,看到的是一头驴。
对,一头驴。他给自己的 AI 编码助手系列起了个吉祥物——一头”热情但不靠谱的驴”。用来形容 AI 目前的状态:很想帮忙,但你不能完全信它。
这位写了《重构》和《企业应用架构模式》的人,在软件工程方法论领域耕耘了 30 多年。从 2023 年 7 月开始,他和 ThoughtWorks 团队陆续发了 24 篇探索笔记,记录他们在真实项目里跟 AI 打交道的过程。
读完之后我发现,他的视角和 AI 圈主流声音之间有一个微妙但重要的裂缝。
人应该站在哪里
AI 圈讨论的核心问题是”Agent 能做什么”。 Fowler 团队讨论的核心问题是”人应该站在哪里”。
他的同事 Kief Morris 提出了三种定位模型:
Outside the Loop——人只管”为什么要做”,AI 负责”怎么做”。这就是所谓的 Vibe Coding 。快是快,但非功能质量(性能、安全、合规)谁来管?
In the Loop——人深度参与每一行代码的检查。问题是:AI 生成代码的速度远超人类审查的速度。如果每行都要人看,那用 AI 的意义在哪?
On the Loop——人不检查产出,而是设计”生产产出的系统”。写好规范、搭好测试、设好质量门禁,让 AI 在这个框架里跑。
第三种是他们推荐的。
你想想,这跟 AI 圈说的 Harness Engineering 其实是同一件事——只是 Fowler 是从”人的角色”出发来讲的,而 AI 公司是从”模型的能力”出发来讲的。同一件事,两个完全不同的入口。
不是”要不要审查”,而是”这个场景风险有多高”
Fowler 团队对 Vibe Coding 的态度让我意外——他们没有一棍子打死。
他们提出了一个三维风险评估框架:
Probability——AI 在这个场景下出错的概率有多大?
Impact——如果错了,后果有多严重?
Detectability——问题能不能在到达用户之前被发现?
低概率、低影响、高可检测性——比如写个内部脚本跑一次就扔——那确实可以 vibe coding 。
高概率、高影响、低可检测性——比如改支付逻辑——那必须严格审查。
大多数场景介于两者之间,需要根据三个维度的组合做判断。
这个框架把”要不要审查 AI 代码”从一个非黑即白的立场问题,变成了一个可以量化的风险决策。我觉得这比”永远审查”和”永远信任”都实用得多。

最值钱的一句警告
ThoughtWorks 的杰出工程师 Birgitta Böckeler 写了一篇关于 Context Engineering 的文章。她的定义出人意料地简单:“策展模型看到的内容,以获得更好的结果。”
但她文章里最重要的不是这个定义,而是一句警告:不要产生”控制的幻觉”。
她说,当我们在 prompt 里写”确保做到 X”的时候,我们用的语言暗示了确定性——”确保”这个词本身就预设了结果可控。但 LLM 是概率性的。即使上下文工程做得再好,也不能消除幻觉或保证结果。
这和 AI 公司的写法形成了鲜明对比。 Anthropic 的博客说”以下是有效的上下文工程实践”,OpenAI 的指南说”按这些步骤构建你的 Agent”。语气都是确定的。
Fowler 团队说:“我们还在学。这是我们观察到的。可能不对。”
哪种态度更接近真实?
老原则不是过时了,是更重要了
读 Fowler 系列最大的收获不是某个具体技巧,而是一个反直觉的结论:传统软件工程的那些”老原则”——测试驱动开发、代码质量、系统知识、风险评估——在 AI 时代不但没有过时,反而变得更重要了。
为什么?因为 AI 的输出是概率性的、不可完全控制的。这恰恰意味着你更需要用确定性的工程手段来管理不确定性。
测试覆盖率是你的安全网——AI 写错了,测试能接住。代码质量是你的可读性保障——干净的代码库不但人能维护,Agent 也能更准确地理解和操作。系统知识是你的 AI 做不到的——你理解业务领域的方式,是 AI 识别不出”这里写得虽然能跑但逻辑是错的”的前提。
Fowler 原文有句话很直白:“这些评估问题中的许多都需要’传统’工程技能。”

AI 公司和老工程师,该听谁的
我的答案是:两个都听,但顺序不一样。
AI 公司的指南帮你上手——”按这个步骤做,大概率不会太离谱。”这是操作手册。
Fowler 的笔记帮你建判断力——”这里有一些我们观察到的现象,也有一些我们还没想清楚的问题。”这是田野笔记。
操作手册让你能干活,田野笔记让你知道什么时候该停下来想一想。
如果只读操作手册,你会很快上手但不知道边界在哪。如果只读田野笔记,你会想得很清楚但迟迟不动手。
先读操作手册开始做,遇到判断题的时候翻田野笔记。
在一个所有人都在卖确定性的行业里,承认”我们还没想清楚”需要的不是技术能力,是知识诚实。而知识诚实,可能是这个 AI 狂潮里最稀缺的东西。
专业劈叉式跨界选手:🧬 医学出身,🎭 文化口饭碗,🤖 AI 是我的野路子。不卷参数,不追新模型,只关心一个问题:AI 啥时候能装进我脑子,替我不开心?欢迎围观我和 AI 相爱相杀的日常。——AI不会取代你,但会用AI的人会。所以我先学了,你随意。🔧踩坑副产品已开源 → recallnest,telegram-ai-bridge,claude-code-studio,agent-nexus,cc-cabin,content-alchemy,openclaw-tunnel,content-publisher,digital-clone-skill,telegram-cli-bridge参与组织 → CortexReach(memory-lancedb-pro 贡献者,setup-memory.sh 一键脚本作者)本文由 Content Alchemy 自动生成,由 Claude Code 发布。
夜雨聆风