天天看點

Linux 誕生32年:“暴君”Linus 平和了

作者:漫威電影情報局

出品 | 51CTO技術棧(微信号:blog51cto)

整理丨諾亞

“C++是一門很爛的語言!”

“Linux社群現在是一個肮髒的泥潭。”

“我希望 AVX-512 趕緊‘去死’。”

以上這些都來自Linus Torvalds的“暴言”。衆所周知,暴躁的Linux之父向來敢噴,不過近來低調了許多。

在日前舉行的日本開源峰會上,Torvalds和他的好友暢聊了Linux的發展現狀。就在飛往東京之前,Torvalds釋出了Linux 6.7的第四個候選版本。如果不出意外,這意味着下一個Linux版本将在聖誕節前後推出。

這一次在公開場合露面,Torvalds變得相當平和,正如他所說“我不會再對某些企業指指點點了”。

一、沖突:為什麼找核心維護者這麼難

在會上,Torvalds再次提到了核心維護者工作強度過高的問題。

在今年舉行的歐洲開源峰會上,Linux 官宣了一則重要資訊:Linux 核心的長期支援(LTS)版本,維護期将從六年變回兩年。之是以做出這樣的決定,正是因為“維護者快累死了”,高強度工作下的疲憊和壓力與日俱增。

Linux核心維護者的人手不足問題由來已久,就像Torvalds所說,相較于維護者,吸引開發者要容易得多。

尋找維護者之是以難,根據Torvalds的介紹以及國外開發者的相關評論,可總結為以下幾點原因:

1、Linux 核心開發對大多數人來說是無聊的,很多年輕人對此不感興趣。

2、Linux 核心項目維護的學習門檻太高,缺乏曲線平滑的學習資料。

3、成為維護者需要長期堅守崗位,找不到替代者的情況下,假期都無法安排。

4、要成為維護者,需要有良好的技術“品味”。但“正确評判他人的代碼”這種能力往往需要慢慢積累。

5、維護者必須花很長時間才能獲得社群信任,不僅是其他維護者的信任,也是所有代碼貢獻者的信任。

6、不少人難以接受“大獨裁者”Torvalds與外界溝通的态度,簡言之,“我不想被Linus噴”。

Torvalds也坦言:“代碼編寫并不困難,畢竟是對是錯比較清晰。但人際關系處理起來就很費力。”

二、自洽:Linux是個能留得住人的社群

在Torvalds看來,雖然大家都想将項目做好,但是出于各自立場的不同,目标往往會出現差異,這種前進過程中的角力确實會帶來相當大的壓力。開源貢獻不僅僅是程式設計,溝通也是其工作的重要組成。“維護者就是負責翻譯各方訴求的人。”

Torvalds本人也在為此努力,他曾在給BBC的一封回信中寫到了自己的改變:“我會變成一個可愛的人嗎?這聽起來不太可能。我仍然關心技術,我不會為了讓人們喜歡我,而開始去接受糟糕的代碼。我仍然不太善解人意,但就像我之前說的,我在改變自己,在積極尋找專業的治療師幫助自己,我正試圖擺脫我的暴怒、并變得更有禮貌。”

回到維護者稀缺的現實,Linux核心社群的老齡化并不是個新鮮議題,近年來關于其後繼無人的讨論一直在持續。畢竟很多Linux核心維護者很快就要六十歲,甚至有一部分快七十歲了。

對此,Torvalds 依舊保持了其樂觀态度,固然“我們團隊中的很多成員都在老去”,但在三十多年的歲月裡,他們還願意跟他一起并肩作戰,正說明Linux是個能留得住人的社群。

三、新生:将Rust引入Linux核心是一場持久的遠征

Linux核心社群接班人的問題依然懸而未決,如何讓更多的人參與進來是個值得深思的問題。Torvalds提到:“我之是以喜歡在核心開發中使用 Rust,就是因為有一位維護者明顯比大部分同僚年輕得多。”

相較C++,Torvalds對于Rust的态度向來寬和。截至今年,Rust已經連續第八年在Stack Overflow的年度開發者調查中位居“最受歡迎的程式設計語言”榜首。其速度、安全性和性能都是其受到開發者推崇的原因。

至于将Rust引入Linux核心,Torvalds 表示,“應用比例一直在增長,但目前還沒有哪個部分真正依賴于 Rust。”不過他也提到,Rust是極具技術影響的重要成果,核心開發者們必須積極擁抱新事物。簡單來說,擁抱Rust不僅僅是采用一種工具,而更多地是擁抱創新、擁抱未來的心态。

盡管Rust還沒有真正證明自己有slay全場的實力,但Torvalds談到,從明年開始會着手将Rust引入驅動程式、甚至是某些主要子系統,總之“Rust确實有成為核心重要部分的趨勢”,但或許還需要時間。

将Rust引入Linux核心,無論是對于Rust還是Linux社群都有好處。

對Rust來說,雖然這幾年得到了微軟等大佬的力挺,而且安全性的美名也得到了廣泛認可,但缺乏強勢項目作為背書,始終難以形成更大範圍的影響力。而Linux核心正好可以充當這一角色。

對Linux核心社群來說,Rust的引入可能會吸引更年輕的維護者,再者引入不可能一蹴而就,需要耗時多年,從核心最外圍,從驅動部分開始接納Rust,也為其他使用者嘗試用Rust寫Linux核心子產品打下基石,進而為社群注入更多活水。

四、毒舌:沒必要擔心AI幻覺,畢竟人更擅長犯錯誤

今年以來,在技術圈,大模型是無法回避的關鍵詞。Github Copilot的問世對于軟體開發領域來說無疑是一次劇烈的沖擊。在各種各樣的副駕駛層出不窮後,人們關注的不僅是其對生産力的提升,更開始在意這種生産模式颠覆下一系列可能的連鎖反應。

不少程式員開始嘗試AI程式設計,在副駕駛的幫助下,即使在面對自己不熟悉的語言或者平台程式設計的時候,都會更有底氣,不會在一些低級錯誤上面浪費時間,也能減少在基礎問題上的自信受挫。當然關于AI生成代碼的可用性不高,資料安全存在隐患等等質疑也相伴左右。

當被問及“未來是否會有模大型編寫的代碼被送出上來?”時,Torvalds予以了肯定:甚至很可能已經開始了, 隻不過規模不大。

但是他對AI程式設計看得很淡然:此前一直有自動化技術幫助大家編碼,是以AI也沒什麼特别。而且Torvalds希望AI能在自動糾錯方面發揮更大作用。

對于糟糕代碼向來“零容忍”的Torvalds表示:“因為我看到的衆多bug都很直白,并不需要更高層次的推理能力。”AI如果能幫助人們找到這些一眼可見的愚蠢問題,無疑将很大程度上提升整體代碼的品質。

此外,對于向來被诟病又無從規避的AI幻覺問題,Torvalds更是難掩毒舌本色:“沒有AI,我依然每天都在看到人們創造的各種bug,是以我完全不擔心。我認為,在犯錯這方面,人類顯然更勝一籌。”

參考連結:

https://www.zdnet.com/article/linus-torvalds-on-state-of-linux-today-and-how-ai-figures-in-its-future/

https://new.qq.com/rain/a/20230926A01M3S00

https://www.zhihu.com/question/633907059

來源: 51CTO技術棧