在对不断演变的软件格局的分析中,Alberto Denia 提出,“代码石匠”时代正在结束。从历史上看,软件开发类似于雕刻石头:一旦建立,代码就是僵硬且难以修改的。重大的变更需要大规模的拆除和周密的规划,因为修改成本极高。然而,Denia 认为,智能代理编程(Agentic Coding)——即能够自主生成和修改代码的工具——的出现降低了这些成本,使代码变成了一种像黏土一样可塑的材料。

这种材料属性的转变将开发者的主要工作流从手动凿刻转变为建模。在这种新范式中,开发者可以把大量的“代码黏土”拍成粗略的形状来测试功能,并以极小的摩擦力对其进行重塑或丢弃。Denia 指出,这允许进行分形建模,即单人开发者可以在一天内勾勒出核心产品,或者团队可以通过快速迭代实际实现,而不是依赖原型图,来转变陷入困境的功能。然而,他强调,虽然做出更改的成本降低了,但做出“正确”更改的成本依然很高。工程判断——即“骨架”和“窑炉”——仍然是必要的,以确保这些可塑的碎片能组合成一个连贯的结构,而不是坍塌成一滩“凌乱的烂泥”。

一个代表软件工程中从僵硬石头到可塑黏土转变的概念视觉图。
Alberto Denia 的概念框架说明了智能代理编程如何将代码从僵硬材料转变为可塑材料。www.albertodenia.com

这张图片作为 Denia 关于软件材料属性转变核心论点的主要视觉展示。

Denia 指出了从这一转变中出现的两种主要工作流:工匠式和工厂式。工匠式仍处于“人在回路”中,利用快速的反馈循环来完善那些需要特定“感觉”或高强度判断的功能。相比之下,工厂式方法试图通过构建由规范、生成器和验证器组成的自动化流水线,将人类从直接回路中移除。这些流水线充当模具,将代码黏土塑造成可重复使用的砖块,用于处理诸如添加 CRUD 端点或修复微小错误等大规模任务。虽然这两种方法看似对立,但 Denia 认为它们是互补的:大型产品需要工匠精神来解决新颖问题,而工厂则提供现代软件工程中重复组件所需的规模。

讨论中的批评者指出,代码一直旨在具有可塑性,而且软件的主要瓶颈往往是人类的理解,而非输入字符所需的时间。一位评论者认为,重大的系统变更是理解现有逻辑背后的“原因”的函数,这表明代码是开发者理解情况的一个快照。另一种观点认为,“黏土”体验在历史上与 Lisp 系列语言相关,由于它们的高度可塑性,这些语言常被描述为“泥球”或“黏土”。最终,向“黏土”的转变意味着工程师的角色进一步向游上游移动,专注于系统的架构以及塑造材料的流水线设计。