24個月暴漲180萬名開發者,Rust 迎來高光時刻

24個月暴漲180萬名開發者,Rust 迎來高光時刻

【CSDN 編者按】在過去的24個月中,發展迅猛,開發者的數量從60萬漲到了220萬。過去C/C++、Java等是大廠的常用語言,現在Rust也逐漸嶄露頭角,谷歌、亞馬遜等公司都開始採用Rust 了。隨著開發人員暴漲,社群貢獻的志願者越來越多,未來的Rust會朝著最流行的行列靠攏嗎?

原文連結:https://thestack。technology/rust-language-explosive-growth-challenges-rust-governance/

譯者 | 章雨銘 責編 | 屠敏

出品 | CSDN(ID:CSDNnews)

程式語言界,Rust正在迎來自己的高光時刻。

根據SlashData2021年開發者報告的資料顯示,使用Rust程式設計的開發人員在過去24個月內增長了兩倍,達到220萬。在行業內,Rust語言也得到了很多領先的CISO(首席資訊保安官)的支援,企業對其的接受程度也在不斷地提高,比如Canonical、Chef、Cloudflare、Deliveroo等公司都在使用Rust。(列舉的只是小部分公司)

24個月暴漲180萬名開發者,Rust 迎來高光時刻

C和C++分別誕生於1972年和1983年,作為許多現代軟體的構建模組,它們無處不在。但是用C和C++構建也還是容易出現關於記憶體安全的問題,從而導致下游的嚴重安全漏洞。相比之下,Rust這種語言會更安全地處理記憶體管理和其他對安全性要求高的任務。(在Rust中,編譯器扮演著守門員的角色,它能夠拒絕編譯一些有錯誤的程式碼,包括併發性錯誤。)

當然,對於一些為了美觀編寫整齊的程式碼的碼農來說,這並不值得太過於擔憂。谷歌的Project Zero安全研究團隊上個月的分析中發現,在2021年發現的58個被利用的零日漏洞中,有67%是記憶體損壞漏洞。記憶體安全問題往往會造成網路安全問題。在這方面很容易就能找到很多例子。比如,微軟所有的CVE中,大約有70%是記憶體安全問題。以及三分之二的Linux核心洩露也是來自安全問題。

粗略的說,用Rust構建不容易出現這些問題,而且Rust開發者們已經形成了一個非常強大的開發者社群,他們關心效能、記憶體安全等問題。

24個月暴漲180萬名開發者,Rust 迎來高光時刻

多而雜的事情需要基金會處理

誕生於2006年的Rust,是Graydon Hoare在Mozilla的副業專案。作為一個開源專案,其維護者主要以志願者身份自主工作。自2015年Rust 1。0推出以來,該專案一直自主運作——該版本有53個貢獻者,主要由Brian Anderson和Patrick Walton與Hoare一起構建。

直到2020年,隨著Rust基金會的成立,結束了Rust沒有一個獨立組織管理的局面。而由於贊助商Mozilla基金會進行了全面裁員最終才促使了Rust基金會的成立,這種情況引起了社群中很多人對Rust未來的擔憂,社群所面臨的挑戰也逐漸凸顯出來。(Rust總共有6621名個人貢獻者,平均有300人對最近的版本做出貢獻。)

24個月暴漲180萬名開發者,Rust 迎來高光時刻

(Rust基金會)

Rust基金會本身的規模並不大,是一個由四個人組成的非營利組織,由Rebecca Rumbul博士領導。

Rebecca Rumbul博士是一位經驗豐富的非政府組織的董事,還曾是廣告標準局的理事會成員、Hansard協會的受託人以及隱私集體的英國代表索賠人。2021年11月,Rebecca Rumbul成為Rust基金會的CEO,她將工作描述為“建立一個團隊,坦率地說,我可以做所有‘無聊’的事:處理所有關於法律、會計、財務、商標和許可證的事情、那些人們不願意在休息時間做的事情以及提供儘可能多的基礎裝置和支援、以便減少維護者社群對專案管理產生過多的擔憂。”

在今年早些時候的一篇部落格中,她詳細地介紹了最近的工作,從確保Rust在美國之外的商標使用,到建立、管理和組織由Rust基金會贊助的社群支援專案的法律、財務和行政工作等。

她在那篇部落格中指出,“在關於法律、安全和合規的問題上,我們仍然需要做大量的工作。”

並在與The Stack的談話中補充道:“Rust是從Mozilla中分離出來的,而且Mozilla並沒有真正計劃長期管理它。因此,很多基本的事也需要我們來完成,比如商標或者一些非常罕見的法律問題。我們為專案的開發提供基礎設施,所以我們需要負責遵守專案落地的地方法律。我們試圖加強在基金會內部以及與專案社群合作的程式,這其中甚至包含了一些很小的事情需要處理,比如確保有人退出某個工作組時有一個既定的流程、確保有合適的基礎設施支援、確保能夠及時發現空缺,如果有人在休假,能夠安排合適的人代替、管理雲計算計劃等等。還有一些在管理複雜關係之上的問題。例如,4月的Rust基金會會議記錄中顯示,收到來自其他Sliver(贊助)成員公司的反饋,認為Rust社群的某些貢獻者正在代表其僱主,即基金會董事會的大公司,影響Rust的發展。”

一個贊助商甚至認為,成員公司很難影響Rust的發展。與此同時,不斷壯大的Rust維護者隊伍在繼續推動Rust發展——例如,語言、庫和編譯器團隊最近都發布了其計劃表,Rust語言團隊的目標時間是2024年、編譯器團隊是2022年,而庫團隊沒有指定具體的時間。(不過如果深入瞭解了庫團隊的計劃表,就能感受到其中的複雜挑戰)

和許多開源專案一樣,許多關鍵貢獻者都是志願者,儘管Rust基金會擁有谷歌、華為、Meta、微軟和Mozilla等 “白金 ”贊助商,這些大公司似乎還沒有撥出大筆資金來支援維護者。不過,2022年啟動的Rust基金會社群自主專案預算為62。5萬美金,並且會提供四種類型的資助。如下:

Rust基金會獎學金:價值1,000美元/月的一年期獎學金(共20個)。;

專案資助:單項獎,用於支援1,000美元到20,000美元的獨立作品;

活動支援補助金:單項獎,金額從100美元到500美元不等,支援活動開展;

困難獎補助金:單項獎,金額從500美元到1500美元不等。

Rust的未來

隨著企業對Rust的興趣不斷增長,Rust的企業贊助商和基金會如何更好地支援Rust發展呢?對此,Rust庫團隊負責人Mara Bos在與The Stack的談話中給出了回答。

資助開源,公司不能只顧自身利益

“Rust的發展依靠的是很多志願者做他們喜歡的工作,以及做他們認為對專案最有利的事。公司應該盡力地支援這一點,而不只是關注自己對Rust的近期目標。有很多公司會為了實現他們特定的新功能而贊助很多錢,但是很少有公司會在沒有具體任務的情況下提供贊助。這意味著很多工作,如組織、審查、探索、一般維護、重構和清理、文件、貢獻者指南等等,大部分仍然是無償/無贊助的。”

24個月暴漲180萬名開發者,Rust 迎來高光時刻

(Rust庫團隊負責人Mara Bos)

Mara Bos提到Go維護者Filippo Valsorda最近的一篇文章中的話:“要成功資助一個開源專案,公司需要資助的是維護者,並且金額要與他們作為高階工程師收入相當。”另外,Mara Bos補充道:“這類工作對專案來說非常重要,可以說比建立新功能更加重要。因為這類工作讓人焦頭爛額,做著一些保持專案健康發展所必須的基礎性工作。對我來說,無附帶條件的贊助才能讓我最大限度地做對專案有利的事。”

關於企業贊助商試圖為自己的利益而影響Rust語言的發展方向的問題,Mara Bos表示:“這不是我現在關心的事情。每一個Rust的貢獻者都有自己的目標,所以這個專案才一直在處理許多潛在的衝突目標。如果參與決策的每個人都為同一家公司工作,而這家公司一開始為專案進行了管理和規劃,那麼這個專案就好像是公司的一部分,而不是他們只是在為之做出貢獻的獨立專案,那就會成為一個問題。Rust領導層的每一個人都對專案的獨立性非常關心,如果僱主試圖強迫他們做一些不符合Rust專案最佳利益的事情,他們就會進行反抗。如果一個人的下一次獎金或晉升和Rust專案是否接受他們的新功能掛鉤時,他可能會感到更多的壓力,這可能會導致做出決定的團隊面臨更大的壓力。順便說一下,Rust是透過共識而不是多數票來做決定的。”

“即使團隊中大多數人都同意也不足以讓決策實施。需要決策團隊中的任何成員都不能對一項永久性的改變有任何反對意見,這樣決策才能被接受。因此,要影響那些對專案最有利的決定並不是件容易的事。”Mara Bos在電子郵件中補充說。

除了在基金會工作,其他人也在其他領域努力。例如,由由Ernest Kissiedu和Beni Issembert領導的DevX計劃(最初由Concordium提供支援),旨在“彌補從(F)OSS工具中受益的企業與構建和維護這些工具的服務不足的社群之間的差距”,他們不僅共同創立了Rust Cryptography興趣小組,而且支援Rust形式驗證興趣小組,並贊助Rust專案的五名維護者七個月。

24個月暴漲180萬名開發者,Rust 迎來高光時刻

(Josh Triplett,Rust 語言團隊的聯合負責人)

Rust語言團隊的聯合領導Josh Triplett(也是DevX贊助的顧問)很高興看到這裡有各種各樣的努力。他說道:“贊助必須透過任何特定的組織或實體,這是沒有道理的。”“許多公司在贊助Rust開發者方面已經領先了很長時間,比如Embark工作室、Ockam、Discord等等。DevX正試圖協調多家公司的關係,使其聯合起來,以便能夠做更大規模的贊助。Rust基金會開始了他們自己的贊助工作,這非常重要。”

面對暴漲的開發者,Rust的發展路線需要更加謹慎

Triplett補充說:“我們正在讓Rust變得更加實用、把以前只在內部使用的工具帶到更廣泛的社群,以及推動Rust社群的擴充套件與合作。我們一直在思考,如果Rust要擴充套件到不止是兩倍的使用者,而是一百倍,他們都有自己的用例、目標和背景,那麼Rust需要發展成什麼樣子。我認為2024年的路線圖應該從這個方向開始。Rust走的是一條非常謹慎的路線,我們希望聽到人們能夠說他們能夠感受到Rust的支援,因為它很穩定,而且讓人相信其不會崩潰。”

在關於是否希望看到社群能夠有更多的成就上,Triplett表示:”在實踐和統一之間有一個連續的迴圈:我們嘗試解決一類問題的方法,隨著時間的推移,我們圍繞共同的解決方案進行統一,作為未來工作的基礎。”

“現在,我期待步調一致。例如,在標準庫中標準化非同步特徵的工作讓我感到很興奮,因為人們可以編寫非同步程式碼,而不必擔心他們應該使用哪個框架。我最期待的下一輪實驗是基於能力的系統,比如I/O安全工作、Rustix庫、WASI及其模組連結······”

不斷出現的許可證問題

與此同時,在Rust基金會,關於許可證的問題一直不斷出現。“Rust主要是在MIT許可證和Apache許可證(2。0版)的條款下發布的,還有一部分是在各種類似BSD的許可證下發布的。”

Mara Bos說:“大部分的貢獻者都認為這算不上挑戰。Rust(以及幾乎整個Rust生態系統)使用的是非常寬鬆的許可證……開源和資本主義不相容的方式並不是透過許可證來解決的,而是需要更大的文化變革。我不認為Rust的許可證會改變,即使做出改變可並非讓人難以置信。也許我們只是需要對許可進行一些澄清,使其更清楚地瞭解哪些條款到底適用於哪些部分。”但實際上,Rust基金會表示,他們接到了許多企業使用者要求澄清的電話。

正如Rebecca Rumbul所說的那樣:“目前我的當務之急只是,做一個全面的審計。我們認識到缺乏清晰度是一個問題,我們每週都會收到幾封電子郵件提到,‘你能告訴我,如果我們使用Y,是否可以做X?’我們非常幸運擁有很好的律師,所以能夠回答出個別問題。但如果Rust繼續以這樣的速度發展,這些問題將會接踵而至,變得難以管理。任重道遠。實際上,我想很多維護者社群參與到一種工作小組中來,在那裡可以運用他們的專業知識,但是我也不清楚將會發生些什麼。

“但其實Rust基金會對於維護社群沒有控制權,我們的存在是為了嘗試和管理語言,並且確保語言的持續發展和取得成功。但我們也必須確保我們與社群的需求保持一致,瞭解他們想要什麼,以及他們想怎麼做。一些開源專案有點陷入困境,因為開源社群有他們自己的想法,有自己的個人/競爭權力結構。如果我想強迫人們做一些事情,那麼我就像是在為企業工作,不是嗎?”

頂部