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

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

標簽:Linux(209063)安卓系統(20543)

  開發 Linux,只選對的

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

  如今,Linus 擁有一個實力超群內核維護小組,Linux 系統的協助模式是 Linus 負責總體的協調和溝通,他會對接十余名核心貢獻者,每個人都有自己負責的具體領域和項目內容,每次有新的開發任務時 Linus 會將它分配給對應的人;而這十余位核心貢獻者又有各自的熟知并信賴的高手小團隊。Linus 只需知道將任務交給他自己團隊中十余名成員哪個人即可。

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

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

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

  Linus 的商業化:廠商與基金會

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

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

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

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

  Linus 只想做技術,不想處理技術以外的事情。“如果你是一名工程師,很有可能你只想處理自己感興趣的技術問題,其他一切事情你都想移交給別人來處理?!?LinusTorvalds 說他很慶幸自己不需要擔心商業和管理的問題,他只要能領到工資不擔心養孩子上學的問題就很好。

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

  堅持了 25 年,但是已經不能掌握內核的全部了

  “在大家的眼中,我是那個創造了 Linux 并依然維護它的人。”

  “為什么我 25 年來依然在做同樣的事情?因為寫出優秀的代碼是件很困難的事情?!?/p>

  所以,能保持優秀的 Linux 內核開發團隊是非常難但是重要的事情。在問及現在是否還編寫 Linux 內核的代碼時,Linus Torvalds 坦言現在做的項目管理的工作,他有一小撮頂級開發者共同協作,當有新的任務時,他知道應該把任務分配給誰。比起代碼編寫這樣細節的問題,他需要更加關心的是 code flow 和 process,擔當起架構師的角色,關心代碼穩定和如何改進更高層次更抽象的工作內容。

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

  “如果你對某開源項目感興趣,那你可以去閱讀學習源代碼,但是要警惕成為專家的想法?!盠inux 內核那么大,沒有人了解全部、沒有人是專家,Linus 稱自己也不是面面俱到。

上一頁12345下一頁全文

本文導航