为什么“It Depends”是软件中最面向未来的短语

问建筑师几乎任何问题,你都会得到相同的答案:这取决于情况。多年来,这个答案一直是关于建筑师的笑话,但在人工智能可以比你描述的速度更快地生成工作服务的时代,“这取决于”是软件中最重要的短语之一。它[...]

来源:O'Reilly Media _AI & ML

问建筑师几乎任何问题,你都会得到相同的答案:这取决于情况。多年来,这个答案一直是关于建筑师的笑话,但在人工智能可以比你描述的速度更快地生成工作服务的时代,“这取决于”是软件中最重要的短语之一。它标志着这些工具可以做什么和不能做什么的确切界限。

第一定律仍然成立

我们早就说过,软件架构第一定律是:一切都是权衡。生成式人工智能并没有废除这条法律。如果说有什么不同的话,那就是它比以往任何时候都更加残酷地执行它。

人工智能编码工具在回答“如何”问题方面表现出色。如何实现传奇模式?如何在这些服务之间设置断路器?如何对该 API 进行分页?这些问题的答案存在于世界各地的文档、开源代码、十年的博客文章中,并且大型语言模型已经阅读了所有这些内容。问一个法学硕士“如何”的问题就像问一个已经记住了图书馆的非常快的图书管理员。

架构问题不是“如何”问题。它们是“应该”问题,而“应该”问题的形式完全不同。诚实的答案需要了解在没有培训的情况下出现的事情:您的运营团队由三个人组成,首席财务官刚刚冻结了云支出,最后一次重组使支付团队士气低落。人工智能可以完美地枚举分布式架构的一般权衡。它不能做的是对它们进行权重,因为权重存在于您的组织中,而不是在互联网上。

顺便说一句,这就是第二定律:“为什么比如何更重要。”法学硕士是“如何”的机器。建筑师是“为什么”的人。

廉价的代码使决策变得昂贵

这会改变杠杆所在的位置。当执行充足时,判断力就是稀缺资源。仍然需要有人决定服务边界在哪里,“足够好”的可用性对于这个系统意味着什么,以及哪些架构特征实际上很重要。