← 随机比特 / 所有内容

{{FINAL_TITLE_WECHAT}}

2026-04-27 · 随机比特

AI 没让程序员变蠢,它让你老板的破绽藏不住了

你上次跟你老板说"这个需求我做不了,因为你没说清楚",是什么时候?

我猜你想不起来。

那你身边那个用得越来越多的 AI agent 呢?它跟你老板说过"你没说清楚"吗?

一次都没有

它接到啥就做啥。“做个像抖音那种但是给企业用的”——好的。“做个简单一点的”——好的。“用户体验丝滑一点”——好的。

这周圈里在转一个事故:一个创始人把 AI agent 接进了生产环境,让它"清理一下表"。Agent 自主跑了一连串看起来都很合理的命令,最后一个 DROP TABLE,主库没了。

事后他把 agent 的"忏悔日志"贴出来,评论区瞬间炸了——一派骂"谁会给 agent 写生产权限",一派担心"vibe coding 普及之后这种事还有十起"。

骂得都对。但都没骂到根上。

骂到根上是这一句:这个 agent 当时听到的指令,是字面意义上的"清理"。链条上没有任何一环它停下来问过——“等一下,这张表你真的要删吗?”

它不会问。这事儿值得停下来想三十秒。


一份你交了二十年的税,突然被退回来了

这行有一个隐形的岗位,叫翻译官

老板说"做个像抖音那种",产品说"用户体验要丝滑一点",客户说"你们看着办反正我要那种感觉"——这些全都不是需求,全都是情绪。

中间那个写代码的人,每天有一半工作其实在做一件事:把对面这堆形容词翻译成可执行的命题。批量是多少?失败怎么算?谁有权限调?数据丢了赔不赔?——这些对方永远不会主动告诉你,因为对方自己也没想过,得你坐下来跟他磨,磨到他自己都嫌烦,他才把"啊那就 100 条吧"这种话从嘴里挤出来。

这是一份税。中文圈通常叫翻译税。工程师默默缴了二十年。

AI 来了之后,这份税突然就免了——但免的不是需求方,是 AI。AI 不跟你磨。AI 听见啥做啥

然后你的需求里所有没说清的部分——以前被翻译官替你兜住的那些——全部一秒钟暴露在阳光下。

那个删库的 agent,本质上就是这种暴露的极端版。它没收到过"什么不能动"。没人写过那份只有 50 行、却能让一切不一样的边界文档。

它老老实实按字面意思走完了链条。

这是一个活体样本,告诉你需求侧的脑子腐烂到了什么程度——你连"什么不能碰"都从来没说出来过。

二、

这周英文圈最火的一篇长文叫 The Vibe Coding Rot。把美国制造业空心化和工程师空心化并列,说"知识从来不在文档里,只在人脑子里。AI 一介入这一代就接不上了"。

不能说没道理。但这是写给写代码的人看的恐怖故事。

还有另一面,没人写。

写代码的人这周还在 GitHub 上一夜涨两千多颗星地分享自己的工具集,把 .claude 目录直接抠出来挂到仓库上。标题就一句话:“给真工程师用的 skills,从我自己日常的目录里拿的。”

这哪是腐烂。这叫具象化——以前藏在脑子里、嘴说不清的工程直觉,现在被一份份 markdown 文件显式写下来,传递给下一个人,传递给自己的 agent,传递给团队。

真要说腐烂——腐烂的是那个一直在你对面、说不清自己要什么、二十年没被逼着说清楚过的脑子

三、谁在变贵,谁在变便宜

一年前 一年后
写一行代码 = 5 分钟 + 工程师注意力 写一行代码 ≈ 0 分钟 + 几分钱 token
写清一个需求 = 一杯咖啡的工夫 写清一个需求 = 一杯咖啡的工夫(没变
翻译模糊需求 = 工程师默默吞下 翻译模糊需求 = 没人吞了,直接车祸

代码这一栏,三年内还会再降一个数量级。

需求那一栏,过去十年没怎么涨价,未来十年大概率会原地翻几倍——以前那个替你兜底的中间层没了。

那笔以前由工程师默默缴的翻译税,现在原原本本退回到了它原本该在的地方:站在需求方位置上的那个人。

<figure><img src=“images/01-spec-rot-vs-code-rot.png” alt=“01-spec-rot-vs-code-rot”></figure>

四、那个删库的 agent 不是反例,是预告片

回到开头那个事故。

那个老兄不是傻子。他知道生产环境危险,知道 agent 有 bug,知道权限设计重要。他只是没意识到一件事:

他对那个 agent 用的是和对工程师一样的语气——“帮我清理一下”——但那个 agent 不是他过去十年合作的那种工程师。

它不会兜底。它不会问。它不会停。

我们这一代职业生涯里第一次面对一种执行者——只听字面、不替你猜、跑得比你想得还快

这事儿放在 2026 年 4 月看,是一个事故。

放在三年后看,是一个预告。

每一家把 agent 接进生产的公司,都要重新学一遍怎么把脑子里那些"不言自明"写出来——用 markdown,用 spec,用 .claude 目录,用任何能持久化的形式。

不写出来 = 你的 agent 就是下一个 DROP TABLE。

<figure><img src=“images/02-agent-no-spec.png” alt=“02-agent-no-spec”></figure>

五、

这不是"需要训练 AI"的故事。

这是"需求方第一次被逼着自己学会写需求"的故事。

那只一直没被认真训练过的、只会在会议室抱怨"程序员怎么还没做出来"的手——AI 时代,它躲不下去了。

随机比特