春節假期結束了,大家陸續地重回到原來的生活軌道上。假期是一個很好的休息與調節的機會,同時,春節還有辭舊迎新的本意,它是新的輪迴的開端。 在 Python 社區里,剛發生了一件大事,同樣有開啟新紀元的意義:在"Python 之父" Guido van Rossum 宣佈卸任 BDFL(終身仁慈獨裁者) ...
春節假期結束了,大家陸續地重回到原來的生活軌道上。假期是一個很好的休息與調節的機會,同時,春節還有辭舊迎新的本意,它是新的輪迴的開端。
在 Python 社區里,剛發生了一件大事,同樣有開啟新紀元的意義:在"Python 之父" Guido van Rossum 宣佈卸任 BDFL(終身仁慈獨裁者)後,Python 核心開發者們歷經半年多的時間,終於為新的治理方案選出了第一屆的“執政成員”。
2 月 4 日,經過為期 2 周的投票,Python 社區選出了第一屆的指導委員會的 5 名成員:Barry Warsaw、Brett Cannon、Carol Willing、Guido van Rossum、Nick Coghlan。
前段時間,我曾回顧了 Python 之父的退位風波、翻譯了各種治理提案的彙總介紹、也分析了核心開發者的投票意向(PS:可通過文末鏈接進行查看)。本文是對此事件的跟蹤報道,也是一個階段性的句號。隨著第一屆指導委員會成員的確定,Python 社區將迎來一個新的安穩的過渡期。本文的意義,就是向各位 Python 開發者/學習者/愛好者宣告這個好消息。
核心開發者的自治模式迎來如此重大的轉變,這本就是一件值得關註的大事。Python 社區的未來走向與此息息相關,而這種治理模式的成敗,也會為其它技術社區提供極好的參照系。
1、指導委員會是什麼?
關於指導委員會(Steering Council),它是 7 種治理方案中最晚被提出,但卻最被廣泛接收的一個,最終經過投票成為了社區里新的治理方案。該治理方案以 5 人組成的指導委員會作為最高決策層,並允許在必要的時候,將決策權委派給其它團隊或開發者代表。
指導委員會擁有至高的權力,但它的行事原則是:boring、simple、comprehensive、flexible and light-weight,具體而言則是,通過設定一系列的基礎性的、清晰的、靈活的、輕量的規則及流程,來“指導”社區的治理工作。
指導委員會可以直接行使某些權力,例如批准或駁回 PEP、更新項目的行為守則、跟軟體基金會一同管理項目資產等等,然而,過分行駛權力的方式並不受鼓勵。指導委員會與其它治理提案的關鍵區別就在於,它將扮演規則制定者的角色,指導、引導以及協調社區工作,只有在關鍵時候,才會行使最終的裁決權。
指導委員會的職能是:
- Maintain the quality and stability of the Python language and CPython interpreter,維護 Python 語言及 CPython 解釋器的質量與穩定性
- Make contributing as accessible, inclusive, and sustainable as possible,儘可能使做貢獻是便利的、包容的與可持續的
- Formalize and maintain the relationship between the core team and the PSF,鞏固核心團隊與 Python 軟體基金會的關係
- Establish appropriate decision-making processes for PEPs,為 PEP 建立恰當的決策流程
- Seek consensus among contributors and the core team before acting in a formal capacity,為貢獻者與核心團隊尋求共識
- Act as a "court of final appeal" for decisions where all other methods have failed,當其它所有方法都失敗時扮演“最終裁決法庭”的角色
這個治理模式是借鑒自 Django 項目,詳細內容參見 PEP-13。
2、指導委員會的成員?
指導委員會的固定成員是 5 人,且最多允許兩人來自同一家企業。換屆頻率是每個 Python 發行版本。成員可連任。支持不信任投票(即彈劾)。
現在來看看第一屆當選的成員:
- Barry Warsaw:自1995年起成為核心開發者之一,榮獲 2014 年的弗蘭克·威利森紀念獎。目前供職於 LinkedIn(已被微軟收購,也即供職於微軟),業餘愛好是音樂和太極。
- Brett Cannon:自2003年起成為核心開發者之一,榮獲 2016 年的弗蘭克·威利森紀念獎。曾擔任 Python 軟體基金會的執行副主席。目前供職於微軟,負責 VSCode 的 Python 插件項目。
- Carol Willing:Python 核心開發者,Jupyter 核心開發者及 Jupyter 的指導委員會成員。自由職業,興趣在於科研及教育項目。
- Guido van Rossum:Python 的創始人,被稱為“Python 之父”,長期領導 Python 社區的發展,直到此次的退位風波。目前供職於 Dropbox。
- Nick Coghlan:自2005年起成為核心開發者之一。目前供職於 Tritium。
弗蘭克·威利森紀念獎
註:弗蘭克·威利森紀念獎,即 Frank Willison Memorial Award,該獎由 O'Reilly 出版集團設立,頒佈給為 Python 社區做了突出貢獻的個人。設立於2002年,每年頒佈一次。
這些成員都是多年的資深核心開發者,為 Python 發展做出過長足的貢獻。最值得一提的當然是 Guido van Rossum,他並沒有離開決策層。事實上,Guido 是自薦成為候選人的,並且是 17 名候選人中最早自薦或被提名的幾個人之一。
在當選之後,其他人都在 Twitter 上轉發了好消息,而 Guido 不置一詞。這留下了一個懸念:Guido 出於什麼考慮而決定重回決策層呢,又將會扮演怎樣的角色呢?
3、開源技術項目的發展?
要發起一個開源的技術項目,似乎並不難,然而,要使它推廣到廣大的技術群體,打造出完整的技術生態,並且持續健康地運作下去,這就太難了。
今天,看到一則新聞:Bootstrap 5 將徹底移除對 jQuery 的依賴。我不由地想起半年前,Github 也宣佈了完全放棄 jQuery。jQuery 是著名的前端開源項目,幾年前一統江湖盛極一時,然而隨著 MVVM 框架的崛起,目前已到了窮途末路的境地。
jQuery沒落,群雄爭霸
這揭示了技術項目發展的第一大難題:保持技術的領先性。近幾年,Python 憑藉著在人工智慧和科學計算領域的赫赫戰功,成為了眾多開發者追捧的對象,對我等追隨者來說,真是喜聞樂見。樂觀地想,Python 至少還不會因為技術原因而沒落。
去年,技術社區里還發生了一件大事:Linux 之父 Linus Torvalds 宣佈要無限期休假。這個新聞跟 Python 之父的退位相比,所引起的轟動效應可要大得多了。
這兩件事有很大的相似性,引發了我的好奇心:開源技術項目所重度依賴的靈魂人物離開了,它們如何才能繼續健康地發展運作?
這個話題對我等小小的邊緣碼農而言,實在是超出能力範圍而無法回答。所幸的是,他們又回歸了。不過對於核心開發者們來說,這個話題遲早要面對,現在的風波就是一個預警。
Python 社區貢獻出來的指導委員會治理方案,會帶來什麼樣的變化,會引領社區走向何方呢?拭目以待。
相關鏈接:
https://www.python.org/dev/peps/pep-0013/
https://www.python.org/dev/peps/pep-8016/
-----------------
本文原創並首發於微信公眾號【Python貓】,後臺回覆“愛學習”,免費獲得20+本精選電子書。