当前位置:首页 > 科技资讯 > 正文

编程未来:DHH谈“氛围编程”与AI辅助的边界

编程未来:DHH谈“氛围编程”与AI辅助的边界 氛围编程 AI辅助 编程技能 创造力 第1张

  1. DHH对“氛围编程”能否成为一项技能持怀疑态度,他认为创作能力是编辑和修正代码的基础。
  2. DHH强调AI应作为程序员助手,而非主导代码生成,以免削弱人与代码的联系。
  3. AI在复杂项目中表现尚不成熟,易产生隐藏问题,类似于“初学程序员”。
  4. DHH自称为“软件写作者”,追求优雅可读代码,希望AI编程助手有“严格模式”。
  5. 对初学者,DHH推荐Ruby、JavaScript和Go三门语言。

“氛围编程”是利用生成式AI,通过自然语言提示快速生成代码并修改迭代的编程方式。它降低了编程门槛,让非专业人士也能构建原型,极大加速了创意到实现的过程。多位技术领域的知名人士对这一趋势表示认可。

然而,也有人对此持不同看法。近日,编程界大神戴维·海涅迈尔·汉森(David Heinemeier Hansson)在访谈中,对“氛围编程”及“编程的未来”等话题进行了深入探讨。

DHH对“氛围编程”能否成为真正的技能表示怀疑,他认为创作能力是编辑和修正代码的基础。这与编辑一本书需要写作能力同理。

DHH还强调,AI应作为开发者助手而非主导者。程序员应通过亲手编程保持技能与创造力的成长。他鼓励新手开发者相信直觉,勇于实践,形成“内在的超级计算机”式判断力。

作为Ruby on Rails的创造者,DHH以“软件写作者”的身份重新定义了编程的意义,强调代码应具备表达力、美感和人性。

在AI浪潮席卷技术行业的当下,DHH持续发声,主张AI为程序员赋能而非取代,呼吁开发者保持创造力、掌控力与人文视角。

以下是DHH接受播客专访的主要内容:

01. “氛围编程”的边界与陷阱

弗里德曼:“氛围编程”是什么?它在新手程序员学习过程中扮演什么角色?

DHH:“氛围编程”是利用生成式AI工具,通过自然语言提示快速生成初始代码草稿,再通过手动修改或进一步提示进行迭代优化的方式。它适合快速验证创意或想法。然而,“氛围编程”并不利于深入掌握编程技能。学习编程需亲手练习。

弗里德曼:你如何看待“氛围编程”作为新兴技能的可能性?AI辅助下快速生成和迭代代码是否会成为新的编程方式?

DHH:我持怀疑态度,认为这是提示工程师的梦想,但更多是白日梦。编辑和修正代码的能力建立在创作能力之上。

“氛围编程”可以提高短期效率,但难以建立深层次的编程能力。目前AI在复杂系统开发中还处在“初学者阶段”,需要人类开发者的监督与干预。

弗里德曼:新手程序员如何在“氛围编程”和手动编码间找到平衡?

DHH:建议新手将大部分时间用于从零开始编写代码,“氛围编程”可占20%到30%,用于验证创意或解决特定问题。

02. AI只是助手,不是编程的主角

弗里德曼:你如何看待编程的未来?Ruby on Rails在其中扮演什么角色?

DHH:编程未来应提升开发者生产力。Ruby on Rails成功因为它赋予开发者从想法到实现的能力,适合初创公司快速迭代。

弗里德曼:你如何看待AI在编程中的作用?它将如何影响未来的编程实践?

DHH:AI有辅助作用,如查询API、生成代码草稿或提供“第二意见”。但AI生成的代码必须具备良好的人类可读性。

我更倾向于将AI作为辅助工具而非主导代码生成的核心。

03. AI会取代程序员吗?DHH持“谨慎乐观”态度

弗里德曼:你如何看待AI的未来?它将如何影响编程职业?

DHH:我对AI未来持谨慎乐观态度。但怀疑AI能否真正取代程序员。创造力和直觉是AI难以复制的核心能力。

弗里德曼:你提到DeepSeek的“思考过程”让你感到震惊,能否详细谈谈?

DHH:DeepSeek的本地运行表现确实令人震撼。它通过“思考框”展示模型内部自我对话的过程。然而,我依然认为它无法完全取代人类。

04. 给编程初学者的建议

弗里德曼:对于初学者,你推荐哪些编程语言?为什么?

DHH:我推荐Ruby、JavaScript和Go三门语言。Ruby语法简洁、表达力强;JavaScript是Web开发核心;Go适合高性能系统。