六年前 Stack Overflow 发那篇 IDE 文章的时候,评论区打得比春运还热闹。我当时也是参战选手,抱着自己的 Vim 配置跟人对线到后半夜。现在回头看,突然觉得那年代真好——至少对面的敌人是活人,你骂他,他会生气,还会回你一段五百字的小作文。
现在的"敌人"不会生气。它会心平气和地在你的 commit 里改掉一个你根本不知道为什么会被改的函数签名。
今年开发者调查出了个挺行为艺术的数字:AI 工具使用率 76% 涨到 84%,信任度从 40% 掉到 29%。使用率和信任度画出来就是一把剪刀——越用越不信,越不信越用。偶尔它显灵一次,蒙对了你查了一下午的 bug,那一刻你真想给它磕个头;磕完头第三天,它又自信满满地编了一个从没存在过的参数,让你在客户面前渡劫。
报表上写的是"AI 驱动的高效团队"。你没好意思告诉老板,那个"高效"有一半时间花在跟 AI 解释你想要的其实不是它写的那种高效。
微软那个老哥有句话,我看完差点站起来鼓掌:AI 辅助开发里,你没明确说的需求,AI 默认你不需要。想让应用支持 ARM,你就得一个字一个字地告诉它"给我 ARM 版本",漏一个标点都不行。
这不就是那个我们骂了十年的"你没说"吗?需求方说你没说清楚,PM 说这个不在文档里,现在轮到 AI 说"你没指定"。它学别的不快,学这套甩锅话术倒是无师自通。需求方至少还有个评审会能让你拍桌子,AI 直接给你一份格式工整的"未实现功能列表"。
Bjarne Stroustrup 有句话我一直挺喜欢:代码是解决方案的精确表达,英语这种自然语言拿去表达必须无歧义的内容,是糟糕的工具。这话对吧。对。但它有个前提——你得先自己想明白了,代码才可能精确。现实是,你想不明白也没关系,AI 会把你没想明白的那部分精确地实现出来。
"这个页面做得高级一点。"你把需求方这句话转述给 AI,它很听话,给你上了毛玻璃、粒子背景、还有一段生怕你看不出来的平滑滚动。高级。确实是高级。但你要的高级是这个吗?你也不知道。需求方说完就去开会了,留你和 AI 在"高级"两个字面前大眼瞪小眼——它连这种没精度的词都敢接单,而且接得底气十足。
有人给这现象起了个名字:AI 生成代码本质是 WET,write everything twice。DRY 原则在 AI 时代算是死透了。死法很抽象——不是因为你写了很多重复代码,而是 AI 给每个团队都生成了一遍"同一个按钮组件",每一遍还长得不完全一样。每个团队都以为自己的按钮是独家定制,其实 AI 只是把同一段含糊的需求文档重复翻译了二十遍。
Slack 那个 CPO 说 AI 代理让开发者不用再跟设计师、特定领域的工程师来回沟通了。省了,开会确实省了。代价是 PR 变得巨大——AI 替你想象了一切:配色、交互、接口签名,全给你安排得明明白白。你打开这个巨大的 PR,发现自己一个人要干三个岗位的活:代码审阅、设计 review、需求核对。
这时候你再回味那句"人在回路"——
嗯,回路就是我本人。
最后说个反高潮的。有个开发者说过,她手写代码比用 AI 快,原因特别朴素:她对自己的工具太熟了,熟到手指比脑子先知道该按哪个键。你要是问她为什么不用 AI,她可能会反问一句:我为什么要用一个需要我盯着它才不会骗我的东西?
工具革命革了一圈,agent、vibe coding、智能体,最后大家发现最稳的生产力还是那套你闭着眼都能操作的工作流。有个技术专家说得更直白:一个运行了六年的 bash 脚本可能仍然是最合适的方案,别什么都上大模型。
现在我信了。它不会帮你写代码,但它也不会在某天凌晨三点突然改掉你的函数签名。它只是安静地跑着,像你入行那年写下的第一个循环。
(友情提示:AI 不会抢走你的工作,它只会让你在每天下班前多问自己三十遍"它写的这玩意儿到底对不对"。)
