先说答案:是,也不是。
取决于你说的"改代码"是哪一件事。
教一个业务同学写 for 循环,语法一周就能学会。
但改坏一个系统,只要一分钟。
这件事的问题不在于学不会,而在于——学了一点,比完全不会更危险。
他知道怎么写一行代码,但不知道这行代码在哪个环境跑、被谁调用、改完会不会让另一个页面空掉。这种"半懂",会让他在评审时说不出"我不确定",在出事后说不出"我当时以为"。
把业务培养成半吊子程序员,不是让他参与开发,是给他发了一张危险驾驶证。
大多数人嘲笑"让业务改代码",脑子里想的就是这件事。
这个嘲笑是对的。
业务每天都在改系统。
只是他要经过这样一条路:
他发现问题 → 写在微信群里 → 产品转述 → 排期 → 一周后
→ 做出来了 → 他说"不是这个意思" → 再排一轮
这条路上,他做了全部的业务判断,但一个字的代码都没碰。 他承担的沟通损耗,比他直接改要大得多。
所谓"让业务改代码",本质是把这条链路上的人肉搬运去掉,不是把他变成工程师。
判断权本来就在他手上。变的只是:判断能不能在一分钟内看到结果。
编程语言是显性知识,公开、可搜索、两天能上手。
真正稀缺的是隐性知识:
null 会不会让排行榜崩?这些东西不在任何文档里,只在一个人的脑子里。
所以"让业务改代码"的实质不是降低语法门槛,是把这张隐性地图显性化。
程序员真正的价值不是写代码。是持有这张地图。
地图画出来了,业务才敢走路。地图不画,给他再好的编辑器,他也只敢看不敢动。
一个人要判断自己改得对不对,只有一种方式:看到结果。
在传统系统里,"看到结果"的成本是这样的:
| 环节 | 成本 |
|---|---|
| 搭一套能跑的环境 | 一到两天 |
| 改一行,编译 | 几分钟到十几分钟 |
| 部署到能看到的地方 | 半小时,还要找人 |
| 找到能复现这个场景的数据 | 半天,可能找不到 |
综合下来:反馈周期两到三天。
两天一轮,业务一年最多试二十次。试到第五次,他自己就放弃了。
三十秒一轮,他一天能试四十次。
这不是意愿问题,是物理问题。
所以"这是笑话"这个判断,八成是在一个没有环境的地方得出的结论。
结论没错,但归因错了——不是业务的能力不够,是系统没给他留门。
以前业务提一个改动,成本是"一个程序员两天"。
这个成本有一个隐形的好处:它会自动过滤掉那些没想清楚的需求。
"这个需求不划算"、"优先级不够"、"再等等看"——排期本身就是一道筛子。很多半成品的想法,在这道筛子前面自然消失了。
现在成本变成"AI 一分钟 + 一次 review",这道筛子突然被拿掉了。
于是会暴露一件很尴尬的事:
大多数"我想改这个",其实连提需求的人自己都还没想清楚要什么。
以前这个问题被排期掩盖了。现在没有了排期,它会直接摊在桌面上。
所以真正的瓶颈,会从"能不能改"转移到"想清楚没有"。
这是好事。但会很痛。大多数组织没准备好面对这个。
三个条件,缺一不可。
第一,环境。
一条命令起得来,三十秒能看到页面变化,改坏了能一键还原,试错不会碰到生产数据。没有这条,后面两条都是空话。
第二,边界。
明确写下来三张清单:
没有边界的自由,不叫自由,叫事故预告。
第三,责任人。
谁签字,谁背锅。
AI 不会因为线上事故被问责,业务不会因为技术债被问责,只有程序员会。
责任在哪里,决定权就必须在哪里。所以最后那一次"这个改动可以合进去",必须由程序员说。
三个都有 → 这是杠杆。
少任何一个 → 这是笑话,而且会以事故的形式收场。
说"这是笑话"的人,通常是在保护自己的稀缺性。
这可以理解。但不成立。
因为稀缺性不该建立在"别人看不到"上,应该建立在"别人做不到"上。
锁住编辑器、把知识留在脑子里、让所有改动都必须经过自己——这不是不可替代,这是把不可替代性建在了信息不对称上。信息不对称是最容易被技术抹平的东西,现在正在被抹平。
写代码这件事,正在从"做不到"变成"看得到就能做到"。
程序员不会因此失业。会因此从翻译器变成建筑师——从"帮别人把话译成代码",变成"设计这个系统允许被怎么改"。
反过来,一个连自己系统都讲不清楚的程序员,才是真正危险的那个。因为 AI 需要地图,而他手里没有。
"让业务自己改代码"是笑话吗?
如果你只给了他一个编辑器,是。
如果你给了他一个能三十秒看到结果的环境、一份写清楚边界的说明书、和一个愿意把地图摊开讲的程序员——
那就不是笑话。
那是把一个只会执行的组织,变成一个会自我修正的组织。