假如你问我:“你最喜歡哪個編程語言?”,我會毫不猶豫的說 Rust。在曾經的我看來,她的前途無量。可事實卻似乎向著另外一個方向狂飆....
圖片來自Crab-lang
開端#
Rust 歷史很短。她誕生於 2006 年,最開始只是 Graydon Hoare 的個人項目,在 2009 年 Graydon Hoare 成為 Mozilla 雇員後,Mozilla 開始資助這個項目,並且在語言尚未成型的情況下開發了Servo瀏覽器排版引擎,折騰許久後,終於在 2015 年發布 1.0 版本。隨後,Rust 以驚人的速度在社區內蔓延。連續五年被評為最受歡迎的編程語言,Rust 幾乎由社區支撐,她的大多數源代碼來自社區的貢獻,這個新興的開源編程語言似乎形勢大好,無數人追捧她,明天似乎已經可以預見.....
可是,美好似乎來的沒那麼快。
開源社區的項目#
Rust 是一個基於社區的項目,Rust 的大多數代碼來自社區,Rust 的生態來自社區,Rust 的一切幾乎都基於她龐大且充滿活力的社區。
開源社區是一個包容的地方,可能是當今互聯網中最純粹堅持互聯網最原始的 tag:“分享”,的地方。在開源社區裡,不管你是 LGBT 還是俄羅斯人,只要不蓄意引戰影響開源項目和開源社區。那麼大家都是一家人,至少大多數開源社區是這樣的,因為這就是開源的本質,不是嗎?每個人都能快樂的貢獻,享用,交流,分享。美好的像一個互聯網烏托邦。
Rust 是一個開源項目,是一個具有世界性影響力的開源項目,是一個無數來自世界各地開發者們共同建設的開源項目,是一個屬於所有人的開源項目。
可是總有一些人,希望利用開源項目宣揚自己的政治理念,或者思想。
這種想法簡直是不可理喻的,一種沾染獨裁的變態心理。如果一個社區全部同意某個主張,假如現在有一個開源的性少數程序員論壇,自然,就算這個論壇是開源的,但是這個項目本身就是為了這件事情所做的,這個社區就是因為這件事情而凝聚的,大家都覺得這件事情沒問題。很自然的,在這個項目裡宣揚 LGBT 是沒問題的,這是屬於我們每個人都自由權利。可是如果一個項目團隊不顧論壇的反對,只是因為自己想要,就無理的加入爭議的,不屬於這個項目的東西,盲目的加入項目,並且宣揚這明明屬於社區的開源項目現在必須聽從安排的服從,大家會怎麼想呢?
很不幸,這就是 Rust 社區的現狀。
披著開源幌子的鑑證人快樂屋#
這是我對 Rust 開發團隊的評價,無數的事情已經證明 Rust 開發團隊幾乎完全不理會社區的聲音,把無數的爭議假裝看不見,只為了自己覺得舒服就獨斷專行。
憑什麼代表我???#
這是我知道的最早的,2020 年,Rust 官方博客發表 Rust 1.44.0 時,奇怪的添加了兩句話:
This is a shorter blog post than usual: in acknowledgement that taking a stand against the police brutality currently happening in the US and the world at large is more important than sharing tech knowledge, we decided to significantly scale back the amount of promotion we're doing for this release.
The Rust Core Team believes that tech is and always will be political, and we encourage everyone take the time today to learn about racial inequality and support the Black Lives Matter movement.
大同意思就是:Rust 核心團隊認為:技術永遠是政治性的,團隊支持黑命貴運動,美國警察的種族歧視令人髮指,核心團隊希望大家都能好好關注種族歧視現象。
那時候弗洛伊德事件鬧得正歡,而且 Rust 核心團隊說的話其實也沒毛病,杜絕種族歧視是絕對正確的。
可是為什麼一個開源項目要插手政治呢?我也反對種族歧視,但是這和項目有什麼關係嗎?難道說 Rust 社區全是有色人種並且支持黑命貴?開源項目為什麼永遠是政治性的?社區的貢獻者們同意了嗎?為什麼貢獻者們為什麼被 “代表” 了呢?
很顯然,社區貢獻者們沒有同意這件事情,而團隊本來應該代表的是社區的意志。於是大家在評論區吵的熱火朝天。
可誰還記得這是哪裡?這是開源社區,是沒有對立,純粹技術的開源社區,是那怕相互是敵對國家也能開心的聊在一起的一方淨土。
現在,他成了鑑證人的快樂所。
核心團隊憑什麼代替社區開發者們?踩在大家的心血上發出自己的聲音?
這只是其中一件事,剩下的還多的多呢。
獨裁和官僚主義?在世界級的開源項目上???#
2021 年 11 月 22 日,Rust 審核團隊在 GitHub 上宣布離職。集體辭職的原因是:抗議Rust核心團隊不遵守社區準則,對所有人不負責任。
Rust 核心團隊做出了回應,不過對是否真的存在問題沒有做出回覆,只是發布了一篇花名表,臨時組建的新團隊代替了原有的審核團隊。
大家在論壇上討論了很久這件事,參與 Rust 開源項目長達六年的 Dragdu 寫了一篇文章,發布了他的看法,總結來說就是:Rust 現在一團糟,團隊管理混亂,核心團隊權力過大。 就像標題寫的那樣:"Rust 核心團隊是有毒的"。
文章裡詳細寫出了作者在 Rust 團隊的親身感受,並且最後表示:我會呼籲核心團隊的成員辭職,並關閉整個核心團隊。我想問 Rust 團隊成員(儘管有這種環境,他們繼續創造和開發令人驚嘆的創新工作)質疑,這是一個你認為會以你的最大利益行事並在你需要時支持你的領導力嗎?你會把這種行為稱為 Rust 的 “核心” 嗎?我不會的。
這顯然不是一個能擔任起如此巨大開源項目核心團隊該有的樣子。如果用這樣一個團隊在一個小項目上,便注定是一敗塗地。Rust 這個大項目似乎變成了一把巨大的保護傘。難不成你還能碰核心團隊不成?
究竟是開源項目還是政治雜燴#
時間來到 2022 年 7 月 12 日,Rust 核心團隊發布了一篇博文,表示成員 Aidan Hobson Sayers 和 Ashley Williams 將退出核心團隊。
其中 Ashley Williams 變成了漩渦的中心。博客裡對她的介紹是:
- Ashley Williams 于 2018 年成為核心團隊的成員,並對項目的許多部分產生了影響。從領導社區團隊,到為基礎架構和 Crates.io 建立 PagerDuty;到 Wasm 工作組,再到增加 Rust 的影響力和 Rustbridge 。
出走的原因是什麼呢?讓我們先把時間往回撥一點,回到 2021 年審核團隊出走的那一年。
Andrew Gallant 指出審核團隊完全是想反對核心團隊,和尊不遵守規範沒關係。這件事情在社區上引起了廣泛的討論,有人指出核心團隊中的 Ashley Williams 使用行為準則當作 "武器" 來 "對付" 男性貢獻者,但自己卻不遵守。Rust 核心團隊的男性驕傲自大,他們無心促進 Rust 發展,成為了惱人且無用的官僚,Rust 審核團隊的三名男性成員不願與這樣的人們為伍,選擇辭職。
你問我最後這件事情怎麼處理的?顯然的,Ashley Williams 辭職。在社區裡,管理員們刪除了有關此事的所有討論貼,理由是這種沒營養的討論只會搞亂社區。
可是不管怎麼說,Ashley Williams 這個 "大家都不喜歡的人" 終於走了。
Ashley Williams 身上的標籤是什麼?顯然的,偏極端的女權主義者(疊個甲,我不討厭女權主義,我認同現代女權主義運動,如果你認為特權是女權主義,我的建議是學學歷史,別被你的母校除名),至於 Rust 核心團隊是怎麼容忍這樣一個天天和他們爭吵的人在裡面待這麼久,也算是一個值得思考的搞笑問題。
樂#
現在,看完了所有,你覺得 Rust 的未來怎麼樣呢?作為一個 Rust 開發者,我自然是希望 Rust 越來越好,不過 Rust 團隊似乎在越來越壞,還有很多小事情我在文章中省略了,比如官網上的繁簡之爭,Rust 基金會整的逆天大活兒。我只覺得很搞笑,開源圈很久沒有天天爆樂子的項目了,說實話,她能堅持到現在也不容易。
我對 Rust 的未來並不悲觀,我相信開源社區能拯救這一切,沒有任何人希望自己熱愛的東西漸漸消失。實際上,Rust 社區的一些人 fork 了一個類似 Rust 的新語言,幾乎唯一的區別是:她是真正屬於開源社區的。
明天會更好