大语言模型和AI编程助手的兴起从根本上改变了软件开发的经济模型。在以高效产出商业价值为主要目标的专业环境中,手写每一行代码的必要性正在降低。这一转变引发了关于程序员角色的争论:有些人将其视为手艺的流失,而另一些人则将其视为向更高层次问题解决能力的转变。然而,对于许多人来说,编程的核心魅力在于探索的过程,而非最终的产出。
对于许多开发者来说,编程仍然是一项由好奇心和克服技术障碍带来的成就感驱动的爱好。这包括探索小众话题——例如利用Agda等依赖类型语言的概念来推动Java中的类型安全——或者研究单子(monoids)等复杂的数学结构以更好地理解程序的正确性。即使这些努力没有产生直接的商业价值,甚至没有产出成品,但在脑海中“烘焙”这些想法的过程本身就能提供一种回报感。这一观点表明,虽然AI可以“一键生成”一个简单的游戏克隆版或基础脚本,但它无法取代从手动导航困难问题中获得的个人成长和智力满足感。
尽管存在这种个人乐趣,但向“氛围编程”(vibe-coding)的转变——即使用AI生成整个应用程序而从未查看底层源代码——带来了一系列新的权衡。虽然这种方法允许快速原型设计并实现那些原本可能无法构建的想法,但它可能导致最终产品缺乏打磨或工艺感。此外,人们对下一代工程师的担忧也日益增加。随着初级开发者越来越多地依赖AI来生成设计提案和实现细节,存在一种风险,即手动构建、设计和调试系统的基础技能可能会流失,这可能导致程序员的角色变成用户与AI输出之间的中间人。
