成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Python之父退位后,會有新任終身仁慈獨裁者嗎?怎么產生?

開發 后端
隨著 Python 之父 Guido van Rossum 逐步卸任 BDFL,Python(CPython)的未來之路牽動了萬千開發者的心。沒了首領,Python 今后的發展會怎么樣?社區將如何運作?誰來領導 Python 這門語言和社區呢?

隨著 Python 之父 Guido van Rossum 逐步卸任 BDFL,Python(CPython)的未來之路牽動了萬千開發者的心。沒了首領,Python 今后的發展會怎么樣?社區將如何運作?誰來領導 Python 這門語言和社區呢?這些問題不得不解決,而用什么樣的方式解決,這就需要先由社區討論并最終決定。目前,Python 社區共提出了 7 種治理方案,分別是 PEP 8010、PEP 8011、PEP 8012、PEP 8013、PEP 8014、PEP 8015 與 PEP 8016。這些提案都匯總在 PEP 8000 之下,其中最終勝出者,將決定 Python 未來的發展方向和方式。

[[252629]]

日前,Python 的核心開發者之一、PEP-8015 的作者 Victor Stinner 對這 7 種治理提案做了對比分析,本文引用他的分析為讀者提供一個較為全面的視圖。

背景知識

先簡單了解一下背景知識,便于后文理解。

  • PEP:全稱是 Python Enhancement Proposals,Python 增強提案,現在數量將近 500 個,涵蓋 Python 功能實現、規范與周邊信息等各種內容。本文出現的 7 個提案,全是針對新的治理模式,后續還可能新增這方面的提案。若想加深理解 PEP,并找到哪些提案是必讀的,可以另外查閱相關文獻。
  • PSF:全稱是 Python Software Foundation,Python 軟件基金會,非營利組織,其使命是促進 Python 社區發展,負責舉辦各種社區活動,例如開發 Python 的核心發行版、管理知識產權、舉辦開發者大會(如 PyCon)、促進多元與國際化,以及募集發展基金等。
  • BDFL:全稱是 Benevolent Dictator For Life,終身仁慈獨裁者,該位置被賦予絕對的最終決策權,曾特指 Guido van Rossum。2018 年 7 月 12 日,Guido 宣布不再擔任 BDFL。本文的全部 PEP 都是圍繞如何選出新的 BDFL 以及配套的社區治理方案,該詞不再有特指意義。
  • CoP:全稱是 The Council of Pythonistas,Pythonistas 委員會,為 Guido 提供參謀意見的智囊團。

目前 Python 社區的 PEP 流程是這樣的:提案人確定 PEP 的選題方向,提案人負責收集與整合來自整個社區的反饋。然后,相關領域的專家們匯總全部討論,并開啟為期 14 天的最終評審,其評審結果不再需要社區性的投票。如果一個 PEP 很有爭議,任何專家成員都可發起動議來拒絕通過它,這需要超過 2/3 的票數。

7 種方案一覽

  • PEP 8010:技術領導人治理模式

維持現狀

  • 提案人: Barry Warsaw
  • PEP 8011:三巨頭治理模式

類似現狀,但三人決策

  • 提案人:Mariatta Wijaya、Barry Warsaw
  • PEP 8012:社區治理模式

沒有核心決策人

  • 提案人: Łukasz Langa
  • PEP 8013:外部治理模式

非核心監督

  • 提案人:Steve Dower
  • PEP 8014:大眾治理模式

核心監督

  • 提案人:Jack Jansen
  • PEP 8015:Python 社區的組織模式

將多數決策交給團隊

  • 提案人:Victor Stinner
  • PEP 8016:指導委員會模式

引導治理的迭代

  • 提案人:Nathaniel J. Smith、Donald Stufft

區別對比

Victor Stinner 總結了 7 個 PEP 的主要區別,同時他建議在給這些治理提案投票時,不要以它們的完整性來評判,而要聚焦其關于決策過程的部分,即誰能拍板做決策,以及怎么做?他希望那些還不夠完整的 PEP 可以吸收其它 PEP 的精華,并逐漸完善自身。

總的來看,在這些 PEP 中,除了 PEP-8012 和 PEP-8014,其它的都設有一個***決策層,一般的形式包括指導委員會、理事會、三巨頭、Guido 等。

  • PEP 8011、8012 和 8015 定義了明確會參與決策過程的工作組/專家/Python 團隊,這可以視為第二級的決策層。
  • PEP 8014 允許任意 Python 使用者參與投票,PEP 8013 將核心開發者排除在決策委員會之外。除了這兩個特例,其它 PEP 中的決策過程都強依賴于核心開發者,候選人必須是核心開發者,或者只有核心開發者才可以投票。
  • PEP 8010、8012、8013、8014、8015 和 8016 都提出了不信任投票,也就是彈劾機制,可將任期內的當權者趕下臺。Victor 認為沒有這一項是不明智的。
  • PEP 8015 和 8016 嚴格限定了在委員會里,只允許少于 50% 的成員是企業(5 人委員會里最多有 2 個),而其它 PEP 不設限制。
  • PEP 8010、8011 和 8014 幾乎只關注于定義***決策層,而 PEP 8015 和 8016 還關注到核心開發者的選舉/淘汰、如何更新治理提案等。
  • PEP 8011、8014 和 8015 提到了決策層成員的多樣性,比如女性開發者是否能有一席之地,像 PEP-8011 就指出“盡全力去接納弱勢群體”,但卻沒有提到如何去促進多樣性的詳細規則。

下邊具體拆解出各個治理方案的各項對比:

***決策層

  • PEP 8012 明確地避免它
  • PEP 8014 有一個長老會,負責決定如何及何時批準 PEP,該決定基于對所有 Python 使用者開放的投票
  • 其它 PEP ***決策層的形式為技術領導人、三巨頭、理事會、指導委員會等。

成員人數

  • PEP 8010:4,包括 1 名領導人和理事會 3 人
  • PEP 8011:3 (三巨頭) + 工作組
  • PEP 8012:無領導,專家團隊自治
  • PEP 8013:2-4 ,含 1 名主席
  • PEP 8014:5-10 (理事會)
  • PEP 8015:5 (委員會) + Python 團隊
  • PEP 8016:5 (委員會) ,或者再加其它團隊/多委員會/代表等,據需求而定

候選人的條件要求

  • PEP 8010:核心開發者
  • PEP 8011:核心開發者、 PSF 的投票成員、三巨頭、盡全力去接納弱勢群體
  • PEP 8012:N/A
  • PEP 8013:決不能是核心開發者
  • PEP 8014:不要求是核心開發者、***是多元化的委員會、成員應了解 Python 與 Python 社區
  • PEP 8015:核心開發者、 最多 2 名企業成員
  • PEP 8016:由核心開發者提名、 最多 2 名企業成員

選舉:誰投票,怎么投?

  • PEP 8010:核心開發者
  • PEP 8011:active 狀態的核心開發者
  • PEP 8012:N/A
  • PEP 8013:核心開發者,當出現平局時,主席可再投一票
  • PEP 8014:投票對所有 Python 使用者開放
  • PEP 8015:核心開發者,若平局則進行二次投票,若二次投票還是平局,則由 PSF 董事會 選擇
  • PEP 8016:核心開發者,若出現平局,可由候選人協商解決,否則隨機選擇

任期長度與限制

  • PEP 8010:領導人任期 4.5 年,經歷 3 個 Python 版本;委員會 3 年一屆
  • PEP 8011:5 年
  • PEP 8012:N/A
  • PEP 8013:1 個 Python 版本,可連任
  • PEP 8014:認為理事會的權力純粹是程序性的,***是讓成員的服務時間長一點。但是又表示如果可以定期更新理事會也挺好
  • PEP 8015:3 年,輪換選舉,每年更換 1/3,可連任
  • PEP 8016:1 個 Python 版本,可連任

不信任投票

  • PEP 8010:可用于彈劾領導人,理事會一致決定時發起,由全體核心開發者進行多數決議,但未明確多數決議的閾值
  • PEP 8011:N/A
  • PEP 8012:N/A
  • PEP 8013:投票需要大于 2/3 票數,針對單個理事會成員
  • PEP 8014:1 名長老,或者 10 名核心開發者的團體,或者 PSF 投票成員,可以申請即時生效的投票,針對整個理事會
  • PEP 8015:N/A
  • PEP 8016:投票需要 2/3 票數,針對單個成員或整個委員會

團隊/專家的任免

  • PEP 8010:對單個 PEP,Guido 與 CoP 協商確定專家人選
  • PEP 8011:3-5 人組成的工作組給三巨頭提建議,不需要是核心開發者
  • PEP 8012:專家自組織成特定興趣領域的子團隊,這避免了大多數投票和委員會設計。解散某個專家團隊時,需要大于 2/3 票數
  • PEP 8013:N/A
  • PEP 8014:N/A
  • PEP 8015:自組織式的 Python 團隊,委員會可允許他們批準自己的 PEP 打包團隊(Packaging Team),要求核心開發者和貢獻者
  • PEP 8016:N/A

PEP 流程

  • PEP 8010:PEP 代表,Guido 是 PEP 決策的最終權威
  • PEP 8011:三巨頭和(或)工作組?Victor 也不確定
  • PEP 8012:遵照現行的 PEP 流程,提案人確定 PEP 的選題方向,提案人負責收集與整合來自整個社區的反饋。然后,相關領域的專家們匯總全部討論,并開啟為期 14 天的最終評審,其評審結果不再需要社區性的投票。如果一個 PEP 很有爭議,任何專家成員都可發起動議來拒絕通過它(需 2/3 票數)
  • PEP 8013:如果理事會不否決,PEP 自動被批準
  • PEP 8014:投票對所有 Python 使用者開放,而不僅僅是核心開發者。理事會會決定投票結果是否采用。一般投票,票數高者獲勝,根據投票結果理事會是應該直接作出決定的,但是如果落后方此時進行申訴,而理事會有所動搖,那么此時已經獲得多數票的一方需要做出論證。理事會最終會做出決定
  • PEP 8015:委員會在 PEP 代表(一般來自 Python 團隊)之間做選擇,或者交給核心開發者投票,需大于 2/3 票數
  • PEP 8016:理事會在必要時可直接地批準/否決 PEP,但***是設置流程來避免這樣做決策,例如,將決策權委派給團隊或者 BDFL 代表

核心開發者考核

晉升

  • PEP 8010:N/A
  • PEP 8011:N/A
  • PEP 8012:核心開發者投票,要求全員投票通過,每個 -1 都算作否決權
  • PEP 8013:核心開發者投票,要求全員投票通過,每個 -1 都算作否決權
  • PEP 8014:N/A
  • PEP 8015:核心開發者投票,需 2/3 票數
  • PEP 8016:核心開發者投票,需 2/3 票數,理事會有否決權

淘汰

  • PEP 8010:N/A
  • PEP 8011:N/A
  • PEP 8012:不信任投票,需大于 2/3 票數
  • PEP 8013:N/A
  • PEP 8014:N/A
  • PEP 8015:實施工作組臨時禁令,移除核心開發者身份
  • PEP 8016:指導委員會投票,需大于 4/5 票數。此外處于“inactive”狀態的成員也會失去特權,直到他們再次變為“active”狀態

更新治理模式

  • PEP 8010:N/A
  • PEP 8011:N/A
  • PEP 8012:N/A
  • PEP 8013:N/A
  • PEP 8014:N/A
  • PEP 8015:委交給核心開發者,需 4/5 票數
  • PEP 8016:委交給核心開發者,需 2/3 票數

行為守則

  • PEP 8010:行為守則管制所有互動與討論
  • PEP 8011:三巨頭需遵守 PSF 的行為守則
  • PEP 8012:依靠現有的 PSF 行為工作組,這在 PEP 中命名為“版主(Moderators)”
  • PEP 8013:N/A
  • PEP 8014:N/A
  • PEP 8015:依靠現有的 PSF 行為工作組
  • PEP 8016:指導委員會被鼓勵去設立 CoC 的流程,同時細節可以靈活制定

參考:Comparison of the 7 governance PEPs

作者介紹

豌豆花下貓,關注 Python 技術、數據科學和深度學習領域。個人公眾號:Python貓。

責任編輯:未麗燕 來源: Python貓
相關推薦

2012-12-10 10:16:07

2022-02-22 14:36:52

編程Swift程序員

2010-09-16 20:38:42

2009-09-15 13:37:46

2018-07-29 12:18:13

Python語言van Rossum

2018-07-29 23:23:39

Python 開發編程語言

2010-09-28 11:07:40

云計算

2015-08-20 10:05:15

Python

2015-08-21 10:14:17

Python 之父Python

2011-12-28 15:16:33

Sencha開發者負責人

2011-07-29 12:18:30

2009-07-22 13:04:49

網絡管理網絡設備

2019-11-25 09:55:34

自動駕駛人工智能無人駕駛

2019-10-31 15:13:11

Python

2021-06-25 10:42:38

網絡安全安全從業者開發者

2020-12-08 09:25:41

死鎖MySQL數據庫

2022-05-17 09:49:23

Fedora 36桌面Linux

2019-07-24 13:42:34

Python編程語言代碼

2020-12-16 10:43:44

PythonPyPy代碼

2020-11-24 06:00:55

PythonPython之父編程語言
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 成人av在线播放 | 中文字幕一区二区三区在线观看 | 久久精品91久久久久久再现 | 欧美性久久久 | 一区二区三区回区在观看免费视频 | 欧美在线观看一区 | 日皮视频免费 | 欧美日韩一二三区 | 日韩精品免费一区 | 欧美激情综合网 | 国产成人精品在线 | 成人午夜视频在线观看 | 青草视频在线 | 精品在线视频播放 | 91精品国产综合久久久久 | 欧美一区二区免费电影 | 亚洲人成人一区二区在线观看 | 亚洲欧美一区二区三区1000 | 欧美a√| 人人干视频在线 | 99tv| 国产一区二区三区高清 | 国产精品一区二区三区在线 | 久久久国产一区二区 | 久久久久久网 | 中文字字幕一区二区三区四区五区 | 欧美成人一区二免费视频软件 | 久久久青草婷婷精品综合日韩 | 国产免费一区二区 | 天堂中文资源在线 | 365夜爽爽欧美性午夜免费视频 | 久久久www成人免费精品 | 中文字幕1区 | 亚洲精品乱码久久久久久黑人 | 超碰伊人久久 | 日韩精品一区二区三区视频播放 | 亚洲一区二区久久 | 中文字幕色站 | 精品福利一区二区三区 | 尤物视频在线免费观看 | 欧美在线视频二区 |