最近总有人说,vibe coding 会锁死计算机编程的发展——让所有人都变成 prompt 搬运工,底层能力退化,最后整个行业原地踏步。

我不同意。

三种问题

世界上的问题分三种。

第一种,极端简单。1+1 等于几。没人来解决它,也不值得。

第二种,极端困难。如何与外星文明进行贸易,如何长生不老。困难到目前连问题的形状都还没有定义清楚,遑论求解。

第三种,中间态。有点难,但不至于完全无从下手;有解,但解不够好。

预测未来三天的天气——我们能做到,但精度不够好。预测地震——有一堆前兆指标,但从来没有可靠的临震预报。给罕见病做早筛——数据稀缺、表型多样,每一个病例都是边缘案例。

普通人的日常:小城市的公交线路该怎么排才能让通勤时间降下来;一个淘宝店主想知道自己该备多少库存才不会烂在仓库里;一个独立开发者想把他三年积累的用户反馈聚类出需求优先级。

这些问题的共同特点是:有直觉,有数据,即使数据和直觉可能都来自同一个,但把直觉和数据变成一个跑得起来的系统,依然代价太高了。

恰恰是第三种问题,最有价值——无论是商业回报、科学突破还是日常生活的改善。

Vibe coding 在做什么

过去,程序员在某种程度上扮演了现代祭司的角色。只有通晓咒语的人才能驱动机器。
Vibe coding 实际上是把**“实现权”从“定义权”**中剥离了。

以前: 你必须先成为一名搬砖工,才有资格构思建筑。
​现在: 你只要能描述出建筑的结构和功能,砖块会自动到位。

​这并不是能力的退化,而是生产力层级的重构,是程序开发的文艺复兴。当写代码的门槛降到零,真正的门槛就变成了对问题的理解深度。

所以实际上 Vibe Coding 在压低把想法变成可运行系统的摩擦成本。

这个摩擦成本过去是一道隐形的筛选器。中间态问题不是没人想解,是想解的人没有足够便宜的工程实践把想法落地。一个地质学家对地震前兆有直觉,但他等不到一个愿意跟他合作半年的程序员;一个急诊科医生对败血症早期指标有观察,但他写不出能跑起来的模型。

但不只是专家。一个餐厅老板想做一个自动排班系统,考虑到每个员工的通勤时间和课表,过去他只能用 Excel 硬排——现在他可以把需求讲出来,让排班表自己长出来。一个家长想给孩子做一个背单词的小程序,按遗忘曲线自动复习——过去他得先学三个月 Swift,现在不用了。

每个人都是自己生活的专家。每个人在自己的领域里,都有一堆「知道该怎么做但没法自动化」的问题。Vibe coding 让这些问题第一次有了被代码触达的可能。

如果把编程比作摄影,Vibe Coding 就是手机摄影的普及。它让胶片玩家变得更稀缺、更专业,同时也让无数原本一辈子没机会拍照的人,拍到了自己生活里的决定性瞬间。

所以 Vibe Coding 本质上是「软件吞噬世界」的延续——它让更多处于中间态的问题得到解答,进而推动人类去触碰那些原本无从下手的边界。

变化的是量,也是拓扑

过去软件能触达的问题,形状是「工程师能建模的问题」。Vibe coding 之后,形状变成「任何人能描述的问题」。

这两个集合的差集巨大。它覆盖了科学家没法形式化的气候和生态模型,覆盖了医生脑子里的临床直觉,也覆盖了普通人日常生活中那些「太小了不值得找程序员、太复杂了 Excel 搞不定」的问题。一个地质学家、一个急诊科医生、一个开奶茶店的老板——他们都进入了解空间。这不是面积变大了,是拓扑结构变了。

再往深想一层。科学进步的速率,本质上是「假设生成速率 × 假设验证速率」。过去验证一个想法要 6 个月工程周期,现在可能是 6 小时。同样的时间窗口内,人类可以跑更多次错误——而错误密度,正是逼近真相的唯一路径。

Vibe coding 是在给科学方法论本身加速,不是在替代它。

真实的风险

作为软件工程师,我最担心的不是饭碗。秩序的系统性滑坡依然可以成为工作内容。

Vibe coding 生产代码的速度远超人类 review 的速度。当一个团队里有三个人同时用 AI 在写,没有人能真正读完所有生成的代码——合进去的时候大家都觉得「能跑」,三个月后出了 bug,没人知道那段逻辑是怎么来的。

新的问题来自系统的不可观测性,它在召唤新的工具。人类工程师的职责正从创造秩序转向对抗熵增。我们需要的一套全新的审计工具,而不是调试工具。

更广泛的风险出现在软件以外。解空间扩张的同时,劣质解的密度也在同步上升。

一个地质学家用 vibe coding 跑出来的地震预测模型,大概率在统计上是错的,但它能跑、有输出、有图表。这会制造一种「问题已解决」的幻觉,反而可能阻塞真正的解进入视野。

更精确地说:vibe coding 加速了候选解的生产,但没有同步提升解的质量筛选机制。这个缺口,可能才是下一个真正的战场。

它没有锁死编程

「vibe coding 锁死了计算机」这个论点,犯了一个经典错误:把工具的普及等同于上限的封顶。

历史上每一次编程抽象层提升——汇编到 C,C 到高级语言,高级语言到框架——都有人说底层工程师要消失了。结果是底层反而因为上层需求爆炸而变得更稀缺。Vibe coding 也一样:它会制造大量「跑起来但跑得很烂」的系统,然后这些系统会催生对真正懂底层的人更强烈的需求。

它真正改变的,是「编程能力」的价值分布:

  • 生产代码的能力,在贬值。
  • 验证代码、理解系统行为、判断一个系统是否真的解决了问题的能力,在升值。

真正的工程师会从「写代码的人」变成「能判断一坨代码到底解决没解决问题的人」。

这不是锁死。

这是加速——加速吞噬已有的解空间,把更多未知领域纳入射程。解空间本来就不该被工程能力垄断。