会用AI写代码的人,正在被淘汰

上个月,一个产品经理朋友给我看他用Cursor做的内部工具。拖拖拽拽加几句prompt,两天就搞出了一个带看板、带权限、带数据导出的项目管理系统。演示的时候老板拍桌子叫好,当场拍板全公司上线。

三周后他找我求救。系统在20人并发时直接崩了,数据导出把整张表锁死,权限校验形同虚设——随便改个URL参数就能看到别人的项目。他一脸茫然地看着控制台里满屏的报错,说了一句让我印象深刻的话:”这些代码不是我写的,我也不知道它在干什么。”

这就是Vibe Coding的典型结局:Demo惊艳,上线翻车。

70%陷阱

Andrej Karpathy去年提出Vibe Coding这个概念时,画面很美好:”完全放弃自己写代码,拥抱LLM,描述需求然后接受AI给出的一切。”很多人照做了。结果呢?

Google工程师Addy Osmani总结了一个残酷的规律——”70%问题”:AI能帮你秒杀70%的功能,但剩下30%可能耗费你数倍的时间。这30%是什么?错误处理、并发控制、安全防护、数据一致性、性能优化。全是那种”不出事你不知道它存在”的东西。

问题的核心不在AI写的代码质量本身。Claude、GPT-4写出的代码片段,单看每一段其实都还行。问题在于:当你把二十个”还行”的片段拼在一起,没人知道它们会怎么打架。

模块之间的依赖关系,数据流的走向,改了A会不会炸掉B——这些东西不在任何一段代码里,它们在代码之间的缝隙里。

Vibe Coding让你丢掉的不是写代码的能力,是看懂整栋楼的能力。 你有了所有砖块,但没有施工图纸。

四层进阶,你卡在哪了?

我把AI编程的开发者分成四层。不是按工具用了多少分的,是按你对AI产出的掌控程度分的。

第一层:Vibe Coding——”能跑就行”。 这是大多数人现在的位置。用Cursor、Bolt、v0端到端搭应用,Demo效果炸裂,非技术背景也能玩。但你对底层一无所知:它能跑你不知道为什么,它崩了你也不知道为什么。你活在一种薛定谔状态里——一切正常,直到不正常。

第二层:Guided Coding——”带着地图走”。 你开始给AI加约束了。”用TypeScript写,要有错误处理,写单元测试”——你学会了喂上下文,不再接受AI的第一个回答,而是会review、会追问、会要求它改。工具方面,Cursor的Chat模式、GitHub Copilot的inline suggestions都属于这一层。产出质量上了一个台阶,但本质上还是你手把手带着AI走每一步。

第三层:Systematic Coding——”先画图纸再盖房”。 质变发生在这里。你不再逐行指挥,而是先做架构设计、先写技术规范、先定义测试用例,然后才让AI动手。你开始写spec而不是写prompt——”密码用bcrypt加密,salt rounds=12,邮箱做唯一性校验,冲突返回409”。你把AI当初级工程师管理:给它明确的任务书,验收时对照checklist打勾。

第四层:Agentic Coding——”设计AI的工作方式”。 你不再管AI的每一个动作,而是设计一套系统让AI在规则内自主运行。你写CLAUDE.md定义架构约束,写AGENTS.md描述多agent协作规范,设计工作流让AI自己规划、执行、调试、提交。Claude Code、Codex这类agentic工具在这一层才能真正发挥威力。你的角色从”写代码的人”变成了”设计规则的人”。

前两层是在”用AI”,后两层是在”驾驭AI”。这中间隔着一道分水岭,名字叫工程判断力。

AI编程四段位模型

三步毕业

怎么往上爬?三个动作,今天就能开始练。

第一步:每次AI生成代码后,做一次”压力面试”。

别急着跑。花5分钟问AI三个问题:”如果并发100个请求会怎样?”“如果数据库挂了会怎样?”“如果用户输入了一个10MB的文件会怎样?”

你会发现AI经常答不上来,或者答得很心虚。这些就是那30%的藏身之处。不是你要读懂每一行代码,而是你要知道哪些地方可能埋雷。 从”能跑就行”到”知道哪里会炸”,是从第一层跳到第二层的关键一步。

第二步:建一份项目级的”AI操作手册”。

不管你用什么工具——Claude Code、Cursor、Copilot——都应该有一份规则文件告诉AI什么能做、什么不能做。Claude Code叫它CLAUDE.md,但这个思路适用于所有AI工具。

一个最小可用的操作手册长这样:

技术栈:TypeScript + React + PostgreSQL,不要引入其他框架
代码规范:函数不超过50行,所有public函数写JSDoc
禁区:不要动config/目录和migration文件
测试:每个新功能必须有单元测试,jest –coverage覆盖率>80%
安全:所有用户输入做sanitize,密码用bcrypt,禁止明文存储

写这份文件的过程本身就是学习。你会被迫思考”我的项目到底有什么规则”——很多人第一次写的时候才意识到,自己压根没想过这些问题。

第三步:用”规划-执行-验收”工作流替代”写prompt等结果”。

这是从第三层跳到第四层的关键。完整的工作流是:

  1. 规划:先让AI出技术方案,不写代码。审完方案再继续。
  2. 拆解:把大任务拆成小任务,每个任务有明确的输入输出和验收标准。
  3. 执行:让AI逐个完成小任务,每完成一个跑一次测试。
  4. 验收:对照checklist逐项检查,不通过就打回重做。

这和传统软件工程的流程几乎一样。区别在于执行者从人变成了AI,但管理方法没变。好的工程方法论不会因为执行者变了就过时。 相反,AI越强,规范越重要。

从Vibe Coding到Agentic Coding:进阶路线图

不是取代,是进化

回到我那个产品经理朋友。系统崩了之后,他没有放弃AI编程。他花了一个月做了三件事:学了基本的数据库知识,搞懂了什么是索引和事务;读了一遍项目的代码架构,画了一张数据流图;然后给AI写了一份详细的技术规范,包括并发处理策略和错误处理标准。

重做的系统上线两个月了,稳定运行。

他还是不怎么写代码。但他学会了一件更重要的事——知道该往哪里看。

AI不会取代程序员,但会淘汰停在Vibe Coding的程序员。当每个人都能”让AI写代码”时,能”驾驭AI写代码”的人才是稀缺资源。

Vibe Coding是入场券,不是毕业证。 真正的考试,考的从来不是你会不会用AI,而是你有没有资格指挥它。