写点什么

GitHub 首席执行官:尽管 AI 蓬勃发展,但手动编码仍然是关键

  • 2025-06-24
    北京
  • 本文字数:1303 字

    阅读完需:约 4 分钟

大小:631.70K时长:03:35
GitHub 首席执行官:尽管 AI 蓬勃发展,但手动编码仍然是关键

整理 | 华卫 

 

近日,在做客《The MAD Podcast with Matt Turck》时,GitHub 首席执行官托马斯·多姆克(Thomas Dohmke)指出,开发者需要具备修改 AI 生成代码的能力,以避免生产力问题。他描述了一种高效工作流程:AI 工具生成代码并提交拉取请求(pull requests),开发者可利用编程技能即时进行调整。  

 

他警告称,单纯依赖自动化工具可能导致效率低下。例如,开发者可能花费过多时间用自然语言解释简单修改,而非直接编辑代码。“最糟糕的情况是,我本可以用编程语言直接完成修改,却要琢磨如何用自然语言提供反馈或提示来描述需求。”多姆克说道。  

 

此外,多姆克还谈到了“氛围编程”(vibe coding)——这一术语由 OpenAI 联合创始人安德烈·卡帕西(Andrej Karpathy)提出,用于描述对 AI 生成代码的过度依赖。

 

混合模式成为 AI 编码的制胜法则  

多姆克的观点与行业共识不谋而合:最有效的 AI 编码策略是将自动化与人类编程技能相结合。  

 

德勤(Deloitte)的研究佐证了这一模式:开发者主要利用 AI 工具完成编写模板代码等特定任务,同时保持人工监督,每日可提升 10-20 分钟的生产力。研究表明,约半数 AI 生成的代码存在部分错误,这凸显了人类专业知识的持续必要性,“信任并验证”策略正成为行业标准实践。  

 

谷歌的实践也印证了这种混合模式——该科技巨头报告称,其超过 25%的代码现由 AI 生成,但仍需大量人工审核与优化。  

 

这种平衡策略反映了业界对 AI 在软件开发中能力与局限的认知日趋成熟,表明最成功的应用模式将是增强开发者专业技能,而非取而代之。

 

开发者角色在演进,而非消失  

人工智能并未在消灭编程岗位,而是正将开发者从纯粹的编码者转变为 AI 辅助开发流程的协调者。  

 

行业专家预测,开发者角色将分化为两大主要类别:利用 AI 生成代码的产品工程师,以及确保软件系统质量与安全性的高级编码架构师。  

 

这一演进要求开发者掌握新技能,重点聚焦于战略性问题解决、高效指导 AI 工具,以及做出高层次设计决策,而非手动编写每一行代码。

 

软件工程师持续短缺,加上研究表明 AI 工具对初级开发者尤其有益,这意味着 AI 将有助于弥合人才缺口,同时为经验丰富的程序员创造新机遇。  

 

这一转变与软件开发的历史规律相符:新工具和抽象技术虽改变开发者的工作方式,但从未消除对人类创造力的需求。

 

“氛围编程”揭示生产力与质量的矛盾  

新兴的“氛围编程”模式既展现了 AI 生成代码的潜力,也暴露了其局限性,尤其在初创企业和复杂项目中更为明显。  

 

尽管 AI 工具支持快速原型设计和迭代开发(契合敏捷方法论),但也引发了对代码质量、安全漏洞和可维护性的重大担忧。现实案例已表明,过度依赖未经验证的 AI 生成代码存在风险,尤其是那些可能不会立即显现的安全问题。

 

这种矛盾对初创企业尤为关键,因为非技术背景的创始人若主要依靠 AI 生成代码构建可持续的复杂系统,可能会产生技术债务,进而阻碍未来发展。  

 

成熟科技公司的经验表明,成功的 AI 整合需要在自动化与严格质量保证流程间取得平衡——这一教训对正顺应“氛围编程”趋势的小型组织而言或许至关重要。

 

参考链接:

https://www.techinasia.com/news/github-ceo-manual-coding-remains-key-despite-ai-boom

2025-06-24 10:353989

评论 1 条评论

发布
用户头像
我本可以用编程语言直接完成修改,却要琢磨如何用自然语言提供反馈或提示来描述需求。同样的疑惑。
2025-06-24 13:55 · 北京
回复
没有更多了

错过了初恋,别错过WebFlux

稻草鸟人

stream Spring5 WebFlux Reactive

如何让团队产生“多米诺骨牌”效应?

Yanel 说敏捷产品

项目管理 敏捷 敏捷开发 敏捷精髓

目光聚集之处,金钱必将追随

Tom

学习 个人成长 思考 读书

Python程序性能分析和火焰图

ElvinYang

回"疫"录(12):一“罩”难求

小天同学

疫情 回忆录 现实纪录 纪实

ShedLock:一个轻量级的定时任务协调组件

kk

定时任务 shedlock

良好的工作习惯——及时存档、备份

小匚

工作效率

追光逐影:读《我们这一代》

北风

用Go替代Python在生产环境中进行数据分析

良少

人工智能 大数据 数据分析 pandas Go 语言

ITerm2 + Oh my ZSH + Powerlevel10k

JDoe

配置

医院陪护5天的四点感受

赵新龙

身心健康 医院

带你吃透原型设计

Yanel 说敏捷产品

产品 产品经理 产品设计 产品开发 产品推荐

你真的懂"看板文化"么?

Yanel 说敏捷产品

敏捷 敏捷开发 敏捷精髓

【解析+示例】2种方法,通过SpreadJS在前端实现甘特图

葡萄城技术团队

大前端 甘特图 SpreadJS 表格控件

工具集系列|值得收藏的几个免费在线学习国外网站

一尘观世界

学习 工具 网站 提升

从技术层面理解对于区块链技术的10.24集体学习讲话

Tux Hu

区块链 智能合约 以太坊 加密货币 去中心化网络

游戏夜读 | 如何制作互动剧?

game1night

你的团队属于部落的哪个阶段?

Yanel 说敏捷产品

敏捷 敏捷开发 敏捷精髓

Try-Catch包裹的代码异常后,竟然导致了产线事务回滚!

牧码哥

Java spring 事务

危机过后,「表格文档协同」需要具备什么能力?

葡萄城技术团队

大前端 开发者工具 Excel

DDD 实践手册(6. Bounded Context - 限界上下文)

Joshua

企业架构 设计模式 领域驱动设计 DDD 架构模式

每个人都应该知道的性能参数

ElvinYang

Git clone过慢问题

JDoe

git

Java 为什么需要包装类

Rayjun

Java

也谈程序员的核心竞争力

我心依然

学习 程序员 竞争力 独立思考 清晰表达

如何高效阅读

ElvinYang

功不唐捐

Janenesome

读书笔记 思考 坚持

Linux学习-2020.05.11

Flychen

接口限流算法有哪些,看完这篇又能和面试官互扯了~

不才陈某

Java 分布式 后端

NIO 看破也说破(三)—— 不同的IO模型

小眼睛聊技术

Java 学习 深度思考 程序员 架构

认识数据产品经理(二 数据产品经理的稀缺性)

马踏飞机747

大数据 互联网 数据分析 产品经理

GitHub 首席执行官:尽管 AI 蓬勃发展,但手动编码仍然是关键_AI&大模型_华卫_InfoQ精选文章