写点什么

Linus Torvalds:我们都老了,但 Linux 维护后继无人

  • 2020-07-01
  • 本文字数:2585 字

    阅读完需:约 8 分钟

Linus Torvalds:我们都老了,但Linux维护后继无人

Linux 之父非常担忧没人继续维护内核:“真的很难找到维护者!”


在本周召开的线上开源峰会与嵌入式 Linux 大会上,Linux 缔造者 Linus Torvalds 谈到了为开源操作系统寻找未来维护者时的种种挑战。Torvalds 近年来已经不再发表主题演讲,但这一次他与 VMware 公司首席开源官 Dirk Hohndel 展开了远程对话。


这次讨论很快就涉及到了一个令人不安的问题:在目前这一代维护者逐渐老去之后,Linux 项目将走向何处?面对 Torvalds 等这批五零后、六零后项目管理者,Hohndel 提到:“我们这个社区终归要考虑代际变更的问题。到那时,我们该怎么办?”



VMware 公司的 Dirk Hohndel(图左)在本届线上开源峰会中与 Linus Torvalds 进行了对话。


Torvalds 的回应是,Linux 内核社区的参与者们年纪不算太大。他表示,“很多新人都在 50 岁以下,他们才是目前开发工作的主力。当然,跟那些 30 岁上下的人们相比,我们确实是越来越老了。好在我们这些长期参与项目的早期成员还能做做维护与管理工作。”


维护者在社区内建立信任需要花费不少时间,Torvalds 指出,“这种信任不仅来自其他维护者,同时也来自所有代码贡献者……这肯定需要时间。”Torvalds 强调,“事实证明,维护者真的不好找。只要开始接管内核维护工作,就得一直坚持下去。每天都不能放松。我们得阅读电子邮件、做出回复,总之得一直待在那儿。而且维护工作属于那种要求不低但却需求面不大的小众岗位。”


“我们的维护者确实不够。能编写代码的人很多,能处理一部分维护工作的也不少,但很难找到那种可以吸纳他人代码贡献并立足上游将一切整合起来的人才。这也是我们目前面临的一大主要问题。”


另外,Linux 内核大部分是由 C 语言编写的。为此,Hohndel 问道:“C 语言是否会被 GO 及 Rust 语言取代,我们这些用 C 的人有没有可能在二十年后变得像现在的 COBOL 程序员一样?”Torvalds 的回应是,“C 语言目前仍是全球十大人气语言之一。但对语言的具体选择并不会对内核造成太大的影响。与驱动程序因此,内核团队正在研究多种语言接口,相信不久之后就能实现。总而言之,我们必将使用不同的模型编写 Linux 代码,而 C 绝对不会是其中唯一的模型选项。”

顶尖 Linux 开发者们已至暮年

上一代顶级程序员们确实在逐渐老去,Linus Torvalds 本人今年也超过了 50 岁。


Linux 社区需要新鲜血液,这也是事实。根据 Linux 基金会营销与开发人员计划副总裁 Amanda McPherson 所言,“目前 Linux 项目的参与者数量已经达到历史最高点。而且自 2005 年以来,已经有超过 8000 人为 Linux 内核做出贡献。”但从参与者数字来看,老一辈 Linux 程序员仍然是项目的主力。


软件开发分析公司 Bitergia 创始者之一 Jesús M González-Barahona 就发现,在以“参与项目的时间”作为“年龄”指标对 Linux 内核开发者进行统计时,可以看到新生代程序员的占比一直在逐年下降。目前占比最高的参与者们,一般是十多年前就加入了 Linux 社区,之后几代的比例则呈现出下降趋势。


Linux 社区当然早就意识到了这个问题。


2010 年,资深 Linux 开发者兼 Linux Driver 项目负责人 Greg Kroah-Harman 就在 Linux 基金会协作峰会的内核小组讨论上指出,“项目高层的更迭一直没能成功完成。”


Parallels 公司服务器虚拟化 CTO James Bottomley 也表示,“老一辈贡献者仍是项目主力。Linux 内核开发工作一直无法接棒,几年之后不知道还能剩下多少早期成员。”


谷歌软件工程师兼高级 Linux 内核开发者 Andrew Morton 则总结道,“没错,我们正在变老,精力也越来越差。从现在来看,年轻一代也不像当初的贡献者们那样对内核开发充满热情。”


从多年前开始,Linux 基金会就一直试图解决问题。作为思路之一,Linux 基金会正努力吸引更多业余程序员加入进来。McPherson 补充道,“虽然 Linux 项目的参与者数量创下历史新高,但我们一直在努力吸引更多新的人才。而且大家基本达成了共识,人才匮乏已经成为 Linux 实现进一步增长的最大障碍。我们希望通过 LinuxCon 在新生代程序员中建立影响力,但目前看来这张网撒得太大,导致很多人搞不清 LinuxCon 到底是以开发者为中心、还是以系统管理员/架构师为中心。”

“怼天怼地怼空气”的 Linus

尽管 Linus Torvalds 有着无可置疑的天赋,但他对待社区参与者的方式使他成为一个极具争议性的人物。


对他行为的相关抱怨可以追溯到多年前。 2013 年,Intel 公司的内核开发人员 Sarah Sharp 称 Torvalds 的行为是不专业的,称 Torvalds“主张进行人身恐吓和暴力行为。”Torvalds 随后指责 Sharp 把自己描述成受害者博取同情,不接受任何劝他应该改变的建议。


在 2015 年发表演讲说到英伟达时,Torvalds 还曾转向一台摄像机说“so Nvidia fuck you”并竖起了中指。


2015 年底,Sarah Sharp 宣布退出(Closing a door)内核社区。Sarah Sharp 当时说道,过去一年多时间她已经逐步终止了手中的各项社区工作,转交了 USB 3.0 主控制器驱动的维护工作,不再担任开源会议的内核协调员。她不再递交任何补丁和 bug 报告,不再向内核邮件列表写任何的建议。她声称,Linux 内核社区的互动是一种“潜在有毒的背景辐射”,充满了性别歧视、语言暴力和不尊重人。


Torvalds 最终也意识到他的言行会伤害到社区发展。2018 年,他决定休假并反思自己的行为,在 4.19-rc4 版本发布公告中他写道:“我将抽出时间休息并寻求一些帮助,了解如何理解他人的情绪并做出适当的反应…我不是一个能对他人的感受感同身受的人,很多人对此也并不惊讶。 多年来,我误解了很多人,而我自己并没有意识到我对某些情况的判断有多么糟糕,这样造成了一种不专业的环境,这样不太好。”

写在最后

去年 8 月 7 日,首个专注于报道 Linux 内核及其发行版的杂志 Linux Journal 宣布停刊。杂志主编在官网公告上表示,因资金断裂,永久关停,并解雇了所有员工。很多人选择 Linux,是因为 Linux 开源免费。免费使用,但是又不愿意花钱或参与贡献。当时有人评论说:“今天死的是一个 Linux 杂志,明天就可能就是 Linux Mint 或者 LibreOffice。”


如今,Linux 作为最流行的操作系统,在超过 20 亿的设备上运行,已经成为人类技术发展中的不可或缺的一部分。我们难以想象无人维护的后果会是什么样。


参考链接:


https://www.zdnet.com/article/graying-linux-developers-look-for-new-blood/


https://www.theregister.com/2020/06/30/hard_to_find_linux_maintainers_says_torvalds/


2020-07-01 15:2120168

评论 3 条评论

发布
用户头像
孩子是独立人, 而不是克隆人, 新生才能抛却历史包袱更好地成长. 就像 Linux 诞生于 Unix, Linux 又会诞生出什么呢 ?
2021-03-31 09:17
回复
用户头像
人类科技进度的最大障碍就是知识的传承,每个新的人类个体都要重头开始学习。何时能像软件开发中的面向对象的方式继承以下的学习,人类科技才可能飞速进步。
2021-03-26 08:22
回复
归根到底 还是因为人类不是永生的 如果以后生物科技进步了 才有可能出现科技再一次高速发展 但是现在到永生科技这一段路 恐怕到人类灭绝都不可能出现
2022-02-25 01:15
回复
没有更多了
发现更多内容

为什么正在使用的Java版本跟环境变量的版本不一致

阡陌r

Java 踩坑

神经网络的激活函数为什么要使用非线性函数

王坤祥

神经网络 激活函数

从数据闭环谈微服务拆分

松花皮蛋me

微服务

HashMap 的 7 种遍历方式与性能分析

Bruce Duan

Java 性能 hashmap 遍历

关于5G RCS的产品猜想

机器鸟

浅析 Cocoapods-Packager 实现

Edmond

ruby ios CocoaPods binary packager

韦小宝真的幸福吗 | Random Forest

张利东

Python 学习

使用 jsDelivr 免费加速 GitHub Pages 博客的静态资源

mzlogin

CDN Jekyll GitHub Pages 个人博客

说出来就不灵啦

伯薇

糊涂 活在当下 享受状态 生活状态 观察者

Netty 源码解析(四): Netty 的 ChannelPipeline

猿灯塔

把成功过成自己的生活

子铭

成功学 生活状态

怎样算是一个好的开发者?

水滴

开发者

MySQL中order by语句的实现原理以及优化手段

天堂

Java MySQL 性能优化

DDD 实践手册(2. 实现分层架构)

Joshua

设计模式 领域驱动设计 DDD 系统架构 分层架构

Day 47|Week 07-5 曾国藩家书|问学篇-学问何处何时都可做

熊小北同学

如何优雅滴在手机上跑Python代码

王坤祥

Python 移动应用 手机编程

阿里巴巴Java开发手册泰山版解读

Bruce Duan

高仿瑞幸小程序 00 准备工作

曾伟@喵先森

小程序 微信小程序 大前端 瑞幸

多云的一点思考

HU

InfoQ写作平台首秀,来个自我介绍

nuhcoad

个人感想

经济大萧条对我的启示

Neco.W

创业 自我管理 职场 自我提升

消息队列Kafka - acks参数

Java收录阁

kafka

MySQL的死锁系列- 锁的类型以及加锁原理

程序员历小冰

MySQL

死磕Java并发编程(7):读写锁 ReentrantReadWriteLock 源码解析

Seven七哥

Java并发 读写锁 ReentrantReadWriteLock

即将步入职场,忐忑而又期待的新人菜鸟

菜农阿飞

成长 新人

KubeFATE: 用云原生技术赋能联邦学习(一)

亨利笔记

人工智能 学习 FATE KUBEFATE

南丁格尔科普

小匚

学习来应对创业的未知

Neco.W

创业 重新理解创业

游戏夜读 | 2020周记(3.27-4.3)

game1night

Java并发编程系列——锁

孙苏勇

Java Java并发 并发编程 多线程

程序员陪娃漫画系列——魔方

孙苏勇

程序员 生活 陪伴 漫画

Linus Torvalds:我们都老了,但Linux维护后继无人_语言 & 开发_核子可乐_InfoQ精选文章