Sam Altman最近在社交媒体上的活跃度明显攀升,不断释放关于GPT-5即将面世的信号。昨天他在X上放话:「SaaS即将进入快时尚时代」。
这句关于“SaaS快时尚时代”的宣告,立刻在技术圈引发了不小的波澜。有人兴奋不已,有人一脸困惑,还有更多人直接跑去问Grok——这究竟是什么意思?
简单来说,快时尚就是H&M、Zara那一套:快速设计、快速生产、快速上市、快速淘汰。核心逻辑是便宜、周转快,没人指望一件衣服能穿十年。
现在,这套逻辑要往软件业复制了。所谓“一周一个新产品”、“用完即扔的软件”——这既是Sam对GPT-5编程能力的预告,也是他对Anthropic封禁OpenAI的一次有力回应。按照他的设想,新的GPT-5在编程能力上将让开发SaaS变得像Zara出新款一样轻松——几天就能搞定一个应用,用完直接扔掉。
不过话说回来,“快时尚”这个概念本身并非Sam原创。最早提出这个类比的是Patricio Del Boca。有意思的地方在于,虽然用了同一个概念,这两个人对这件事的态度却截然不同。
Patricio认为,AI让代码生产变得极其廉价,就像快时尚让服装生产变得廉价一样。那他看到了什么后果?市场被大量质量堪忧的产品淹没,软件生态系统面临严重的“代码污染”。
Sam的乐观与Patricio的悲观,谁对?
也许都对。技术降低创作门槛,这本身就是一把双刃剑,既是机会也是威胁。关键在于我们怎么驾驭它。
Sam似乎是在为新时代的到来欢呼,而Patricio更像是在为即将降临的混乱拉响警报。一个看到了生产力的解放,另一个看到了质量的沦陷。
我们不妨仔细看看Patricio那篇文章,感受一下他的视角:
Vibe Coding 是软件工程的快时尚产业
核心观点:我对AI编程和“Vibe Coding”的看法是,它对软件工程的影响,就像快时尚对服装业的影响——用大量廉价、低质量的产品和巨大的浪费来淹没整个市场。
先声明一下,我本人算是LLM编程的轻度用户。我不使用袋里或AI驱动的IDE,但每周会用几次LLM来做两件事:低成本地测试想法,以及调试。我发现,LLM生成的解决方案从来没有可靠到能直接修复生产代码库中的问题,但它们在某些时候确实能帮我想清思路。对我来说,AI更像是替代了目前体验糟糕的网络搜索。
现状
LLM目前最擅长的是生产低质量代码(下文会细说),这些代码在给定的提示下“基本能跑”。从我经验来看,LLM生成的代码通常:
- 缺乏基本优化和最佳实践
- 因为构建方式的问题,提供的是基于过时版本的代码(可能包含安全漏洞)
- 整个代码库缺乏设计和架构考量
- 无论输出什么,在复杂场景下都会失效
但这并没有改变一个事实:LLM确实能产生代码,而且这些代码确实能解决一些基础需求,使用起来也很方便。最近,我让LLM帮我部署一个带基本认证的R Shiny应用(在Caddy网络服务器后面),生成相应的文件。几分钟之内,我就拿到了一个带有“Hello World”的Docker Compose文件,直接就能跑。我测试了一下,验证了最初的假设,然后删掉文件,继续干别的。这个工具轻松写代码的能力是实实在在的,未来也一定会持续下去。
别构建它
曾经读到过一句话:“软件的问题在于,任何东西都能被构建。”这一点我完全认同。正是缺乏约束,才导致了应用臃肿、过度工程、代码浪费和糟糕的产品。Vibe Coding将进一步放大这个缺陷——它等于给“只要可能就添加功能和复杂性层”这个编程怪物注射了类固醇,因为这样做“既可能又有趣”。
我做开源开发者和维护者已经超过十年了,现在越发明白:更多代码并不总是解决方案。对我来说,一个新功能除了潜在价值,还意味着增加维护成本。有些时候,代码不是资产,而是负债。小时候在富人区散步,我问妈妈:“看那个大房子,你不想要一个吗?”她总是直截了当地回答:“谁来打扫?”妈妈,现在我对这句话的理解有多么深刻!每当有人建议给软件加一些炫酷功能时,我都会在心里重复她的话:“谁来维护它?”
思考的食粮
随着代码产品成本持续下降,我们应该从其他行业的历史中寻找启示。我的思路不由自主地转向了快时尚:更便宜的生产带来了可负担但低质量的衣服,这些衣服被丢掉比重复使用甚至修理更划算。类似地,我可以预见未来会有大量廉价软件淹没市场,污染整个生态系统,最终伤害的是用户。但这里有一个关键区别:在快时尚领域,一个产品有缺陷,意味着你买的新跑鞋跑两次就得丢;而在软件领域,有缺陷的产品可能意味着数千名女性的敏感数据被公开——就像最近的Tea应用泄露事件那样。
人们经常把更便宜的生产捧为进步,但当结果变成无法重复使用或修理的浪费时,过度生产就成了一个严重问题。有人可能会说LLM也能廉价地“修理”代码,但客观地说,没有一个LLM能迅速修补像Log4j这样的漏洞。我们正在走向一个被低质量代码严重污染的互联网。欢迎大家选择自己的冒险:一面是更便宜、更可负担的软件,另一面是不可持续、污染整个生态系统的噩梦。最后一点我想强调的是,我所说的污染不光是指生态层面的污染——这么多垃圾代码还会产生巨大的“噪音污染”。如果你不知道该去哪里寻找,高质量软件(不管它意味着什么)将变得越来越难以获得。
正式定义
在这个verbose coding machines的时代,我们需要正式的定义。关于LLM编程使用的公开辩论之所以极其主观、充满炒作,一个很重要的原因在于我们的社区至今还在与一些基本术语的定义作斗争,例如:“简单软件”、“高质量代码”、“可维护代码”、“可重用”等。目前仍然没有广泛采用的指标来评估开发者或LLM产生的代码质量。我们必须超越那个由LGTM驱动的行业,走向一套专业的标准。虽然我不知道为什么这些定义让我们如此困惑,但它们确实是当下的迫切需求。
我不想用“认证”或“执业许可证”这样的词来吓唬开发者,但随着低质量代码的不断增殖,证明我们工作质量的能力将变得至关重要。随着数据泄露和网络攻击的日益增加,经过认证的提供商或认证专业人士的价值会越来越凸显。别搞混了——如果发生灾难,责任永远在人身上,而不是机器:AI会拿走所有的功劳,但开发者需要承担全部责任。
