乐于分享
好东西不私藏

AI 狂欢之下,为何软件质量全面崩塌?

AI 狂欢之下,为何软件质量全面崩塌?

我们正身处一场由 AI 引发的集体狂热中,人们拼命追逐市场价值,却忽视了软件质量正在全面滑坡。

从需要多次 FaceID 验证的 Banking App,到 Slack 意外将 git pull 命令发到群聊,再到 LG 冰箱和车载系统频发的诡异 Bug,技术越先进,体验却越糟糕。尽管 LLM 和 Agentic Era 带来了生产力承诺,但企业仍沉迷于 KPI 驱动的新功能,而非稳定性修复。

这种对 AI 债务的盲目积累,反而为独立开发者提供了重塑日常软件的机会。

如果编程已经被"解决"了,为什么软件反倒越来越烂?

在我写下这些文字的时候,我们正身处一场由 AI 引发的大规模精神错乱之中。人们真的在把自己"刷 token"刷进了医院,争先恐后地想在一切都被自动化取代之前,抢下那块市场价值。

我不能怪他们。

模型越来越强,程序员正被成批裁掉。我们一而再、再而三地被告知:到今年年底,AI 会写出 100% 的代码。不管这是不是真的,现在可能不是坐视不理的好时机。

"智能体时代"(Agentic Era)所到之处,伴随着生产力更高、质量更好的承诺。无可否认,这些新工具已经彻底改变了我们创造和使用软件的方式。它们抬高了高层管理者对团队产出的预期。它们或许还以前所未见的方式,整体抬升了软件团队的平均技能水平。

那为什么软件整体上还在不断变差?

仅上周一周的例子:

  • 我的银行 App,平均要刷三次 FaceID,3D Secure 确认界面才会出现。

  • 我在 macOS 上打开 Slack,图标在 Dock 里弹了好几秒。我没了耐心,切到 Ghostty 开始打字。就在这时,Slack 窗口弹出来了,从 Ghostty 抢走了焦点,git pull 命令被发到了群里。

  • 我的 LG 冰箱开始发出怪声,于是我试着通过一张填不完的多步表单去报修。到最后一步提交时,跳出了提交错误。而我之所以发现,只是因为我看了 JavaScript 控制台。

  • 我车的中控娱乐系统前不久做了一次软件更新。它本来就不怎么样,但至少每次开车时不会自己重启。现在它 bug 缠身:转向灯声音会随机静音,直到我重启系统;我点屏幕想打开 Google 地图——结果弹出的是电台 App;点完屏幕要等 1 到 2 秒才有反应。这已经不单纯是 UX 问题了——这些 bug 直接影响你专注驾驶的能力。

几个月前,我看到 LinkedIn 上一个帖子里,负责重做这套车机系统的产品经理团队在互相庆祝,说自己干得多漂亮。每次我被迫跟他们的产品搏斗时,都会想起那篇帖子。

虽然我不知道全部内情,但我愿意打赌:那些写出这些 bug 的团队,大多都用得上最新的模型,而且 token 预算相当充裕。只要给机会,大语言模型真的很擅长消灭 bug。

软件一直都有 bug,而我们对那个"一切都稳定的 macOS Snow Leopard 黄金年代"的怀念,多半是选择性记忆的产物。过去的软件或许确实更好,但那主要是因为那时它简单得多。从那以后,我们不断发明新的抽象、新的前端框架、更多的底层复杂度。对"用户体验"的门槛越来越高,但一切都变得愈发脆弱。

我们已经走到了这样一个节点:一次 macOS 更新——或者说,对我依赖的任何一款 App 的更新——带来的不是期待,而是恐惧。我现在默认新版本会更差。

这不是一篇针对 AI 的抱怨。那些嗡嗡作响的 GPU 集群给了我们超能力,可我们始终没拿它们去造更好的软件。

软件厂商长期以来都是 KPI 导向的,而把东西做得更稳,并不总是能对数字产生直接影响。在汇报里,它也不够"亮眼":

本季度,我们不会发布任何新功能,也没打算重做任何设计——我们将只专注于修 bug。

—— 某大厂里一位虚构的产品经理

在这种态度改变之前,这场软件质量的大衰退还会继续。

听起来不怎么乐观,但其实,我对接下来会发生什么相当兴奋。

当各家公司集体陷入"AI 债务"的漩涡时,独立开发者却迎来了一个独特的机会:去构建那些从前超出个人能力范围的软件。