Python之父重回决策层,社区未来如何发展?
春节假期结束了,大家陆续地重回到原来的生活轨道上。假期是一个很好的休息与调节的机会,同时,春节还有辞旧迎新的本意,它是新的轮回的开端。
在 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+本精选电子书。
Python之父重回决策层,社区未来如何发展?的更多相关文章
- Python之父重回决策层
在Guido van Rossum(吉多·范罗苏姆)卸任BDFL(“终身仁慈独裁者”)一职半年多之后,Python社区迎来了新的治理新方案:指导委员会模式,而经过投票Guido van Rossum也 ...
- PEP 8016-Python之父重回决策层
PEP 8016-Python之父重回决策层 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 去年,技术社区里还发生了一件大事:Linux 之父 Linus Torvalds 宣 ...
- Python 之父谈放弃 Python:我对核心成员们失望至极!
Python 之父讲述退位原因,以及 Python 的未来将何去何从. 在 Python 社区,Python 的发明者 Guido Van Rossum 被称为 “仁慈的终生独裁者”(BDFL,B ...
- Python 之父的解析器系列之三:生成一个 PEG 解析器
原题 | Generating a PEG Parser 作者 | Guido van Rossum(Python之父) 译者 | 豌豆花下猫("Python猫"公众号作者) 声明 ...
- Python 之父的解析器系列之五:左递归 PEG 语法
原题 | Left-recursive PEG grammars 作者 | Guido van Rossum(Python之父) 译者 | 豌豆花下猫("Python猫"公众号作者 ...
- Python之父Guido在最近一次采访的最后说了啥
Python之父Guido在最近一次采访的最后说了啥? 在前些天的一次采访中,被问到Python未来发展方向的时候原文在infoworld,咱们可爱的python老爹Guido是这样说的: One t ...
- Python之父新发文,将替换现有解析器
花下猫语: Guido van Rossum 是 Python 的创造者,虽然他现在放弃了"终身仁慈独裁者"的职位,但却成为了指导委员会的五位成员之一,其一举一动依然备受瞩目.近日 ...
- Python 之父撰文回忆:为什么要创造 pgen 解析器?
花下猫语: 近日,Python 之父在 Medium 上开通了博客,并发布了一篇关于 PEG 解析器的文章(参见我翻的 全文译文).据我所知,他有自己的博客,为什么还会跑去 Medium 上写文呢?好 ...
- Python 之父再发文:构建一个 PEG 解析器
花下猫语: Python 之父在 Medium 上开了博客,现在写了两篇文章,本文是第二篇的译文.前一篇的译文 在此 ,宣布了将要用 PEG 解析器来替换当前的 pgen 解析器. 本文主要介绍了构建 ...
随机推荐
- Angular路由——路由守卫
一.路由守卫 当用户满足一定条件才被允许进入或者离开一个路由. 路由守卫场景: 只有当用户登录并拥有某些权限的时候才能进入某些路由. 一个由多个表单组成的向导,例如注册流程,用户只有在当前路由的组件中 ...
- zfs文件系统简单使用
关于ubuntu下zfs的使用参考:https://github.com/zfsonlinux/zfs/wiki/Ubuntu%2016.04%20Root%20on%20ZFS 安装zfs: 启动z ...
- JavaScirpt的this指向 apply().call(),bind()个人笔记
写在前头: 本站内容为个人学习记录,纯属个人观点,不喜勿喷,欢迎指正! 笔记记录缘由:JavaScript的流行趋势已经势不可挡,衍生的AngularJs,Node.js,BootStrmp中小企业的 ...
- Maven学习(三)-- 使用Maven构建项目
摘自:http://www.cnblogs.com/xdp-gacl/p/4240930.html maven作为一个高度自动化构建工具,本身提供了构建项目的功能,下面就来体验一下使用maven构建项 ...
- 解决window.showModalDialog在Firefox无法支持
在网页程序中,有时我们会希望使用者按下按钮后开启一个保持在原窗口前方的子窗口,而在IE中,我们可以使用showModalDialog来达成,语法如下 : vReturnValue = window.s ...
- PAT1092:To Buy or Not to Buy
1092. To Buy or Not to Buy (20) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue ...
- eclipse中javadoc给项目生成api文档
步骤 1.打开java代码,编写JavaDoc 注释,只有按照java的规范编写注释,才能很好的生成API文档,javadoc注释与普通注释的区别为多一个*(星号).普通代码注释为/*XXX*/,而j ...
- aliyun TableStore相关操作汇总
总结:这个东西本身可能技术还不成熟,使用的人少,有问题很验证解决 遇到的问题:(1)没有一个GUI工具,使用门槛高(2)查询的GetRange不方便,把查询出来的数据使用System.out.prin ...
- Android监测手指上下左右滑动屏幕
在开发android程序时,有时会需要监测手指滑动屏幕,当手指朝上下左右不同方向滑动时做出不同的响应,那怎么去实现呢? 利用Android提供的手势监测器就可以很方便的实现,直接上代码(已测试通过) ...
- 玩转Spring MVC(三)----spring基本配置文件
这篇文章总结一下spring mvc的基本配置,首先贴一张我的项目的目录截图,有一些多余的文件,大家不必在意: 用到的一些jar包在这:<a>http://download.csdn.ne ...