用 AI 写代码最荒谬的现状:模型一秒钟吐出代码,工程师花三个小时替它排错
用 AI 写代码最荒谬的现状:模型一秒钟吐出代码,工程师花三个小时替它排错。
同样用 Claude Code,有人天天在命令行里给模型当全职保姆。 Anthropic 内部却把新工程师的技术上手周期,从三周直接压到了两天。 负责该项目的 Boris Cherny,一个人常年并行跑着五个独立的开发终端。 根据他在内部实测的数据,改变工作流之后,交付质量直接拉开两到三倍的差距。
交付质量差三倍的根源,不在模型的智力,也不在提示词写得有多长。 核心分水岭只有四个字:闭环校验。
绝大多数人使用 AI 编程,本质上都在做开环控制。 你输入一段自然语言需求,模型根据概率生成一段代码。 代码对不对?有没有边界漏洞?能不能跑通? 全不知道。 你必须肉眼通读代码,复制进编辑器,手动执行编译,发现报错,再把报错信息截图粘回对话框。 在这个链条里,工程师肉身充当了编译报错器和人肉测试机。 只要模型漏掉一个括号或改错一个变量名,人类的注意力就被强行打断一次。 这种人机协作不仅没有解放生产力,反而把人类锁死在了最高频、最琐碎的纠错泥潭里。
Boris 跑通的逻辑刚好反过来。 他从不假设模型能一次写出正确的代码。 他的核心原则是:验证优于提示。 与其花半个小时雕琢一段完美的提示词,不如花三分钟给模型搭一套具备自我证伪能力的验收支架。
这套支架通常由三层闭环构成: 第一层是类型检查与代码规范的静态门禁。 第二层是自动化单元测试与集成测试套件。 第三层是用无头浏览器截取界面渲染图与抓取运行日志。
在这套结构里,模型写完代码的第一件事绝不是交卷。 它必须在本地沙箱中自动触发测试套件,调起浏览器检查页面元素,捕捉控制台的每一条异常。 测试挂了,报错信息不需要人类过目,直接作为反馈输入重新喂给模型。 它自己解析堆栈信息,自己定位源文件,自己修正业务逻辑,然后再次触发测试。 这个过程在沙箱内部高速循环,直到所有断言全部变绿、界面渲染完全符合预期,它才会把最终结果呈现在终端上。
这就是闭环自校验的威力。 它把过去需要反复打断人类的微小排错,全部下放给机器在内部自生自灭。
当排错不再依赖人类实时盯盘,工程吞吐量就迎来了质变。 你不需要坐在屏幕前当监工。 你可以借助 Git Worktree,把同一个代码仓库拆解成五个相互隔离的物理工作区。 终端 A 负责底层数据库迁移与表结构优化。 终端 B 负责重构后端鉴权逻辑。 终端 C 负责编写前端交互组件。 终端 D 负责补齐边缘情况的端到端测试。 终端 E 负责审查全部修改的代码差异。 五个实例在各自的沙箱里独立运转,自己编码、自己运行、自己修错。
Anthropic 能够把三周的入职周期压缩到两天,也是同一个道理。 新员工进入庞大的老代码库,不再需要到处找资深架构师询问历史背景。 模型会自主读取历史提交记录和关联议题,调用预设的本地测试流水线自主验证。 把原本依赖人传人的经验体系,直接沉淀成了可自动化执行的上下文规则。
工程师的专业定位,在这个节点上发生了一次彻底的位移。 低效的开发者还在苦练提示词咒语,试图用玄学语言驯服一个统计模型。 高效的架构师已经坐上了裁判席,专心编写不可妥协的测试用例、静态约束与评测基准。
AI 编程的真正分水岭,从来不由生成速度决定。 它的上限,取决于你在周围搭了多厚的验证支架,以及能不能用一套冰冷的测试链条,逼着模型在失控前自己纠偏到底。
引用 / CITATIONS
No citations exported.
导出 / EXPORT
订阅 · SUBSCRIBE
新的深度解读发布时,会在每周简报里送到你邮箱。