网易首页 > 网易号 > 正文 申请入驻

“Git从来不是我的主业,我受到的赞誉太多了!”Linus谈Linux开发往事:造Git,只是为了能回去维护内核

0
分享至

整理 | 屠敏

出品 | CSDN(ID:CSDNnews)

  • 从最初拒绝直接采用别人提交的补丁,到逐渐学会与社区协作,让 Linux 成为全球开源协作的典范;

  • 从顶住压力引入 BitKeeper,到因授权纠纷失去使用权限、退出内核维护,再到在短短 11 天内创造 Git,最终让其成为全球主流的版本控制系统;

  • 从曾经一年甚至两三年才能发布一个新版本,到建立起合并窗口与候选版本机制,将发布周期缩短至几周,如今每隔 9~10 周就能稳定推出一个新版本。

过去 35 年间,Linux 之父 Linus Torvalds 做过不少当时看来并不容易被理解的决定,而这些决定,也一次次改变了软件开发的方式。如今,AI 正在给 Linux 内核开发带来又一次重大变化。

谈及过去,Linus 坦言,Git 从来都不是他的主业,它只是一个帮助自己完成真正工作的工具,而自己在 Git 上获得了太多赞誉了:「我确实参与了 Git 的诞生,但已经有 20 多年没有积极参与这个项目了。」面对 AI,Linus 的态度也发生了转变。起初,他对 AI 不以为然,对「氛围编程」更是嗤之以鼻,如今他却直言:「我真的很喜欢使用 AI。」

近日,在 Linux 内核维护者峰会期间,Linus 与开源老友 Dirk Hohndel 展开了一场对谈。从 Linux 和 Git 的诞生故事,到 AI 如何改变内核开发与个人编程,两人回顾了许多鲜为人知的技术往事,也聊到了这位开源世界标志性人物对 AI 时代的最新思考。

对于开发者而言,这不仅是一场关于 Linux 过去 35 年的回顾,也是一场关于编程未来的对话。



最初收到补丁,Linus 却选择自己重写

Dirk Hohnde:早上好,很高兴来到这里。我是 Dirk Hohndel。最近,我加入了爱立信,担任爱立信软件技术部(爱立信的开源部门)负责人。能与一支规模庞大、充满热情的上游开源开发者团队共事,我感到非常荣幸。

现场有爱立信的同事吗?在我上一份工作中,我可没法开这样的玩笑。

我从事开源已经相当长一段时间了。很多人都在谈论,这据说已经是第 35 个年头了。我觉得这实在有些难以置信,但事实确实如此。那么,您是哪位?

Linus Torvalds:显然,我就是 Linus。我们之所以采用这种奇怪的对谈形式,是因为我极其讨厌公开演讲,而且即使过了 35 年,我依然会为此感到紧张。

我们发现,让我放松下来的办法就是确保我什么都不用准备。Dirk 负责构思问题,并挑选相关话题来问我;而我只需要毫无准备地走进来,往后一靠,然后尽可能享受这个过程。

Dirk Hohndel:所以大家接下来要听的是一场对谈,我觉得这挺有意思的。

说到这 35 年:我想回顾一下 1991 年 Linux 这一切刚开始的时候。当时那种模式有一点很有趣,那就是人们给你发送补丁,但你其实并没有直接应用它们。你能稍微聊聊这个吗?

Linus Torvalds:我觉得这并不是我独有的情况。当你开始自己的项目,并且习惯了独立工作时,确实需要一段时间才能真正学会如何与他人合作。你会觉得:“这是我的项目,我懂这些代码。” 诚然,当时第一个版本的代码量大概只有 10000 行,所以我确实熟悉整个代码库。

当人们给我发送补丁时——而这些人往往比我更懂 Unix——我本可以直接应用他们的补丁,但当时我的思维方式并不是这样。我希望让代码开源,但那时的我还不算一个真正的“开源人”,仍在学习如何成为这样的人。

不过,我并没有花太长时间就意识到了这一点。毕竟,我一点也不懒,而且既然已经有人把现成的补丁发给了我,我又何必再做额外的工作呢?直接应用就好了。

在我最终改变想法之前的三四个月里,我其实一直在做额外的工作:收到补丁后,我会先仔细阅读,弄清楚贡献者想要实现什么,理解他们的意图,然后自己从头到尾重新写一遍。后来我才意识到,既然有人已经提供了可以直接使用的代码,我就应该好好利用这个机会。

我觉得这种情况并不少见。后来,我在其他项目中也见过类似的现象。只要这不是一场持久战,只要你没有一直拒绝外部帮助,让大家觉得自己被排斥在项目之外,那就不是什么大问题。毕竟,学会如何与社区合作,本来就需要时间。

Dirk Hohndel:当我开始参与 Linux 时,我做了大家似乎都会做的事:我把整个源代码打印了出来。今天再想这么做就有点难了。如果你现在这么搞,一个新内核大概要合入 1.4 万个补丁,那得花上相当长的时间。

Linus Torvalds:现在这种方法不太适合大规模应用。


从没有版本控制工具到采用 BitKeeper 引发的争议

Dirk Hohndel:我的意思是,如果你回头看,一旦你开始应用补丁,你手里就只有你的源码树。当时并没有源代码版本控制系统。你是怎么管理的?如果某个改动破坏了代码,你要怎么回退?你当时管理源代码的流程是怎样的?

Linus Torvalds:当时根本没有什么正式流程。我每天都在内部处理补丁,至少每周发布一次。对于一个小项目来说,这种方式的效果出奇地好。

后来,我变得非常讨厌 CVS,而且有具体的理由不使用它。不过在早期,我倒不是讨厌 CVS,只是因为我这辈子从来没用过任何源码管理系统。用补丁和压缩包来记录代码变更,对我来说就是最自然的方式。

还是那句话,当时的系统规模比较小,参与的人也少得多。1991 年和 1992 年,我们只有少数几个贡献者,后来才逐渐增加到大约 50 人。那时的项目更容易管理,也不一定需要大量的基础设施。

Dirk Hohndel:补丁和压缩包似乎是处理代码显而易见的方式。这种方法——接收补丁,每周创建一个新的压缩包,然后发布压缩包和差异文件(diffs),一直持续到了 2002 年。到了那时候,这已经是一个大得多的项目,贡献者也多了很多。你中途有改变过这个流程吗,还是说依然只有你和你的电脑?

Linus Torvalds:当时真的只有我和我的电脑。不过,一些子系统(主要是网络子系统)已经迁移到了 CVS 上,而那时我也已经学会了使用 CVS。

问题在于,在很长一段时间里,我们都没有好的分布式版本控制工具可用。我一直坚信,每个人都应该拥有自己的本地开发环境。而通过压缩包和补丁,每个人都能确保自己使用的是完全相同的代码。

相比之下,搭建一个中心化的 CVS 仓库、维护仓库、管理提交权限,以及处理分支——而分支操作在 CVS 中简直就像黑魔法一样——整个过程既痛苦又充满挑战。

Dirk Hohndel:我曾在 CVS 中管理 XFree86,在我的系统上给一个发布版本打标签(tagging)就要花上两个半小时。

Linus Torvalds:在 Larry McVoy 带着 BitKeeper 出现之前,我们一直缺乏像样的基础设施。有些人对 BitKeeper 的记忆充满了强烈的厌恶,但对我来说,它是第一个让我意识到源码控制原来可以以分布式方式运行的系统。

它真正实现了数据的分发,而不是将数据锁定在一个中央仓库中,再向外分发功能受限的副本。我非常享受这种体验,尽管当时认同这种方式的人并不多。

Dirk Hohndel:你后悔做出了使用 BitKeeper 的决定吗?它当时争议很大;Alan Cox 和其他人坚决反对使用专有软件。

Linus Torvalds:我们当时的分歧很大。即使到了今天,虽然我们已经有了一套标准工作流程,但成为一名内核维护者,也并不意味着你必须使用 Git。Andrew Morton 作为 Linux 核心维护者长达 15 年,他就完全不用 Git。

事实上,当时我们也有一套推荐的工作流程。到了 2000 年代初期,这套流程使用的是 BitKeeper,但很多人拒绝使用它,因为它不是开源软件。尽管如此,BitKeeper 的普及程度已经足够高,这对我来说简直是一种解脱。我终于能够轻松得多地合并网络代码、ARM 架构代码以及许多其他子系统的代码。

在教会我们一套工作流程应该如何运转这件事上,BitKeeper 取得了巨大的成功。它确实存在缺陷,但它做对了足够多的事情,让我逐渐看清自己真正想要的版本控制系统究竟是什么样的。


退出内核维护,11 天造了一个 Git 出来

Dirk Hohndel:接着就到了 2005 年,以及那场授权纠纷。

Linus Torvalds:我们当时遇到了一场许可证争议。BitKeeper 的许可证规定:“你可以将它用于开源项目,但不能对其进行逆向工程。”结果,最终还是有人对它进行了逆向工程,这意味着我们失去了使用这款工具的许可。

这对我来说是一个巨大的打击。毕竟,在我从事 Linux 工作的 13 到 14 年间,BitKeeper 是唯一一款让我觉得真正可以接受的工具。

这件事令人非常震惊。一旦你习惯了某种工作流程,突然失去它,就会感到极其痛苦。即使一个流程并不完美,只要你已经熟悉它,就知道该如何应对其中的缺陷。而在体验过更好的工具之后,我已经完全无法退回到使用压缩包和补丁的时代了。

于是,我暂时退出了内核维护工作,并表示,只要找到替代方案,我就会回来。

Git 就这样诞生了。

如果说 BitKeeper 曾遭到社区中一些人的反感,那么 Git 从一开始招致的厌恶就更为强烈。它虽然是开源的,但还很粗糙,而且我故意让它的工作方式与传统工具有所不同。当时,一些从未接触过 BitKeeper 的人听说,现在终于有了开源的源码控制工具,便表示:“好吧,那我愿意试试。”但这些人通常都有 CVS 的使用背景,而他们发现,自己根本无法理解 Git。

Git 的有向无环图和对象存储模型,对他们来说完全陌生。再加上我对 CVS 的命名约定深恶痛绝,于是把所有命令都重新命名了一遍,这让他们更加无所适从。

所以,我不知道在座有多少人是从 2005 年、2006 年就开始使用 Git 的。那时候,Git 还很新,不够完善,也存在不少缺陷,整体体验与人们的预期相去甚远。

但我想说的是,大约五年时间里,Git 就从一个古怪、特立独行的项目,演变成了彻底改变源码管理格局的标准工具。这件事其实很奇怪。因为在 Git 出现之前,CVS 已经存在了几十年,期间也有人试图用 SVN 来取代它。我曾经觉得,这个领域的阻力实在太大,历史包袱太重,大家又太习惯传统的工作流程,所以我们可能永远都无法说服别人使用 Git。

但对我来说,只要能在内核项目中使用 Git,就已经足够了。这是我当时唯一关心的事情,直到今天也依然如此。

然而,某种转变还是发生了。如今,甚至已经没人认识 CVS 了。如果你是一个刚走出大学校园的年轻人,很可能从来没听说过 CVS,而 Git 却已经无处不在。直到今天,这件事仍然让我感到惊讶。

每次聊到这个话题,我都想向大家澄清一点:我创建了 Git,维护了半年,然后就说:“我不管了。”对我来说,Git 从来都不是首要目标。它只是一个帮助我完成真正工作的工具——让内核能够顺利运转,让我可以重新回到维护工作中。

半年后,Git 对我来说已经足够好用了,于是我把它交给了 Junio Hamano。在 Git 早期的大部分时间里——那半年中差不多有五个月——我一直在和他一起工作。我很欣赏他的思维方式,所以最后我对他说:“抓到你了,接力棒交给你。你现在就是 Git 的新维护者了,自己看着办吧。”

此后,他与成百上千名其他贡献者一起,在这个项目上持续耕耘了 20 多年。

有时候,我觉得自己在 Git 上获得了太多赞誉。我确实参与了 Git 的诞生,但已经有 20 多年没有积极参与这个项目了。

Dirk Hohndel:关于这一点,我想稍微反驳一下。人们总是对我能清楚记得 Git 是什么时候诞生的感到惊讶:那是在 2005 年 4 月。

我之所以记得这么清楚,是因为当时 Linus 的太太邀请我和我太太一起帮忙筹办他二女儿(也就是我的教女)的生日派对。我们到了之后才发现,这活儿至少得四个人才能干得完。结果,Linus 却对我说:“嘿,Dirk,我想跟你聊聊我最近在弄的一个玩意儿。”

于是,我们俩就溜到了一家冰淇淋店,把组织派对的活儿留给了各自的太太。这件事后来可没少让我挨抱怨。正因为如此,我才对这一切究竟是从什么时候开始的记得如此清楚。

我想说的是,在座各位都是软件开发者。如果你在一家公司工作,试图针对一个复杂的领域开发一种突破性的全新解决方案,然后告诉老板,你打算一个人在 11 天内搞定——因为这正是 Linus 从开始动手到做出第一个可用版本所花的时间——那么,请大家好好体会一下这件事的分量。

发明一种全新的对象模型,编写代码,并在不到两周的时间里让它真正跑起来。千万别让你们的老板听到这段话,否则他们可能会觉得,你们平时都在摸鱼。

Linus Torvalds:或者他们会说:“我用大语言模型(LLM)两个小时就能搞定。”

Dirk Hohndel:你觉得半年后 Git 已经足够好了,然后 Junio 就接手了。那社区觉得半年后它够好吗?社区花了多久才接受它?在那个一个半礼拜之后,他们显然是不买账的。

Linus Torvalds:因人而异。有些人花的时间比别人长。我们有些核心的内核维护者在一个月后就接受了。还有些人,比如 Andrew Morton,他花了 15 年才开始用。什么情况都有。

值得一提的是,今天的 Git 显然比 2005 年那会儿要好得太多了。


每两年发布一次太痛苦,Linus 提议改成每五周一次

Dirk Hohndel:还有一个关于开发模式的有趣变化,我想简单聊一下。

Git 于 2005 年诞生。到了 2005 年、2006 年,大多数人开始使用 Git 时,Linux 的开发模式仍然是原来的样子。

Linux 开发模式真正发生重大转变,大约是在 2014 年。当时,我们从过去那种“Linus 想什么时候发布就什么时候发布”的模式,转向了合并窗口和候选版本机制,整个开发流程也变得更加规范和有序。你能谈谈这次转变吗?

Linus Torvalds:我想先问一个问题:在座有多少人是在 2006 年之前就开始参与 Linux 开发的?嗯,举手的人还真不少。

对于那些没有这么长时间参与其中的人来说,我们现在已经拥有了一套非常稳定的开发模式。整整 20 年来,我们基本上每 9 到 10 周就会发布一个新版本,而且这套模式运行得非常出色。有时候,人们甚至意识不到它有多好,因为它就是这么运转着,一切都很顺利。

但在我刚开始推行这套机制的时候,这种模式简直被认为是疯狂的。昨天我们刚刚举行了 Linux 内核维护者峰会。这让我想起了早年时期的另一次峰会,大概是 2006 年那次。

当时我提出了自己的想法:我希望摆脱那种所谓的年度发布模式。因为名义上每年发布一次,实际上却往往要拖到两三年。

问题在于,当你采用年度发布模式时,就会出现两棵代码树:一棵是大家实际使用的稳定版代码树,另一棵则是开发版代码树,所有新鲜、有趣、令人兴奋的工作都在里面进行。

可等到一年过去,真正要发布这些新功能时,整个系统往往已经无法正常运行了。因为这一整年里,我们一直在不断地破坏原有的东西。这就是过去的开发方式。

这种模式一直让人非常头疼。很多 Linux 发行版会采用那棵大家没有在上面进行新功能开发的稳定版代码树,然后再把他们认为绝对需要的补丁回移进去。结果,每个人手里都有一套混杂不堪的代码树。我们称它们为稳定版,但实际上并不稳定;与此同时,还有另一套开发版代码树。没有人能够真正制定计划,因为所谓的年度发布,最后往往变成两年甚至三年才发布一次。

所以,当你身处这样一种开发环境时,我却跑到维护者峰会上说:“我不喜欢现在的模式。我希望我们能把发布周期从每两年一次,改成每五周一次。”

当时大家看我的眼神,就像我脑袋上长出了第三只眼睛一样。有人甚至会问:“你最近是不是吃了什么奇怪的药?”

但我的态度是:“我真的非常想试试,因为现在这种两年一次的发布节奏根本行不通。”

事实证明,我提出的五周发布周期确实很激进,而且这是我故意设定得这么激进的。我当时也不认为我们真的能做到每五周发布一次。

但如今,这套模式已经运行了 20 年。我不仅惊讶于它竟然真的行得通,更让我惊讶的是,它至今依然运行得如此出色。我们几乎在一瞬间就彻底改变了整个开发模式,摆脱了过去那套方式。

严格来说,过去的模式并不是完全行不通,只是此前 15 年的开发过程一直非常痛苦。于是,我们决定彻底改变工作方式。在这期间,我们经历过几次类似的转变:工具和工作流程发生了巨大的变化,而这些变化往往伴随着非常痛苦的过程。但到目前为止,每一次转变最终都取得了成功。

过去 20 年里,我们一直拥有一套非常稳定、运转良好的开发模式,就像钟表一样精准。这真的非常棒。我们都知道,Linux 7.3 一周后就会发布,对吧?

Dirk Hohndel:是的,7.3 已经发布了。有什么有趣的变化吗?

Linus Torvalds:我以前常说,内核应该是无聊的。现在我很高兴地说,它确实基本上很无聊。我们没有什么特别重大的新功能,而且我一直在主动避免让每次发布都加入令人兴奋的新功能。

我非常相信渐进式的小改动。随着时间推移,这些小改动最终会汇聚成重大功能,而你不会觉得它们是突然出现的巨大飞跃。你看到的只是一些细微的变化,开发者和 Linux 发行版会逐渐采用它们,用户程序也会慢慢开始使用这些功能,有时候甚至要等上几年。

只有当你回头去看一个五年前的 Linux 发行版,再看看它现在的样子时,你才会突然意识到:“天哪,原来这期间已经发生了这么多重大变化!”

但我认为,我们不应该采用软件行业特别喜欢的那种传统的重大版本发布模式,也就是发布一个全新的 1.0、2.0 版本,然后打破所有东西,引入一堆令人兴奋的新功能。


AI 生成的补丁越来越多,Linux 维护者开始用 AI 审查 AI

Dirk Hohndel:这方面的典型例子,我不确定 Thomas Gleixner 是否在现场。从最初提出 RT Linux,到它最终被完整合并进主线内核,整整花了 10 年时间。所以,是的,有些事情确实需要相当长的时间。

好了,我们这场演讲已经进行了 25 分钟以上,居然还没聊到 AI。我对此感到非常自豪。

Linus Torvalds:好了,停!这种情况马上就要改变了。

Dirk Hohndel:是的,马上就要改变了。那么,Sashiko 似乎是一个非常有用的工具,它可以利用 AI 来审查拉取请求。你实际上会在合并窗口期间,用它来审查收到的 PR 吗?

Linus Torvalds:我不用 Sashiko。我也不能这么说……

对于不了解情况的人来说,我们有各种 AI 工具,会在公开的邮件列表上进行补丁审查。这些邮件列表与我们平时进行内核开发的邮件列表是同一套。

Sashiko 是其中最主要的一个工具,由 Google 内部维护,但整个项目是开源、公开进行的。

实际上,它已经改变了人们的工作方式。很多子系统现在基本上不再接受补丁,除非这些补丁已经经过 Sashiko 的公开审查。

我不会说这些审查结果完全可靠,因为它并不完美。AI 在代码审查中有时会提出错误的意见,这也是现实的一部分。我甚至不会因此责怪 AI,因为人类审查者同样会给出错误的意见。

Sashiko 确实改变了许多子系统的工作方式。某种程度上,我们正在用自己的 AI 补丁审查浪潮,来应对 AI 生成的补丁浪潮。

人们开玩笑说,现在是机器人在和机器人对话。实际上,这种情况确实已经发生了。

其实,AI 对内核开发的影响是颠覆性的。我们现在收到了大量各种各样的补丁,其中有些针对非常重要、真实存在的安全问题,也有些针对已经 20 年没人碰过的代码。毕竟,那些代码早就没人关心了。

可当你让一个 AI 机器人去检查代码,问它:“这里是不是存在内存泄漏?”它就会回答:“我才不管这个驱动程序现在是不是已经没人用了,我会把能找到的所有错误报告都给你。”

所以,我们收到的补丁中,既有很有价值的,也有没那么有价值的。

总体而言,我认为 AI 正在改善我们的代码库。不过,它也给维护者带来了很大的压力,甚至已经到了令人担忧的程度。

Dirk Hohndel:我认为,这也是 AI 代码审查工具如此重要的原因之一。它们并不是要取代维护者,而是能够让维护者的工作变得更加轻松。

如果有一个 AI 工具能够帮忙检查差一错误(off-by-one errors)、API 使用错误以及类似的问题,我认为这会非常有帮助。

Linus Torvalds:昨天的维护者峰会上,我们大约四分之三的讨论都围绕着一个问题展开:如何让 AI 工具,无论是代码生成还是代码审查,都能减少大家的压力,让整个过程更加顺利,也能真正为所有人提供帮助。

显然,AI 已经成为 Linux 内核开发中的一个重大议题,其他领域也一样。相信大家对此都已经非常熟悉,甚至听得有些厌烦了。


“AI 是进入编程世界的入门药”

Dirk Hohndel:不过,谈到 AI 代码审查,人们最想讨论的往往是这样的场景:一位高级管理人员坐在办公桌前,告诉聊天机器人要开发什么新功能,然后 AI 就能完美地把它实现出来。我们还远远没有达到那个阶段。

我想聊的是我们最近关于你一个业余爱好项目的一次对话。你在开发一个原声吉他效果器,并且为上面的均衡器做了一个 JavaScript 的用户界面。让我特别感兴趣的是,你描述了整个过程:你是如何从明确自己想要什么,一步步引导 AI,最终让它真正写出你想要的东西的。

Linus Torvalds:我对 AI 的看法经历过很多阶段。最初,我觉得它根本不怎么样。后来,我开始觉得它作为一种工具还挺有意思,也鼓励大家多尝试、多玩玩。而现在,我已经到了一个阶段:我真的很喜欢使用 AI。

需要澄清的是,我现在已经不怎么写大量的内核代码了。我的角色更像是一个维护者、技术负责人。对我来说,内核项目里真正干活的是其他人,而我更像是一个汇集各方工作的协调点。

不过,在我自己做的那些小项目里——毕竟我至今仍然非常享受编程——我确实认为,只要正确使用 AI,并且把它当作一种工具,它就会非常出色。我发现,AI 让编程变得有趣得多。

我大概是 1981 年开始编程的。那时候计算机简单得多,你能够理解它们在做什么,拿来和自己的程序比较的作品也简单得多。我记得自己十几岁时写过一些游戏。那些游戏简直糟透了,但当时的标准也没那么高,所以我并不会因为自己写出来的东西而感到羞愧。

后来几年,我开始觉得,软件工程的门槛已经高得惊人。一个刚入行的年轻人,很难觉得自己那些微不足道的尝试有什么价值,因为他们看到的都是经过打磨、非常专业的作品。你看看自己的手机,里面有漂亮的界面。对于一个刚刚开始学习编程的人来说,要达到这样的水准实在太难了。

而现在,我在那些小项目中使用 AI 后,反而觉得 AI 真是一件了不起的东西。至于大家讨厌的“氛围编程”——当然,也不是所有人都讨厌,只是很多人喜欢拿它开玩笑——我认为,它是重新找回编程乐趣的一种绝佳方式。因为它让你觉得,自己正在做一些真正有用的东西。它也让初学者能够完成一些原本很难做到的事情。

我认为,无论你是在学习什么,尤其是编程,入门门槛都应该足够低,让你能够先享受到其中的乐趣,然后真正开始学习,而学习需要花很长时间。

我以前确实不喜欢 AI,也一直对“氛围编程”嗤之以鼻。对于真正的项目,我现在依然如此。我认为,在处理真实而重要的工作时,使用 AI 必须非常谨慎。

不过,我很喜欢把 AI 看作进入编程世界的“入门药”。

我当时在做自己的一个小项目,也就是那个吉他效果器。我知道自己在做什么:我已经用 C 写好了一个 UI,它运行在微控制器上,显示在一块小屏幕里。但我看着它就觉得:“这也太蠢了吧,简直像是 80 年代的东西。”

我不是做 UI 的人。我想让它看起来更现代一些,像是这个世纪的产品。可我不会 Java,也不会那些花里胡哨的东西。我写内核,做的是硬核的事情——用 C 做底层编程。

所以我想,解决办法就是让 AI 帮我做那些我不擅长、而且我也知道自己不擅长的事情。有时候,那些东西是我想学的;但有时候,我甚至根本不想学。我仍然对底层编程感兴趣,只是也想拥有一个漂亮的 UI。

我看过你们都看过的那些 YouTube 视频:只要给 AI 一个提示,它就能帮你把东西做出来。于是我也给了它一个提示。结果它做出来的东西糟透了,真的很差。

但我知道自己想要什么,也知道自己在做什么。于是我继续给 AI 提示,告诉它:“看,我已经用 C 把这些功能实现了。我做得是正确的,只是界面很丑。你就按照我已经完成的东西来做——这些代码我理解,也知道它们是正确的——然后给它一个漂亮的外观。”

最终的结果确实让我非常惊讶。

我觉得,很多人喜欢讨厌 AI,也有一些人真心喜欢它。我认为 AI 是一种很有意思、也很有用的工具。它可以成为进入编程世界的入口,也可以帮助你写出非常优秀的代码。

不过,如果你想用 AI 写出真正优秀的代码,我认为你也必须理解代码本身,并且把 AI 当作一种工具来使用。它不应该只是一个玩具。

但通过把 AI 当作玩具来尝试、进而进入编程世界,也许正是一条很好的路径。

Dirk Hohndel:没有比用“AI 是进入编程世界的敲门砖”这个观点来结束对谈更好的方式了。非常感谢大家。

  • 完整采访内容:https://www.youtube.com/watch?v=0PSA2LFFlvk

「从具身智能到 Physical AI」专题阵容更新!

段楠、方斌、戴若犁、刘昊、郎玉川、唐都钰、邵鹏韬等一线研究者与产业实践者,将围绕世界模型、灵巧操作、本体—数据—模型飞轮、机器人 Agent、Physical AI、多机协同等方向,分享最新研究判断与真实工程实践。

2026 奇点智能技术大会将汇聚 70+ 技术嘉宾、18 大前沿专题、70+ 主题演讲、1000+ 行业技术人,覆盖 RSI、Agent、AI Coding、世界模型、Physical AI、AI Infra、企业级 AI 等热门方向。

11 月 20–21 日|北京万达文华酒店

如果你正在关注具身智能、机器人、世界模型或下一阶段 AI 技术趋势,扫码即可注册参会,提前锁定席位。


特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
山东一女子称应聘医院岗位被要求上交丝袜,对方称“能接受袜子管理的话,每月一千补助”;院方回应:未进行此类招聘,必要时会报警

山东一女子称应聘医院岗位被要求上交丝袜,对方称“能接受袜子管理的话,每月一千补助”;院方回应:未进行此类招聘,必要时会报警

蓬勃新闻
2026-11-05 14:22:26
突发:C罗官宣从葡萄牙队退役,结束23年国家队生涯

突发:C罗官宣从葡萄牙队退役,结束23年国家队生涯

体坛周报
2026-11-05 18:43:16
四川大学教授霍大同病逝,率先开展精神分析在中国的临床实践

四川大学教授霍大同病逝,率先开展精神分析在中国的临床实践

澎湃新闻
2026-11-05 17:30:29
马驹桥是一支清醒剂 | 何兰生

马驹桥是一支清醒剂 | 何兰生

农见度
2026-11-05 19:51:37
前“香港众志”头目黄之锋,再获刑10年

前“香港众志”头目黄之锋,再获刑10年

扬子晚报
2026-11-05 12:33:19
男子预判黄金能涨到2000元/克,拿出全部积蓄408万买了7斤黄金,9个月亏损114万,因着急用钱割肉离场,隔日金价大幅反弹

男子预判黄金能涨到2000元/克,拿出全部积蓄408万买了7斤黄金,9个月亏损114万,因着急用钱割肉离场,隔日金价大幅反弹

每日经济新闻
2026-11-05 19:14:52
特朗普中期选举失利后首次露面

特朗普中期选举失利后首次露面

都市快报橙柿互动
2026-11-05 06:40:25
震惊!股民群流出惨剧:一投资者从5000万做到3亿,重仓“易中天”加杠杆交易,盘中跳水导致账户全部爆仓

震惊!股民群流出惨剧:一投资者从5000万做到3亿,重仓“易中天”加杠杆交易,盘中跳水导致账户全部爆仓

火山詩话
2026-11-05 13:09:14
女硕士走失遭性侵,终于等来结果

女硕士走失遭性侵,终于等来结果

南风窗
2026-11-05 14:26:17
副教授宁死也不愿离开"铁笼",徒留一声叹息!

副教授宁死也不愿离开"铁笼",徒留一声叹息!

互联网大观
2026-11-05 13:04:12
重磅官宣!拜仁续约33岁金球先生3年 薪资全欧最高+或超3200万欧

重磅官宣!拜仁续约33岁金球先生3年 薪资全欧最高+或超3200万欧

我爱英超
2026-11-05 16:25:02
爱奇艺白金会员称追剧遇“年度最恶心广告”,关键情节时弹幕广告持续滚动,“很费解广告是如何上线”,平台回应

爱奇艺白金会员称追剧遇“年度最恶心广告”,关键情节时弹幕广告持续滚动,“很费解广告是如何上线”,平台回应

极目新闻
2026-11-05 17:40:11
“阿布·赛义德遇袭身亡”

“阿布·赛义德遇袭身亡”

上观新闻
2026-11-05 10:52:28
突发!陕西商南重大刑案致3死2伤,嫌疑人携刀潜逃,连执法人员也被其所伤

突发!陕西商南重大刑案致3死2伤,嫌疑人携刀潜逃,连执法人员也被其所伤

子非鱼人
2026-11-05 13:19:56
体制内许多人不愿出差!网友:出差后患无穷,高风险0收益

体制内许多人不愿出差!网友:出差后患无穷,高风险0收益

六子吃凉粉
2026-11-05 09:33:54
中期选举惨败后,美共和党“替罪羊”出现!美媒爆:众议院计划投票弹劾防长赫格塞思

中期选举惨败后,美共和党“替罪羊”出现!美媒爆:众议院计划投票弹劾防长赫格塞思

环球网资讯
2026-11-05 11:01:55
93票赞成13票反对,联合国大会通过决议!美国、俄罗斯、以色列等投反对票,中国投弃权票

93票赞成13票反对,联合国大会通过决议!美国、俄罗斯、以色列等投反对票,中国投弃权票

每日经济新闻
2026-11-04 23:04:41
刚刚!美伊局势,传来大消息!

刚刚!美伊局势,传来大消息!

证券时报
2026-11-05 16:17:03
万斯发长文“与特朗普切割”,特朗普回应

万斯发长文“与特朗普切割”,特朗普回应

上观新闻
2026-11-05 16:49:26
东风-61,已列装火箭军

东风-61,已列装火箭军

扬子晚报
2026-11-05 22:28:46
2026-11-06 01:51:00
CSDN incentive-icons
CSDN
成就一亿技术人
27120文章数 242342关注度
往期回顾 全部

科技要闻

一手实测|国产三大Flash模型,谁更能打?

头条要闻

去年首次公开亮相的东风-61已列装火箭军

头条要闻

去年首次公开亮相的东风-61已列装火箭军

体育要闻

40岁,正是绝杀的年纪!

娱乐要闻

42岁的唐嫣,又上热搜了

财经要闻

市场能接受AI繁荣退潮吗?

汽车要闻

限时置换价15.98万元起 2027款领克08 EM-P上市

态度原创

时尚
家居
游戏
亲子
军事航空

复古的这款大衣,现在穿刚好!

家居要闻

2026建博会(广州) 公装联探展交流活动

PS5模拟器迎来重大优化 卡顿直接减少91%

亲子要闻

工程车小故事:装泡泡糖

军事要闻

特朗普称伊朗战事何时结束将由其决定

无障碍浏览 进入关怀版