今天读到宝玉老师的一篇文章《从 TL 到 EM我终于不再盯着 AI 写代码了》。他提到Coding Agent 的代码质量越过可信门槛后自己的角色也从 TLTech Lead技术负责人变成了 EMEngineering Manager工程经理。不再盯每一行代码而是确定方向、确认方案、验收结果。技术选择也不再被自己的技能树锁住。Electron 不合适就换 Swift 和 AppKit需要跨平台再尝试从未写过的 Rust。可构思 BaoCut 新版本时速度还是慢了下来。Agent 没卡住人卡住了。这让我想到最近很流行的几个说法。人人都是程序员。软件会变得近乎免费。AI 会把人的时间还给人。我越来越觉得它们都对。但都只对了一半。人人都能写代码不等于人人都能做产品2025 年Andrej Karpathy 在《Software Is Changing (Again)》中谈到 Software 3.0。自然语言正在成为新的编程方式越来越多人可以直接告诉 AI 自己想做什么。这句话正在变成现实。Anthropic 在 2026 年分析了约 40 万次 Claude Code 会话。它发现在自己的样本中从事不同职业的人完成编程任务的平均成功率已经接近软件工程师。真正拉开差距的不是会不会写代码而是是否理解自己正在解决的问题。这让我想起最近遇到的一位老师。他用 Coze 搭了很多工作流而且做得很好。输入什么经过哪些节点哪里需要判断最后输出什么他都想得很清楚。然后一个插件下架了。就一个。整条工作流不能用了。他花了很多时间找替代节点换插件改参数再一遍遍测试。原来已经跑通的东西因为别人拿走一块积木又要重新拼。我听完后的第一反应不是帮他继续找插件。我劝他干脆把这条 Coze 工作流丢掉。用 Skill 重做也行让 AI 帮他写成一个小产品也行。他说自己不会写代码。但问题就在这。一个能把复杂任务拆成节点知道每一步需要什么也知道最后什么结果才算对的人真的算不会做软件吗过去可能算。现在未必。代码正在变得廉价他对业务的理解却没有。可这里还有另一层冲突。能让 AI 写出代码只说明你可以做出一个东西。能不能让它持续工作插件失效后能不能替换结果错了能不能发现才决定它是不是产品。人人都能成为程序员可能是真的。人人都会因此成为产品创造者还不是。Agent 越能干人的责任越不能下放现在还有一种流行说法程序员不再写代码而是管理一群 Agent。这和宝玉老师从 TL 到 EM 的变化很像。但管理不是把任务扔出去然后等 AI 报喜。Stack Overflow 2025 年开发者调查里84% 的受访者已经在使用或计划使用 AI 工具。可不信任 AI 准确性的开发者有 46%信任的只有 33%。66% 的开发者最头疼的是AI 给出的答案看起来几乎正确却总差一点。这组数字很有意思。使用越来越多信任却没有同步增加。所以人的角色确实要往上走但不是退出现场。以前盯每一行代码控制点在实现过程。现在定义目标、设置边界、运行测试、验收结果控制点移到了更上游。看得更少不等于负责得更少。恰恰相反。Agent 越能独立完成工作人越要知道什么叫完成。那位老师最值钱的东西从来不是 Coze 里的几个节点。是他知道怎么把事情做成。节点可以换平台可以换技术栈也可以换。真正不能外包的是方向和验收。AI 节省了时间人为什么可能更忙AI 会节省时间这也是一个很流行的判断。Stack Overflow 的同一份调查中约七成 Agent 用户认为它减少了自己在特定开发任务上的耗时。可我的感受有点相反。AI 让一个任务更快完成后我通常不会提前下班。我会顺手再试一个版本再换一种技术再把原本排到下个月的想法也做出来。省下来的时间很快又被更多尝试吃掉了。这像一种尝试的悖论。尝试越贵我们越谨慎。尝试越便宜我们反而会尝试更多。所以 AI 给我们的未必是更多空闲。它给的是更多选择。过去做一次软件尝试可能要组团队要花几个月还要先押上一笔钱。很多想法不是不值得做而是失败一次太贵。现在可以先做一个粗糙版本。跑一下不对就改。再跑一下还不对就换。第一版可以很便宜。推倒重做可以很便宜。发现方向错了再换一条路也可以很便宜。真正下降的是后悔和改主意的成本。但廉价不是免费。数据安全要管异常要处理测试不能省产品上线后也要维护。代码的价格下降了责任的价格没有。Coze 当然有价值。它让这位老师迈出了第一步。可如果他永远停在平台里也要承担一种平台依赖税。插件能不能上架接口会不会调整工作流明天还能不能跑都由别人决定。你画下了整张图。但地基不是你的。AI 让代码、Skill 和小产品都变得更容易意味着他第一次有机会把地基也拿回来。这可能才是尝试成本降低后我们真正获得的东西。不是一次就做对。而是做错以后还有能力重来。不是所有人立刻变成程序员。而是最懂问题的人不必再等一个程序员才有资格验证自己的想法。当实现越来越便宜想清楚就会越来越贵。最昂贵的也许已经不是失败。而是工具已经把门推开了我们还站在原地盯着那一行代码或者那个已经失效的节点。