写点什么

Linus Torvalds: 成功的项目源于 99% 的汗水与 1% 的创新

  • 2017-02-22
  • 本文字数:1330 字

    阅读完需:约 4 分钟

2017 年 2 月 15 日,在加利福尼亚州的开源领袖峰会上,由Linux 基金会执行董事Jim Zemlin 进行的一次采访中,Torvalds 讨论了他如何管理Linux 内核的开发以及他对工作的态度。

Linus Torvalds 认为,科技行业对创新的颂扬是一种自鸣得意,沾沾自喜,以自我为中心。

他更直白地表示:“行业所说的这么多的创新都是扯淡,”他说,“任何人都可以创新,不要把‘另类思考(think different)’当成什么了不起的事情,谈论那些都是毫无意义的。成功的 99% 就是把工作做好,也就是说要埋头苦干。”

Torvalds 说:“所有真正的工作并非说的如云如雨、不着边际的天花乱坠,而是在于细节。”

Torvalds 认为成功的项目都是 99%的汗水和 1%的创新。

作为开源Linux 内核的创造者和仁慈独裁者,更不用说Git 分布式版本控制系统的发明者,Torvalds 已用结果证明了他的观点。Linux 对技术行业带来的影响,怎么赞美都不过分。Linux 是主要的服务器操作系统之一。几乎所有高性能计算都跑在Linux。而大多数移动设备和嵌入式设备都依赖嵌入式Linux。

Linux 内核也许是 PC 时代最成功的协同技术项目。根据 Zemlin 显示,内核贡献者自 2005 年以来贡献总共超过 13,500 行代码,增加了约 10,000 行代码,删除 8000 行代码,并且每天修改 1,500~1,800 行代码。在过去的 25 年里,这种情况一直在发生,尽管不是以目前的速度。

“我们这样做,已经有 25 年了,我们所遇到的常见问题之一是,人们经常互相竞争。”Torvalds 说,“回首往昔,我们所做的是:组织代码、组织维护,所以痛点就是当人们不同意一段代码时,然后他基本上就消失不来了。”

该项目的结构使人们可以独立工作,Torvalds 解释道。“我们能够真正地模块化代码和开发模型,所以我们可以做很多并行。”

根据 Torvalds 的观点来看,技术发挥着明显的作用,但是过程至少同样也重要。

“这是一个社区项目,”Torvalds 说。“这是关于技术,能够让人们就问题达成一致的恰恰就是技术,因为通常有一个相当明显的正确和错误。”

但现在,Torvalds 不是就个人而言来回顾每一个变化,因为他 20 年前,他就依赖社区网络的贡献者。“这是由于社区网络和信任,”他说。 “……我们有一个非常强大的网络,这就是为什么我们可以做到每一个版本都有一千人参与。”

对信任的强调解释了参与内核开发的困难,因为人们不能登录、提交代码和消失。“当你提交了很多小补丁,直到维护者信任你,在那一刻你不仅仅是一个发布补丁的人,你也成为信任网络的一部分。”Torvalds 说。

十年前,Torvalds 说他告诉其他内核贡献者他想要一个为期八周的发布计划,而不是一个可能拖延多年的发布周期。于是内核开发人员就设法将其发布周期减少到大约两个半月。从那时起,继续开发没有太多的争议。

Torvalds 说:“我们的流程运行得很好,以至于近乎无聊。对我而言,所有真正压力的都跟过程相关,而不是跟代码相关。如果代码不工作的话,反而令人兴奋……但过程中如果出现问题了,那可是令人痛苦的问题。你从来没有,想过有关过程的问题……这就引起了人们互相怒怼对方。”


感谢王下邀月熊对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2017-02-22 18:003296
用户头像

发布了 376 篇内容, 共 205.0 次阅读, 收获喜欢 949 次。

关注

评论

发布
暂无评论
发现更多内容

技术实践 | 网易云信 QUIC 加速服务架构与实践

网易云信

架构 音视频

配置融云SDK的自签证书

融云 RongCloud

sdk

融云即时通讯SDK集成 -- 通知检查

融云 RongCloud

即时通讯

一卷河图赋太虚:HMS Core CG kit与移动游戏新可能

脑极体

融云即时通讯SDK集成 -- 定制UI(二) ——添加自定义表情库

融云 RongCloud

融云即时通讯SDK集成 -- 华为推送的点击跳转处理

融云 RongCloud

即时通讯

融云 IM SDK 集成 --- 刷新会话界面和会话列表界面

融云 RongCloud

IM

跳转到@消息的位置

融云 RongCloud

即时通讯

融云 IMkit 拦截或监听所有发送消息

融云 RongCloud

sdk

Android 端如何添加自定义表情

融云 RongCloud

IM

金三银四跳槽阿里必备:分布式/高并发/Redis,不看我真的怕你后悔

比伯

Java 编程 架构 面试 程序人生

融云IMKit 动态删除或添加plugin 的实现

融云 RongCloud

IM

关于融云聊天室KV 值的正确使用

融云 RongCloud

即时通讯

融云如何把图片消息的图片上传到自己的文件服务器

融云 RongCloud

sdk

融云即时通讯SDK集成 -- 定制UI(一) ——会话界面小改动

融云 RongCloud

即时通讯

markdown如何插入图片、音频、视频?

xiezhr

markdown markdown语法 音频

短网址服务设计整理

程序员架构进阶

架构 设计实践 28天写作 实操案例 3月日更

学习感悟

shun123456789

2万字系统总结,带你实现 Linux 命令自由?

比伯

Java 编程 架构 面试 程序人生

融云如何更换用户信息

融云 RongCloud

即时通讯

唠一唠融云 VIVO push 无法跳转的解决方案

融云 RongCloud

sdk

叫练手把手教你读JVM之GC信息

叫练

JVM JVM简介 JVM笔记

融云即时通讯SDK集成 -- 定制UI(三) ——兼容Android Q

融云 RongCloud

即时通讯

阿里大师口述:让你可以在简历上写精通SpringBoot

编程 架构 springboot

融云清空历史消息 Android 端

融云 RongCloud

sdk

在融云 IMkit 会话界面基础上添加消息已读未读

融云 RongCloud

IM

融云 ConversationListFragment 会话列表添加头部布局

融云 RongCloud

sdk

融云聊天室属性 kv

融云 RongCloud

IM

唠一唠融云的消息扩展功能

融云 RongCloud

sdk

京东数科面试真题:常见的 IO 模型有哪些?Java 中的 BIO、NIO、AIO 有啥区别?

Java 架构 面试

项目延期了,怎么办?

石云升

项目管理 28天写作 职场经验 管理经验 3月日更

Linus Torvalds: 成功的项目源于99%的汗水与1%的创新_Linux_刘志勇_InfoQ精选文章