在如今 Vibe Coding 火热到近乎全民讨论的时候,说这些话大概难免会引来不少反对的声音。
不过这篇文章并不是想否定 Vibe Coding,它确实是一项重要的技术进步。我更想讨论的是:为什么今天很多人对它产生了近乎无限的期待?
也许几年以后,当这波浪潮过去,后人来挖坟再看今天的讨论,会有不同的理解。
Vibe Coding 的泡沫源自哪里?
Fake it until you make it:硅谷文化
硅谷一直有一句著名的话:
Fake it until you make it.
它原本是一种鼓励创业者大胆尝试、快速验证想法的文化,也正是这种文化孕育了大量创新公司。
但另一方面,这种文化也容易演变成另一种极端——不断放大技术的能力,甚至提前兑现未来。
于是我们经常看到这样的叙事:
- AI 将取代所有程序员;
- SaaS 即将消亡;
- 一个 Prompt 就能完成整个软件开发。
营销可以没下限,吹牛可以没上限,没有我做不到,没有你想不到的操作
不得不提的就是两个活宝:
- OpenAI 的 Sam Altman:从 AGI 还有几年、几个月,到后来不断强调超智能(ASI)、万亿级算力投资、星际之门计划(Stargate),叙事不断升级。每当市场开始适应上一轮故事,就会出现下一轮更大的愿景。
- A畜 的 Dario Amodei:则几乎每隔一段时间都会提出新的 AI 能力预测,SaaS已死、 Myous太危险了, 不给大家用, 呼吁大家停止研究AI, 为了安全, 然后过几天就发布Fable5。
老黄都吐槽过,不知道Dario到底是怎么当上CEO的。
这些观点并非完全没有依据,但往往忽略了现实世界中大量工程问题,把未来几年甚至十几年的能力,包装成了今天已经发生的事实。
盖尔曼失忆症效应
有一个著名的心理学现象叫做盖尔曼失忆症效应(Gell-Mann Amnesia Effect)。
它指的是:
当你阅读自己熟悉领域的新闻时,会发现里面漏洞百出;但翻到自己不了解的领域时,却又重新相信了同一家媒体。
LLM 在某种意义上,正在成为新时代的信息入口。
问题在于,一个人真正精通的领域其实非常有限。
对于熟悉的领域,我们很容易发现模型回答中的错误;但面对另外九十多个陌生领域,我们往往没有能力判断,只能默认它说的是对的。
因此,人们会逐渐形成一种错觉:
如果它在我不懂的地方都能回答,那它是不是什么都会?
相比传统媒体,LLM 几乎拥有无限的信息生产能力,这种心理效应也被进一步放大。
最终,人们开始高估模型本身的能力,而低估背后问题的复杂度。
资本操纵叙事
今天,我们获取信息越来越依赖于短视频平台、社区平台以及各种 AI 内容。
虽然信息来源比过去更加分散,但真正拥有流量分发能力的平台依然高度集中。
平台天然会放大最容易传播的话题,而资本也更愿意讲述增长最快、最吸引注意力的故事。
于是,一个本来应该被理性讨论的技术,很容易演变成一种全民追逐的新叙事。
Vibe Coding 并不是第一个经历这种过程的概念,也不会是最后一个。
Vibe Coding 是忽悠土老板最成功的一集
很多老板其实能力不足的。很多人的第一桶金并不是靠技术、产品或者管理能力获得的,而是吃到了时代红利、政策红利、信息差、渠道、资源、人脉甚至投机套利。
他们确实赚到了钱, 获得了财富和地位, 但本质上的技术认知并没有比村头大爷高多少,只不过当年运气更好、机会更多、站在了风口。
他们看到的是:
- AI 几分钟写出一个页面;
- 一小时完成一个 Demo;
- 社交媒体上不断出现"一个人完成整个产品"的案例。
于是自然会产生一个推论:
Demo 都能几分钟完成,那正式产品为什么还需要那么多开发?
但 Demo 与真正可持续维护的软件之间,本来就是两件完全不同的事情。
很多行业之外的人,并没有机会接触那些真正困难的问题,例如:
- 长期维护;
- 系统架构;
- 数据一致性;
- 安全性;
- 性能优化;
- 多人协作;
- 上线后的持续演进。
因此,他们看到的是 AI 极大降低了开始开发的门槛,却误以为 AI 同样降低了软件工程本身的复杂度。
没有银弹
几十年前,软件工程领域就已经提出一个经典观点:
软件工程没有银弹(No Silver Bullet)。
今天,这句话依然成立。
Vibe Coding 极大提高了 Demo 的生成速度,也让个人开发者拥有了过去难以想象的生产力。
但从 Demo 到真正可交付、可维护、可扩展的产品,中间仍然存在大量工程工作。
AI 缩短了编码时间,却没有消除这些工程问题。
因此,我更愿意把 Vibe Coding 理解成一种新的编程抽象。
它并不是软件工程的终结,而更像是一门比 Python 更高层次的编程语言——一种以自然语言作为接口的新编程方式。
复杂度没有消失,只是被隐藏了
历史上,这样的事情已经发生过很多次。
Python 出现之后,大幅降低了编程门槛。
越来越多人开始使用 Python 编写网站、自动化工具、数据分析程序,甚至桌面应用。
但二十多年过去了,Java、C++ 依然牢牢占据着自己的生态,后来又出现了 Go、Rust 等新的语言。
为什么?
因为复杂度从来没有真正消失。
Python 帮开发者隐藏了大量底层细节,例如内存管理、编译流程、模板代码等。
这些复杂度并没有被解决,而是转移到了运行时、解释器、框架以及各种底层实现之中。
Vibe Coding 也是同样的道理。
它进一步把复杂度隐藏到了模型和 Agent 的背后。
过去需要程序员亲自完成的工作,现在交给 AI 自动生成。
过去需要理解 API、框架和语法,现在变成一句自然语言。
但一个真正的软件系统所面临的问题——需求变化、架构设计、数据一致性、安全性、性能、维护成本、团队协作——依然存在。
复杂度不会凭空消失。
它只会不断向更深的一层迁移。
而软件工程的发展,本质上一直都是不断寻找新的抽象,把复杂度向下隐藏的过程。
未来已来
Vibe Coding,只是这条演化路线上的下一站,而不是终点。
我们已经回不去手动打字的农耕时代了,但是新时代的vibe coding,绝对不是当前这些当红炸子鸡的AI自媒体博主,跟风老板所描述的那样。