当前位置:首页>java>Linux之父的戏剧性反转:从怒斥AI代码是垃圾到亲自用AI编程

Linux之父的戏剧性反转:从怒斥AI代码是垃圾到亲自用AI编程

  • 2026-10-21 13:28:50
Linux之父的戏剧性反转:从怒斥AI代码是垃圾到亲自用AI编程

上周,开源世界发生了一件让所有人大跌眼镜的事:Linux之父Linus Torvalds——这位以毒舌著称、对代码质量近乎偏执的技术大神——在GitHub上公开了一个用AI辅助编写的个人项目,并坦然承认使用了"Vibe Coding"。这距离他痛批AI生成代码是"垃圾",仅仅过去了4天。

01从"垃圾"到"真香":4天发生了什么?

事情要从1月8日说起。

当时,有开发者向Linux内核提交了一段明显由AI生成的代码。Linus的反应一如既往地直接——他在邮件列表中毫不留情地批评这段代码"充满了AI的典型特征:看起来很专业,实际上是垃圾"。

他指出,AI生成的代码往往存在几个致命问题:

  • 代码风格不一致,像是多个人写的拼凑品
  • 使用了根本不存在的API
  • 逻辑看似合理,但完全不理解底层实现
  • 最关键的是,提交者自己也不理解这些代码

这番言论在技术圈引发了广泛讨论。毕竟,Linus的态度往往代表着硬核开发者群体的立场。很多人认为,这是对AI编程热潮的一记重拳。

然而,仅仅4天后,1月12日,Linus在GitHub上公开了一个名为AudioNoise的个人项目——并承认使用了AI辅助编程。

02AudioNoise:一个"玩具级"的音频效果器

AudioNoise是什么?用Linus自己的话说,这是一个"不应该被认真对待的玩具效果器"。

项目的背景是这样的:Linus一直在折腾一个基于RP2354和TAC5112芯片的数字吉他效果器硬件项目。在硬件设计暂时搁置期间,他开始研究数字音频处理的软件部分——纯粹是为了学习。

项目包含一些基础的IIR滤波器和延迟循环,用于模拟移相器等模拟电路效果。Linus特别强调,这些都是"非常基础和简单的东西",因为他在这个领域是个新手。

"Python可视化工具基本上是通过vibe-coding写的。我对模拟滤波器的了解比对Python的了解多——虽然这也说明不了什么。一开始我用的是典型的'谷歌搜索然后照猫画虎'式编程,但后来我把中间人——也就是我自己——省掉了,直接用Google Antigravity来写音频采样可视化工具。"

—— Linus Torvalds, AudioNoise README

Vibe Coding,这个由Andrej Karpathy提出的概念,指的是完全依赖AI来编写代码,开发者只需要描述需求,然后接受AI的输出。Google Antigravity则是Windsurf的分支,而Windsurf是微软VS Code的分支——一个AI驱动的IDE工具。

03这不是"打脸",而是务实

表面上看,这像是一个经典的"真香"现场。但仔细分析,你会发现Linus的立场其实非常一致。

他批评的是什么?

1. 将AI生成的代码提交到关键基础设施(Linux内核)

2. 提交者不理解自己提交的代码

3. AI代码被用于需要高度可靠性的场景

他接受的是什么?

1.个人学习项目,不影响任何生产环境

2. Python可视化工具,不是核心功能

3. 他明确标注了这是AI生成的代码

4. 这是一个"玩具",不需要生产级可靠性

这种区分非常重要。Linus从来没有说AI不能用于编程,他反对的是不加思考地将AI代码塞进关键系统。

04技术领袖的转身,比任何宣传都有说服力

这件事的意义远超Linus个人。

过去两年,AI编程工具经历了从狂热到质疑的周期。GitHub Copilot、Cursor、Windsurf等工具确实提高了开发效率,但也带来了代码质量、安全性、版权等一系列问题。

GNOME项目在2025年12月宣布拒绝接受AI生成的Shell扩展,理由是"部分开发者在使用AI时并不理解代码"。Gentoo Linux也在考虑迁移代码库,部分原因是GitHub不断推销Copilot让他们感到不适。

在这种背景下,Linus的态度转变传递了一个微妙但重要的信号:

AI编程不是非黑即白的问题

关键在于:

  • 场景
    :学习项目 vs 生产系统
  • 透明度
    :是否明确标注AI参与
  • 理解度
    :开发者是否理解代码
  • 责任
    :谁为代码质量负责

05给开发者的启示

Linus的做法其实给出了一个很好的示范:

1. 承认自己的局限

Linus坦然承认自己对Python不熟悉,对数字音频处理是新手。这种诚实让他能够合理地选择工具——包括AI。

2. 明确标注AI参与

他在README中清楚地说明了哪些部分是AI写的。这种透明度是负责任使用AI的基础。

3. 选择合适的场景

个人学习项目、非关键功能、可以容忍错误的场景——这些都是AI编程的合理应用场景。

4. 保持批判性思维

即使使用了AI,Linus仍然保持着对代码质量的关注。他没有把AI当作万能工具,而是当作一个可以"省掉中间人"的效率工具。

✓写在最后

技术世界从来不缺少非黑即白的争论。AI编程也不例外——有人认为它将取代程序员,有人认为它只会产生垃圾代码。

Linus用自己的行动展示了一种更务实的态度:AI是工具,关键在于如何使用。

在关键基础设施中,我们需要对AI生成的代码保持警惕。但在学习、原型开发、非关键功能等场景中,AI可以是一个有价值的助手。

连Linux之父都开始用AI写代码了。问题不再是"要不要用",而是"怎么用"。

参考资料:

GitHub:github.com/torvalds/AudioNoise

Phoronix:Linus Torvalds Vibe Coding

Solidot:Linus Torvalds使用AI辅助编程

最新文章

随机文章