AI 写代码的陷阱:6 个数据在骗你,ROI 算得再准也白搭
AI 写代码的陷阱:这 6 个指标正在骗你
刚签完合同,团队就能用上 AI 写代码工具。厂商说能加速开发、提升幸福感,还能带来可观的回报。老板问你:拿数据证明一下。
问题来了。你准备拿出来的这些数据,可能正把真相藏起来。
“代码行数”这个指标最容易骗人
最容易让人兴奋的指标,就是代码行数。用了 AI 之后,开发人员每人输出的代码量涨了 40%。看起来很成功,对吧?
其实不然。
代码多不代表做得好。有时候反而相反。一个开发者把 2000 行乱七八糟的旧代码,改成 200 行清晰简洁的代码,实际改善很大。但按代码行数看,这反而成了大倒退。
AI 工具写代码有个毛病——太啰嗦。它能写出能跑的代码,但往往写得又长又复杂。你测到的其实不是效率,而是“话痨”。而啰嗦的代码会增加维护成本,也更容易出 bug,新人接手也更难。
小结: 如果你只盯着代码量,那你量错方向了。
实验室里的速度,现实里不一定管用
有研究说,用 GitHub Copilot 的开发者,完成任务能快 55%。数据很亮眼。
但研究场景是:在 90 分钟内,从零开始写一个 HTTP server,而且没有其他干扰。
这跟真实工作差太远了。真实场景里,开发者面对的是别人写好的庞大代码库。需求描述往往模糊不全。他们要回消息、开会、切换任务,还得跨团队协作。实验室里的“速度快”根本反映不了日常工作的真实节奏。
更值得注意的是,有研究发现,经验丰富的开源开发者用 AI 工具后,任务完成时间反而多了 19%。他们自己原本以为会更快,结果却因为调试、审查和修复 AI 建议,花了更多时间。
小结: 要用真实工作来测速,别拿玩具项目当参考。
没对比组,就分不清因果
1 月:上线 AI 工具。
6 月:Pull Request 数量涨了 35%。
看起来工具有效。
但这期间你还做了这些事:新招了 12 个工程师、优化了 CI 流程、换了云服务商、发布了两个大功能简化了代码库。
没有对比组(比如一个没用 AI 的团队),你无法判断这些提升到底来自 AI,还是其他因素。你看到的只是相关性,而不是因果关系。
小结: 即使觉得麻烦,也要做好 A/B 测试。
开发者“觉得更快”不等于真的更快
很多公司喜欢问开发者:你觉得用 AI 工具更高效吗?答案往往是“87% 的人觉得更快”。
但这 unreliable。
因为存在几个心理偏差:
- Hawthorne 效应:被观察时,人的行为会改变。开发者知道这是在评估工具值不值得买,会倾向于正面回答。
- Novelty 效应:新工具刚用的时候确实感觉快,但这种感觉几 Wochen 就会消失。
- Social Desirability Bias:开发者会说管理层想听的话。
你测到的是“感觉”,而不是“实际产出”。
小结: 相信实际交付的东西,别只听感觉。
指标一旦被盯上,就会被人“玩弄”
McKinsey 建议用提交次数、PR 数量和票据完成速度来衡量生产力。
但这很容易被 Goodhart’s Law 击中:当一个指标成为目标,它就不再是一个好指标。
一旦开发者知道提交次数被跟踪,他们就会拆成小提交、增加数量。票据数量被看时,他们会把任务拆 in 小块。指标好看了,但实际工作质量可能没变好。
活动量 ≠ 输出。输出 ≠ 值。
小结: 公开测什么,就会有人优化什么。《要》想想你正在激励什么行为。
容易测的部分,只占一半
AI 写 code 快,这是容易测的。
但以下 things 很难测:
- 审查 AI 代码的耗时
- 修复 AI 建议错误花费的调试时间
- AI 建议中隐藏的安全漏洞
- 忽略架构上下文的快速修复带来的技术债务
研究表明,GitHub Copilot 生成的代码中有相当一部分含有安全漏洞。压力大时,开发者会 öfter 接受这些不安全的建议。
你只 measured 生成的时间,忽略了审查、安全和调试的时间。净 ROI 可能为 negativ,但你的指标不会告诉你。
小结: 要看整个流程,而不是只看见 AI 加速的那部分。
你应该先问自己:成功到底是什么
在开始测量之前,先问:成功对于我们的团队到底是什么?
是更快交付新功能?减少 bug 率?提高代码可维护性?加速新人 onboarding?还是减少技术债务?
不同目标,需要不同指标。而这些指标需要严谨的方法:对比组、统计方法、长期观察,以及承认其他影响因素。
AI 工具可能真的有价值,但你只有用正确的方式去测量,才能知道它到底是否 nützlich。
接下来怎么做
如果公司真的想评估 AI 工具的效果,建议找一个有研究方法论训练的人来帮忙。软件工程领域过去对自己的实践一直缺乏严 cuid。
这次,我们要认真地去测量。