Linux之父的傳奇 - Linux之父 活著的傳奇人生

2017年12月12日 12:02 來源: 作者: 我要評論(0)

標(biāo)簽:Linux(209063)安卓系統(tǒng)(20543)

  開發(fā) Linux,只選對的

  最初 0.01 版本只有 10000 行代碼,內(nèi)核編程的前六個月都是 Linus 一人完成,但是 1992 年起 Linus 開始采納其他開發(fā)人員的補丁。

  如今,Linus 擁有一個實力超群內(nèi)核維護(hù)小組,Linux 系統(tǒng)的協(xié)助模式是 Linus 負(fù)責(zé)總體的協(xié)調(diào)和溝通,他會對接十余名核心貢獻(xiàn)者,每個人都有自己負(fù)責(zé)的具體領(lǐng)域和項目內(nèi)容,每次有新的開發(fā)任務(wù)時 Linus 會將它分配給對應(yīng)的人;而這十余位核心貢獻(xiàn)者又有各自的熟知并信賴的高手小團(tuán)隊。Linus 只需知道將任務(wù)交給他自己團(tuán)隊中十余名成員哪個人即可。

  這樣多層次小團(tuán)體的工作模式,現(xiàn)在看起來更像是目前備受推崇的微服務(wù)開發(fā)組織架構(gòu);不過 Linus 這樣做的并不是因為領(lǐng)悟了康威定律的 two-pizza 團(tuán)隊原則,Linus 認(rèn)為他能信任并依賴的程序員也就 10 個左右。“你可能有很龐大的社交網(wǎng)絡(luò),比如在 LinkedIn 上你可能有 5000 個好友;但是其中有多少人是你信任的?”在 Linus 看來,工作上的關(guān)系和生活中的朋友類似,Linux 的開發(fā)模式要保證真正熟知并且雙向協(xié)作起來都很愉快。

  VMware 開源技術(shù)總監(jiān) Dirk Hohndel 曾經(jīng)問 Linus,這樣開發(fā)模式是否是可持續(xù)性的?Linus 笑著回答如果當(dāng)前團(tuán)隊中有程序員變老變胖不想繼續(xù)做下去的話也沒有問題,因為會有新的程序員補充進(jìn)來。Dirk 又追問 Linus 道,在內(nèi)核不斷提升迭代的過程中,是不是你具有著絕對的決定權(quán)?Linus 回答到“不是的”,他發(fā)自內(nèi)心地鼓勵大家按照自己的需求建立 fork,如果最終這樣的想法有良好的結(jié)果做證明,其精華部分就會被吸收到 Linux 內(nèi)核項目中。Dirk 對此總結(jié),當(dāng)今的分支發(fā)展再吸收代碼的模式其實反映的就是 Linus 本人或其團(tuán)隊的決定性。

  Linus 認(rèn)為雖然大部分 linux 內(nèi)核代碼的 fork 版本不是很優(yōu)秀,但是有一小部分是好的。作為一個熱愛編程的神級人物,加上自稱不善交流有自閉傾向,Linus 身上定不會缺少程序員們常有的代碼傲骨;工作起來的 Linus 想必是極為嚴(yán)苛的,能贏他由衷贊嘆的代碼當(dāng)屬少數(shù)。

  Linus 的商業(yè)化:廠商與基金會

  大約在 1992 年 Linux 0.12 版本的時候,Linus 收到朋友轉(zhuǎn)發(fā)有廠商在售賣 Linux 的消息。Linus 稱當(dāng)時自己的第一反應(yīng)就是:什么?他們竟然在賣這個東西?朋友問道“這個真的是你所期望發(fā)生的嗎?”Linus 知道朋友希望他說“不”,希望得到類似于免費開源夢等答案;但是他很誠實說“呃,是吧。但是,我不知道接下來會怎樣”。

  Linus 在乎的不是價格,他在乎的 Linux 可以成為像 Unix 一樣的知名操作系統(tǒng)。在他看來商業(yè)化和推廣是很有必要的,很多開源項目本應(yīng)該更加壯大的,遺憾的是它們太過純粹了。其實 Linus 也會擔(dān)心商業(yè)公司不正當(dāng)?shù)乩瞄_源成果,開始接觸廠商的時候,Linus 坦言他很緊張;但是很快接觸后發(fā)現(xiàn)對方很可愛,商業(yè)化意味著很多繁瑣的事情,拋開商業(yè)策略、宣傳推廣等,單單是 QA 工作就讓程序員們皺起眉頭了,正式商業(yè)公司完成了所有 Linus 沒有興趣做的事情。

  一切都分工明確,內(nèi)核開發(fā)工作完全交由 Linus 主導(dǎo),任何一丁點的商務(wù)他都不會過問。他說可能商業(yè)化中會有很多問題,但是 Linus 完全放手。不過,Linus 指出開源項目的核心維護(hù)者需要做到的是“free and pure”。

  Linus Torvalds 于 2003 年決定離開當(dāng)時的公司、加入開源碼發(fā)展實驗室以專職投入到 Linux 內(nèi)核的工作,后來 Linux 基金會正式成立。正如所愿,這就是 Linus Torvalds 和基金會的分工,基金會負(fù)責(zé)接管許可證、專利、法務(wù)等問題,處理電話、郵件和文件準(zhǔn)備等工作,事無巨細(xì)。

  Linus 只想做技術(shù),不想處理技術(shù)以外的事情。“如果你是一名工程師,很有可能你只想處理自己感興趣的技術(shù)問題,其他一切事情你都想移交給別人來處理。” LinusTorvalds 說他很慶幸自己不需要擔(dān)心商業(yè)和管理的問題,他只要能領(lǐng)到工資不擔(dān)心養(yǎng)孩子上學(xué)的問題就很好。

  Linux 基金會執(zhí)行總監(jiān) Jim Zemlin 稱這是正確的模式: Linux 操作系統(tǒng)標(biāo)準(zhǔn)價值 103 億美元;Linux 基金會擁有 Linux、Kubernetes、Cloud Foundry、Xen 等項目,以及 CNCF 基金會、Node 基金會等,整體所寫的代碼價值標(biāo)準(zhǔn)為 145 億美元;由此估算 Linux 的經(jīng)濟(jì)價值占據(jù)整體價值 71%,不愧為開源項目鼻祖。

  堅持了 25 年,但是已經(jīng)不能掌握內(nèi)核的全部了

  “在大家的眼中,我是那個創(chuàng)造了 Linux 并依然維護(hù)它的人。”

  “為什么我 25 年來依然在做同樣的事情?因為寫出優(yōu)秀的代碼是件很困難的事情。”

  所以,能保持優(yōu)秀的 Linux 內(nèi)核開發(fā)團(tuán)隊是非常難但是重要的事情。在問及現(xiàn)在是否還編寫 Linux 內(nèi)核的代碼時,Linus Torvalds 坦言現(xiàn)在做的項目管理的工作,他有一小撮頂級開發(fā)者共同協(xié)作,當(dāng)有新的任務(wù)時,他知道應(yīng)該把任務(wù)分配給誰。比起代碼編寫這樣細(xì)節(jié)的問題,他需要更加關(guān)心的是 code flow 和 process,擔(dān)當(dāng)起架構(gòu)師的角色,關(guān)心代碼穩(wěn)定和如何改進(jìn)更高層次更抽象的工作內(nèi)容。

  除了總體的溝通協(xié)調(diào)工作,Linus 本人還負(fù)責(zé) merge 代碼,Linux 內(nèi)核每三個月(70 天左右)發(fā)布 1 個版本,即便在不同國家出差,Linus 也要克服時差按時發(fā)布。

  “如果你對某開源項目感興趣,那你可以去閱讀學(xué)習(xí)源代碼,但是要警惕成為專家的想法。”Linux 內(nèi)核那么大,沒有人了解全部、沒有人是專家,Linus 稱自己也不是面面俱到。

上一頁12345下一頁全文

本文導(dǎo)航