Critical Read · AI 时代研读
当 Agent 一天能生成上万行跑通的代码,人类还需要去理解代码吗?拆解 Geoffrey Litt(Notion)与 Uncle Bob 的核心争论:超越「查 Bug」的低阶误区,警惕「认知债务」,掌握 4 大 AI 辅助理解套路(Explain Diff、减速测验、微世界、共享空间),把代码理解变成持续创造的燃料。
解读自特工宇宙《AI 能力越来越强,那么它生成的代码,人类还需要去理解吗?》(基于 Geoffrey Litt 在 AI Engineer Conference 的演讲)。一手来源核于 2026-07。
著名程序员 Uncle Bob 表示:只要 Agent 的测试用例通过,他就不再看代码细节。但 Notion 设计工程师 Geoffrey Litt 提醒:大多数人选「不看」会掉入极深陷阱。先弄清两个核心概念:
在 AI Engineer Conference 上,绝大多数开发者投票认为『仍然需要理解代码』,但 Geoffrey Litt 指出:大家选择需要理解的理由,大多数是错的。
以为理解代码是为了:
为什么错: Agent 的自我验证与正确性演进非常快,Loop Engineering 会闭环解决正确性问题。如果你只做这些,你只是在干 AI 的活。
理解代码是为了:
为什么对: 当你真正理解了代码,这份认知会带入下一个开发循环,支撑你完成无法被 AI 替代的创造性跃迁。
💡 Uncle Bob 为什么可以不看代码?
因为他已经写了几十年代码,系统的运作模式早已在脑中内化为极强的架构直觉。而对于处于成长期的普通开发者,盲目模仿 Uncle Bob 不看代码,等于放弃了积累直觉本身。
面对 Agent 每天跑出的海量代码,逐行手读 PR 极具挑战。Geoffrey Litt 总结了 4 套用 AI 辅助人类理解 AI 代码的具体实践:
Agent 提交代码后,不直接丢一段生硬的 git diff,而是调用专门的 Skill,生成一份遵循教学设计的阅读文档:
- function renderGarden(ctx, rocks) {
- rocks.forEach(r => ctx.fillRect(r.x, r.y, 10, 10));
+ function renderGarden(ctx, rocks) {
+ rocks.sort((a,b) => a.z - b.z).forEach(r => {
+ const scale = 1 / (1 + r.z * 0.05);
+ ctx.drawImage(rockImg, r.x * scale, r.y * scale, 10 * scale, 10 * scale);
+ });
❌ 认知痛点:不知道为什么要 sort,不知道 z 轴系数 0.05 的直觉何在。
📖 背景与目标:用 2D 绘图技巧模拟 3D 景深感
本次变更解决花园石头重叠时的层级错乱。核心逻辑分两步:1. 按 Z 轴从远到近排序;2. 根据距离计算透视缩放比例。
✓ 认知优势:先理清物理模型与直觉,再看代码实现,一眼看懂逻辑全貌。
act as an expert technical educator. Before presenting the code diff, generate an "Explain Diff" document following 3 rules: 1. Context First: Explain the subsystem's background and core architecture before any file changes. 2. Intuition Before Details: State the fundamental intuitive goal of this PR in one sentence. 3. Logical Sequence: Present code changes in logical comprehension order, not alphabetical file order. Include brief rationale above each block.
中文大意
扮演专家级技术教育者。在展示代码 diff 前生成 Explain Diff 文档:先讲子系统背景与架构;用一句话总结 PR 核心直觉目标;按认知逻辑顺序而非文件名字母顺序组织代码。
根据 Andy Matuschak 的研究《Why Books Don't Work》,人极易产生「看过了就以为懂了」的错觉(Illusion of Competence)。
源自教育家 Seymour Papert 的「微世界」思想:光读文字不够,人需要在可交互的微型世界里动手操作才能建立直觉。
团队协作中最可怕的是:你自己理解了,但同事没理解;或者每个人跟 AI 私聊出了不同的子系统偏置。
50 年前 Alan Kay 在《A Personal Computer for Children of All Ages》中曾设想:计算机的应用目标是扩充人类的认知能力(Augment Human Intellect),而非被动消费内容或盲目自动生成。
当 Prompt 可以在数秒内生成原型代码、可视化调试器或教学文档时,写代码的边际成本正趋近于零。
在未来,『理解系统全貌与本质的能力』将远比『能调用 AI 生产代码的能力』更加稀缺与高贵。
终极问题解答:AI 能力越来越强,人类还需要理解代码吗?
答案是:要!但你可以用 AI 帮人类理解 AI 写的代码。
AI 给了我们全新的武器去建立直觉。短期的苦功夫与深入理解,决定了你在 AI 浪潮中究竟是系统的驾驭者,还是被认知债务淹没的旁观者。
不必都读。每条只记一件「这家独有」的事——想深入哪个再点进去。
场景题,答错会告诉你去重读哪一节。全对才算通过。