HeadlinesBriefing favicon HeadlinesBriefing.com

为什么构建软件依然如此困难:房屋类比

Hacker News •
×

现在是黑客马拉松最后一天的下午1点,还剩5个小时。在过去的2个小时里,我们毫无进展。我正在诅咒Lovable诞生的那一天。我刚解决一个问题,另一个问题就出现了,我们的应用几乎无法使用。

开始的时候很有希望。我和2位工程朋友以及3位招聘人员一起构建了‘Honey Crew’,一个智能推荐系统。我们选择了Lovable,这样招聘团队以后可以自己维护它。第一天,我们飞速推进,完成了项目的90%。第二天,一些小的改进把一切都搞坏了。无尽的bug、缓慢、压力。招聘人员无法理解出了什么问题。

怎么会这样?对‘基础设施工作’过敏。一位资深领导喜欢说他对于‘重构’和‘基础设施工作’过敏。在LLM出现之后,他问道:“你就不能把这个任务交给Chat GPT吗?”许多非技术领导者认为工程师在夸大其词。

一位同事这样描述:“你写代码,代码不过是用一种我不懂的语言写的文字,对吧?为什么它总是变得越来越复杂?”我一直很难解释,直到我差点买了一套房子。想象一下,如果你的软件是一栋房子。一位承包商说:“我不推荐它。它太旧了。摧毁它然后从头建造会简单得多,也便宜得多。”他本可以成为一名出色的软件工程师。

房屋建造的过程已经被人们熟知了几千年,但每一栋新房子仍然会有不同的问题。为什么你不能快速解决这个问题?你的屋顶漏水了。你可以在地板上放一个桶,或者找到根本原因。为什么你不能只解决这个特定的用例,而不需要那些‘基础设施’?现在添加基础设施来支撑二楼,比以后要便宜得多。

所以现在是黑客马拉松最后一天的下午1点,一切感觉都坏了。我们停止了氛围编程的狂热,仔细地一个区域一个区域地检查,直到我们有了一个简单的可演示流程在运行。理解、规划、实现。比我们第一天的节奏慢得多,但我们至少最终得到了一个可运行、可演示的流程。

关键实体:公司:Lovable

FAQ:为什么即使有AI工具,构建软件依然如此困难?

因为软件涉及复杂的、相互连接的系统,微小的改动可能引发意外的故障,就像翻修一栋老房子一样。AI可以提供帮助,但它并不能消除仔细规划和基础设施工作的必要性。

FAQ Q:为什么即使有AI工具,构建软件依然如此困难?

FAQ A:因为软件涉及复杂的、相互连接的系统,微小的改动可能引发意外的故障,就像翻修一栋老房子一样。AI可以提供帮助,但它并不能消除仔细规划和基础设施工作的必要性。