@huanmu
2017-07-04T10:23:58.000000Z
字数 3843
阅读 354
Linus Torvalds: Linux之旅既有趣又幸运,我不敢奢望精通它的所有层面
2017年6月,Linux基金会首次在中国召开LinuxCon,有幸见到Linus Torvalds 本尊,从进入媒体视线、访谈交流到离开的三个多小时内,Linus Torvalds一直面带微笑。在我看来,这种微笑不是职业训练出来的,而是一个纯粹技术人发自内心的表达。这位名扬IT界二十余载的神级人物,想必早已过了恃才傲物、口沸目赤的阶段,内心充盈的更多是工作中获得的欣慰与肩负的责任。在他提到不想关心Linux技术以外的任何事情、一周不写代码就坐立不安的时候,我似乎看见了那个11岁学习BASIC并从此再也没有离开自己所爱的大男孩儿,拥有一颗不老心的Linus Torvalds依然葆有着他的技术好奇。
以下文字由InfoQ主要整理自LinuxCon大会上的媒体访谈及Linus Tourvalds、Dirk Hohndel的交流环节。
当初,Linux系统越做越好并受到关注,Linus Torvalds于2003年决定离开当时的公司、加入开源码发展实验室以专职投入到Linux内核的工作,后来Linux基金会正式成立。
Linus只想做技术,不想处理技术以外的事情。“如果你是一名工程师,很有可能你只想处理自己感兴趣的技术问题,其他一切事情你都想移交给别人来处理。”
这就是Linus Torvalds和基金会的分工,基金会负责接管许可证、专利、法务等问题,处理电话、邮件和文件准备等事务。LinusTorvalds说他很庆幸自己不需要担心商业和管理的问题,他只要能领到工资不担心养孩子上学的问题就很好。
Linux基金会执行总监Jim Zemlin称Linux操作系统标准价值103亿美元;Linux基金会拥有Linux、Kubernetes、Cloud Foundry、Xen等项目,以及CNCF基金会、Node基金会等,整体所写的代码价值标准为145亿美元;由此估算Linux的经济价值占据整体价值71%,不愧为开源项目鼻祖。
在问及现在是否还编写Linux内核的代码时,Linus Torvalds坦言现在做的项目管理的工作,他有一小撮顶级开发者共同协作,当有新的任务时,他知道应该把任务分配给谁。比起代码编写这样细节的问题,他需要更加关心的是code flow和process,担当起架构师的角色,关心代码稳定和如何改进更高层次更抽象的工作内容。Linus强调到内核维护小组实力超群,由数十位顶级技术人员组成。Linux内核每三个月(70天左右)发布1个版本,即便在不同国家出差,Linus也要克服时差按时发布。
VMware开源技术总监Dirk Hohndel问到,这样开发模式是否是可持续性的?Linus笑着回答如果当前团队中有程序员变老变胖不想继续做下去的话也没有问题,因为会有新的程序员补充进来。
Dirk又追问Linus道,在内核不断提升迭代的过程中,是不是你具有着绝对的决定权?Linus回答到“不是的”,他发自内心地鼓励大家按照自己的需求建立fork,如果最终这样的想法有良好的结果做证明,其精华部分就会被吸收到Linux内核项目中。Linus表示虽然大部分fork不是很优秀,但是有一小部分是好的。Dirk对此总结到,当今的分支发展再吸收代码的模式其实反映的就是Linus本人或其团队的决定性。
Linus曾在一次外媒访谈中表示,创建Git从来不在他的计划内,版本管理系统(和数据库)是他最不感兴趣的方向,甚至带着一种本能逃离式的讨厌。曾经的BitKeeper出现令他眼前一亮,本地可以留有一份源代码,很好地管理了分布式团队中“谁可以修改代码”的权限问题。2005年,开发 BitKeeper 的商业公司同 Linux 内核开源社区的合作关系结束,他们收回了 Linux 内核社区免费使用 BitKeeper 的权力。Linus不想倒退回到没有高效版本管理的时代;而除了BitKeeper之外,没有其他软件可以做到更好的远程协同;并且Linus还很在意代码的完整性和整个管理流程。为此,自己动手研发一个软件成为了当时唯一的解决方案。
基于BitKeeper的使用经验并结合了团队的诉求,Linus花费数周创造了Git的初始版本,该系统定位目标特色是:
• 速度
• 简单的设计
• 对非线性开发模式的强力支持(允许成千上万个并行开发的分支)
• 完全分布式
• 有能力高效管理类似 Linux
内核一样的超大规模项目(速度和数据量)
十二年来,Git围绕当初设定的目标不断迭代,并且深受喜爱。
然而,在Git被创造出来之后的前三四年,Linus称业界对它并不是很认可,因为这种版本管理方式与大家已经习惯的SVN方式相差很大,当时普遍反响是Git太难用了。但是慢慢地,圈内的声音发生了变化,Linus认为大家应该开始接受并适应了Git。
而几乎每个开发者都会使用的GitHub则使用Git为核心技术,于2007年问世。一个有趣的故事是,Linus本人欣赏但不使用GitHub,并认为GitHub还有可以提高改善的地方。在一次linux.com的采访中,Linus曾经表示GitHub平台不适合内核开发,功能设计依然比较局限。
Linus告诉记者们,“我女儿的同学们在听说她的父亲是Git的创作者之后非常兴奋,这种兴奋程度要比说有个Linux创作者的父亲更高。”Linus总结到,对于现在的CS学生们,Git似乎是个更棒更有趣的产品;这或许代表着年轻一代更熟悉更欣赏Git。
Linus对Git“更走红”的现象表示惊讶,一方面是因为Git最初只是为Linux内核开发者们而建;另一方面Git只花费了十天(相比常年深耕Linux系统)。
Linus表示自己曾经接触过硬件,但是这很危险,他称自己对硬件“破坏力很强”。换而言之,Linus很自知地没有选择在硬件的道路上继续走下去。
不过,他对现在的Raspberry Pi、FPGA电路板很感兴趣,如果重来一次又不可以选择编写Linux的话,他会考虑基于硬件开发版的编程。
Linus深耕Linux代码二十五年如一日,InfoQ问到Linus,是否只要坚持到最后大概率而言都会收获一些成果?Linus表示他非常想告诉大家“坚持就是胜利”,但是很遗憾的是事实并非如此。
最重要的是找到自己感兴趣的事情去做,这二十五年来做Linux系统,总会有不断新的挑战出现,所以Linus称这些年非常有趣并不是充满重复的工作。
那么为什么Linus可以做这么久?最靠谱的答案也许就是Linus所说的他自己深深喜欢代码,除了代码之外的事情,他都不希望考虑或参与,比如许可证专利,与外界公众的沟通,或者怎么保持盈利以养家糊口;很多技术人都是这样的,他们希望可以心无旁骛地做技术工作,不希望被无关的琐事打扰。
除了尽可能地缩小和聚焦自己的工作范围,兴趣还可以让人更主动地工作。Linus说他也会度假很喜欢潜水,但是一旦在外面“浪”过一周,他就“心痒痒”地想回去编程。
Linus非常强调自我驱动,他强调一定要知道自己内心想做什么,什么是真正让你感兴趣的事情。比如,如果你对某开源项目感兴趣,那你可以去阅读学习源代码,但是要警惕成为专家的想法:Linux内核那么大,没有人了解全部、没有人是专家,Linus称自己也不是面面俱到。
“Linux系统和您个人所取得的成功是一种偶然还是必然?”
Linus Torvalds回答说,这份成功的背后既有必然性也有偶然性。其中偶然性,是在于时机刚刚好。如果Linux出现再早几年就可能赶不上互联网的发展,没有了网络传播、社区协作也就很难取得成果。如果再晚几年,可能成功的就是另外的操作系统。也就是说,必然性在于大家对开源操作系统的需求。而Jim Zemlin则表示“Do the right thing”,并且成功需要有良好的模式。
媒体专访结束后,Linus Torvalds立刻被媒体们团团围住,他依然保持微笑地与大家交流。在征求Linus签名时,他有些不好意思地说“我的签名很丑”并在名字下面附上了“the ugliest signature ever”。我顺势询问是否有一句话可以送给开发者们时,他迟疑之后说自己不敢给出这样庄重的建议;但是他表示他认为做自己喜欢并对其他人也有帮助的事情很重要。
随后,中国开源软件推进联盟主席陆首群走进采访室,和Linus见面拥抱聊天。陆先生从20世纪九十年代就开始推动包括Linux基金会在内的开源软件组织在中国的发展。
二十年之后的开源世界是怎样的?
Jim Zemlin称他认为会有更多的中国开发者成为开源界的领军人物、核心贡献者,过去一年Linux基金会旗下成员数量有了400%的增长;现在的LinuxCon是将硅谷的人请到中国来演讲,那么二十年之后应该希望可以邀请中国技术人去美国分享。不过,Dirk表示英文很重要,他建议大家一定要勇于用英文表达自己。
参考文章
https://www.linux.com/blog/10-years-git-interview-git-creator-linus-torvalds
http://mp.weixin.qq.com/s/W9xly9GZiR6er_ttvC0y6Q