我对软件开发未来的信念

💡 原文英文,约900词,阅读约需3分钟。
📝

内容提要

作者预测:代码审查将消亡,人类不再逐行查错,单元测试也可能消失;写代码的手艺会淡化,构建软件、解决业务问题才是核心。终端与多数开发工具将被token取代,进入后二进制时代。PM/设计/工程分工、敏捷流程将消失。开源现状难以为继,大公司与初创差距拉大。token成为新计算范式,未来UI按需生成,智能模型需更少界面。

🔎

延伸解读

代码审查与单元测试的消亡

作者认为,未来人类将不再逐行审查模型生成的代码,因为无法在合理时间内发现错误。人类只审查系统组成,而非PR中的每一行。单元测试也可能消失,因为模型能直接生成正确代码,例如900行Arduino C一次编译通过并完美运行。这意味着传统质量保障方式将被颠覆,开发者需转向更高层的系统设计。

软件开发核心的转移

写代码的手艺将淡化,但构建软件的能力更重要。重点变成用软件解决业务问题、了解其他软件的实现与取舍、何时发布、如何获取反馈。大多数bug不再是编码错误,而是需求理解错误。因此,开发者需提升业务理解和产品思维,而非仅关注算法或数据结构优化。

工具与流程的重构

终端和多数开发工具将被token取代,shell、文本编辑器、CLI工具不再由人类使用。PM/设计/工程的分工以及敏捷、SCRUM等流程将消失。token成为新计算范式,进入后二进制时代。大公司与初创的工程实践差距拉大,初创采用谷歌式做法会更显愚蠢,因为它们能更快、更少约束地构建。

token经济与UI的演变

token成为新计算范式,获取足够token至关重要,否则将处于劣势。未来模型更快,UI将按需生成。许多现有UI(菜单、设置、仪表盘)只是为笨机器提供的人类可访问API,智能机器需要更少界面。但新旧软件交替需一代人时间,10年后仍有人写代码,但你是否想从事那样的工作?

Q&A

为什么说代码审查会消亡?

因为未来人类不会在合理时间内逐行检查模型生成的代码,只会审查系统及其组成,而不是在PR中查看每一行代码。

单元测试为什么可能消失?

作者认为如果模型能写出无错代码,单元测试就像从未摔倒过的训练轮一样不再必要。例如模型曾写出900行Arduino C代码,编译无错并完美运行。

未来软件开发中什么能力更重要?

构建软件的能力比写代码的手艺更重要,包括知道如何用软件解决业务问题、其他软件如何做及原因、何时以及如何发布、如何获取反馈。

为什么开源当前形式不再合理?

因为“足够多的眼睛能让所有bug变浅”依然成立,但现在有了人工眼睛(AI),人类在性能关键贡献上只是边缘情况,99%的软件中人类优化无关紧要。

终端和开发工具的未来会怎样?

终端已死,大多数开发工具将被token冲走。Shell、文本编辑器、CLI工具不再被人类使用,知道命令行标志和jq调用将像写Perl单行程序一样神秘。

token如何成为新的计算范式?

token是新的计算范式,一切将在此基础上重建。我们已使用确定性计算机80年,误将“计算机如何工作”当作“计算机必须如何工作”,现在正进入后二进制时代。

PM/设计/工程三者的分工和敏捷流程会怎样?

PM/设计/工程三者的分工将消失,敏捷、SCRUM等流程已死。充当“肉代理”把工单塞给代理并回报的工程师将不再有价值。

未来UI会如何变化?

模型将变得非常快,UI会按需生成。许多UI存在是因为软件无法理解你的需求,菜单、设置屏幕、仪表盘、过滤器等大多是给笨机器的人类可访问API,智能机器需要更少UI。

🏷️

标签

➡️

继续阅读