Essential Until It Wasn't
9 days ago
- #Artificial Intelligence
- #Essential Complexity
- #Programming Evolution
- ‘编程’的本质随着时间不断演进,每个时代的从业者都相信自己的技能是这门技艺永恒的核心,比如熟记操作码或手动管理内存。
- 弗雷德·布鲁克斯对本质复杂性(问题固有的)和偶然复杂性(工具相关的摩擦)的区分很有用,但两者之间的界限随着工具接管任务而不断变化,曾经本质的部分变得偶然。
- 历史案例展示了这种界限的移动:操作码记忆、手动内存管理和API知识都曾随着新工具的出现,从本质变为偶然,并常伴随着诸如‘他们不是真正的程序员’的守门式抱怨。
- 如今,人工智能正在将这一界限推移到实现层面的推理之外,使得逐字符写代码和手动调试等任务变得偶然,而本质的工作转向规格制定、架构设计和理论构建。
- 这种转变拆分了一些特质:特定于实现的特质(例如对语法的耐心)变得不那么重要,而架构层面的特质(例如系统思维、好奇心)则得以保留,这使得习惯了旧界限的从业者感到困惑。
- 文章认为,编程的精髓在于理论构建和概念完整性,而非代码编写,并且当前的界限移动并非终点——未来的变化甚至可能影响架构或规格制定本身。
- 理解这种转变的一个方法是:识别固有的区分、探究历史先例、倾听守门式抱怨,并确定在界限移动后,什么仍然是本质的。