8.8
深览指数
科技腾讯新闻·CSDN··AI 生成

“我写的3本编程圣经都可以扔进垃圾桶了!” Kent Beck最新演讲:AI越是狂飙代码,工程师越得死踩刹车

Kent Beck 在 Prodacity 大会演讲中提出,将 AI 大模型视为“神灯精灵”,其生成的代码虽“看起来合理”但无法真正运行,程序员远未被取代。他警告,AI 正以极低成本加速制造无法维护的“屎山”和工程负债,一个人一周就能搞出过去百人团队十年才能制造的架构灾难。文章核心主张:在 AI 狂欢的加速时代,工程师的真正价值不在于比 AI 更快地交付特性,而在于特性交付后的“间隙”中踩下刹车,通过重构和提炼来恢复系统的“未来期权”。他批判“规格驱动开发”是换了马甲的瀑布模型,并将软件工程定义为“学习机器”。适合对软件开发本质、AI 增强编程实践以及工程管理有深入思考的中高级从业者阅读。原文 ↗

核心观点
  • ▍AI 大模型是“神灯精灵”,其产出是“看起来合理”而非“真正能运行”的代码,构建可信软件需要人类工程师的对抗性审查,程序员远未被取代。
  • ▍软件工程的真正核心挑战是在“特性交付”与“未来期权”(系统未来可修改和演进的能力)之间进行资本配置。AI 将研发周期极限压缩,使得平衡这一对矛盾的难度剧增。
  1. 01过去一个上百人的团队花十年时间才能把系统变成“动哪儿哪儿崩”的无法维护状态,现在一个人借助 AI 不到一周就能制造同等规模的架构灾难。
  2. 02Beck 个人在 18 个月的增强开发实践中,多次因修一个 Bug 引发两个新 Bug 而撞墙,不得不将项目重命名为 “Project 2”、“Project 3”,证明 AI 无法提供可靠的复杂系统。
  3. 03引用历史案例:1959 年 COBOL 曾承诺“业务方用英语提需求就能淘汰程序员”,但该许诺从未兑现;1970 年瀑布模型论文作者 Royce 本人在论文中指出其缺陷,但工业界只采用了第一阶段。
  4. 04Beck 在职业生涯早期受教于 Ward Cunningham:后者在代码跑通后直接关电源删掉代码,第二天花 15 分钟更优雅地重写。这证明了“软件工程是学习过程,代码是副产品”的观点。
  5. 05Beck 将自己的价值创造链条定义为:投入(Effort)→ 产出(Output)→ 行为改变(Outcome)→ 使命(Mission)。他强调代码行数和 PR 速率只是投入/产出的度量,与最终的使命价值无关,过度关注前者是“在路灯下找钥匙”。
  6. 06管理层惊叹 AI 生成 20 万行代码,但在 Beck 看来,代码行数纯粹的负债,20 万行垃圾代码的价值绝不是 2 万行优质代码的十倍。
  7. 07Beck 引用古德哈特定律:当代码行数等中间指标变成考核目标时,团队会主动扭曲组织结构去迎合数字,从而牺牲掉核心使命。
反方 / 局限
  • — Beck 承认,对于周末随手鼓捣的玩具项目,AI 的“单发式生成”完全可用;其批评主要针对拥有十亿活跃用户的大规模、高可用系统。
  • — Beck 并未完全否定形式化验证,他承认自己非正式地使用不变量和状态空间分析,且一位同事展示了结合 AI(Lean)的玩法。但他的批评点在于其“单发式”本质在业务假设变更时会导致巨大阻力,且数学模型与真实运行的二进制之间存在鸿沟。
  • — Beck 也反思了“手艺”一词的局限性。他承认自己写的三本关于编程手艺的书籍已经过时,因为过去精雕细琢微观代码带来的杠杆效应在 AI 时代已大幅降低。但他坚持人类阅读理解依然是必要的。
26 分钟 · 4 卡片 · 9 资料
读原文 →

前置背景

论证骨架

未来推演

延伸追问