AI 会“写代码”,但它不会“做软件”
作者:Matias Heikkilä
你有没有发现,最近有相当多的人在到处寻找技术合伙人或者 CTO?
反正我吧,收到了多得惊人的这类咨询;他们的话术大同小异:“嘿,我这儿有个‘凭感觉编程 (Vibe Coding)’搞出来的 App,你愿意帮我把它做成‘生产就绪’(也就是能正式上线、稳定运行)的版本吗?”
我大概能给这些人画个像。想象一下:他们非常懂自己的业务,但一直以来都缺乏技术能力,没法把好点子变成现实——他们可能是个法律顾问,或者客户经理。
这些人干嘛要找我呢?
我也琢磨了一下,我觉得这释放了一个重要信号:到底有什么事是他们靠生成式 AI (GenAI) 没法独立完成的?
这不正是现在人人都想搞明白的问题吗?大家都想知道这些模型的能力边界。或者,说得再直白点:大家都想知道哪些工作很快要被淘汰了。
我收到这些求助,这个事实本身就说明了“软件工程”这个行业的一些问题。我的意思是,如果软件工程真的已经被 AI 自动化了,那根本不会有人来找技术合伙人。
嗯,我想我明白为什么我们会收到这些请求了。关键在于:AI 会写代码,但它不会构建软件。
这是我在花了大量时间用 AI 辅助编程、并且看了无数别人的演示之后,得出的结论。
圈内有句老话:写代码容易,软件工程难。
现在看来,说大语言模型 (LLM) 已经能自动化“大量写代码”的工作,这挺公允的。像 GPT-5 这样的模型(这里作者指代的是未来更强的模型),在解决那些定义清晰、孤立的小问题时,成功率相当高。
但是,“写代码”本身并不是大多数程序员拿工资的真正原因。构建一个能正式上线的 App,那不叫“写代码”,那叫“软件工程”。
在我看来,当你试图把一个“演示版 (demo)”变成一个“真正的产品”时,“写代码”就升级成了“软件工程”——而这,恰恰就是前面提到的那些人带着他们的项目来找你的时候。
我其实也不太清楚为什么 AI 至少目前还无法“构建软件”。
也许这和工作的本质有关。当你以写软件为生时,你的核心任务是处理“复杂性”。一个普通的线上产品,它做的可能只是一堆简单的事情。真正的挑战是,如何让“成百上千件”简单的事情同时不出错地运行,并且让整个系统保持“可维护性”。
换到我们今天讨论的 AI 话题下,这句话可以这么说:演示一个“功能”是一回事;而用一种支持“集成、扩展和长期可维护性”的方式来“构建”这个功能,则完全是另一回事,难度天差地别。
当你点开那些人发来的代码时,你会发现,所谓的“让 App 生产就绪”,真正的意思其实是“把这些代码全删了,从头重写”。
我觉得,这非常清楚地说明了我们在 AI 发展上目前所处的阶段。
来源 https://t.co/cRu13vpg6y