一位程序员思考这门手艺渐行渐远的日子
程序员们正在思考像 GPT‑4 这样的 AI 编码工具对这门手艺、职业,以及软件开发未来意味着什么。许多人认为 LLM 对样板代码和“glue code”是强大的加速器,降低了入门门槛并提升了生产力,但也指出它们在复杂、创新或高度依赖上下文的问题上仍然会失败,而且需要有经验的工程师监督和调试其输出。一个反复出现的担忧,与其说是技术能力,不如说是经济层面:管理层可能会把所谓的效率提升用来缩减团队和薪资,扩大不平等,而软件的总体需求——以及能理解系统的人——仍在增长。
当下对 LLM 能力的看法
- 普遍认为它们擅长:样板代码、“CRUD + glue” 代码、脚本、bash/SQL/regex、翻译、文档、解释 API,以及充当橡皮鸭。
- 经常失败于:复杂的多模块系统、小众领域(工业嵌入式、AAA 游戏系统、IAM、安全)、非标准 API、棘手的调试,以及大规模重构。
- 幻觉和细微 bug 很常见;它经常会编造 API 或遗漏边界情况。很多人说,审查它的成本可能与自己写代码相当,甚至更高。
- GPT‑4 被认为远胜于 3.5,但作为自主程序员仍然不可靠。
AI 未来进展的前景
- 乐观者预计会出现快速、甚至可能是指数级的进步(指出 2017–2023 年的进展),预测十年内中级开发工作会在很大程度上实现自动化,并推测会有自博弈以及编译器闭环训练。
- 怀疑者则引用物理限制(算力、能源)、LLM 架构约束、数据质量,以及历史上的过度承诺(自动驾驶、飞行汽车);他们预计会出现长期平台期,或者只有渐进式改进。
对软件工作和职业路径的影响
- 普遍认为初级岗位和“glue”岗位最容易受到冲击;负责架构、困难调试和跨团队协调的资深工程师目前看起来更安全。
- 有人担心如果初级工程师被替代,未来的资深工程师将无处学习;技能培养管道可能会空心化。
- 有些人预计会出现更少但更高产、薪酬更高的专家;另一些人则预期工资和“舒适”的技术工作会受到下行压力,尤其是在中层企业工作中。
代码质量、维护与安全
- 人们担心会出现大量平庸、拼凑而成的 AI 代码:需要维护的遗留代码更多,git 考古更困难,安全问题也会让人想起 2000 年代的 bug。
- 反方观点:在测试、lint 和人工审查的配合下,LLM 可以卸下低价值工作(测试、映射、包装器),而由人类负责设计和正确性。
编程的“手艺”与学习
- 许多人认为,这门手艺是在转变,而不是消亡:从记忆繁琐细节转向问题分解、需求澄清和系统设计。
- 也有人感到真正的失落:AI 移除了“解谜”方面,以及攻克难题后获得的满足感,尤其是对那些喜欢底层细节的人来说。
- 还有人担心,依赖 LLM 的学习者会跳过培养深度理解和韧性的挫折过程。
经济与社会影响
- 关于不平等的讨论很强烈:自动化带来的收益很可能会流向 AI 的所有者,除非政治选择发生变化;有人把这与过去的自动化和外包进行类比。
- 一些人看到的是更便宜、无处不在的软件,以及许多任务进入“后稀缺”状态的可能性;另一些人则担心“技术封建主义”,以及通往中产阶级生活路径的缩窄。