谁是bitcoin Core开发者?
不熟悉 Bitcoin Core 开发过程的人,可能会从外部查看项目,并将Core视为一个整体实体。情况远非如此!Core贡献者之间经常存在着分歧,甚至最多产的贡献者也编写了大量从未被合并到项目中的代码。如果你阅读了关于贡献的指导方针,你可能会注意到它们相当宽松,这个过程最好被描述为“粗略的共识”。
“维护人员将考虑补丁是否符合项目的一般原则;是否满足包含的最低标准;以及将判断贡献者的一般共识。”
那Bitcoin Core的维护者是谁呢?他们是那些通过在一段时间内提供高质量贡献,并且在项目中建立了足够社会资本的贡献者。当现有的维护人员组认为,某个贡献者表现出的能力、可靠性和动机足以胜任,他们可授予该贡献者GitHub帐户的提交访问权。而首席维护者的角色是负责监督项目的所有方面,并负责协调发布的人。这些年来,一共有三位首席维护者,他们分别是:
1、中本聪(Satoshi Nakamoto) 2009.1.3 – 2011.2.23
2、加文·安德烈斯(Gavin Andresen) 2011.2.23 – 2014.4.7
3、Wladimir van der Laan 2014.4.7 至今
充当Bitcoin Core维护者通常被称为看门人,因为维护者实际上没有权力做出违背贡献者或用户共识的决策。然而,由于整个生态系统的额外关注,这个角色担负的压力可能非常繁重。例如,Gregory Maxwell在2017年由于其个人原因放弃了他的维护者角色,这很可能是因为他在扩容争论中经历的公众压力。
Wladimir撰写了一篇的文章,讲述了作为Core维护者的压力,以及为什么应该删除Gavin的提交访问权限,这让很多人感到不安。
类似地,当Jeff Garzik的维护者权限也被删除时,他和其他人对此也感到了不适,但实际上Garzik已经有两年没有为 Core提供贡献了。给他的GitHub帐户保留Core的维护权不会给项目带来任何好处,这只会造成安全风险,并且违反了Wladimir在他的帖子中提到的最低特权原则。
其他人可能看到Core所发生的一些事,便认为这是一个技术官僚主义组织或象牙塔,这使得新进入者很难加入。但如果你与贡献者交谈,你会发现情况并非如此。虽然在过去的几年当中,只有十几个人拥有提交访问权,但有数百名开发人员为比特币做出了贡献。我自己也做了一些小的贡献,当然我自认为自己不是一名“核心开发者”,但我的确是一名Core软件开发者。没有人能阻止你为比特币做贡献!
虽然Bitcoin Core 具有一些结构(它使用中心化的通信通道来协调),但是项目本身不受任何参与者的控制(甚至是那些升级了GitHub存储库特权的人)。即使维护者组织的政变在技术上可能劫持GitHub存储库,审查持不同意见的开发人员,甚至可能争抢“Bitcoin Core”的品牌,但其结果是Bitcoin Core将不再是开发的焦点。不同意维护人员操作的开发人员只需分叉代码,并将他们的工作转移到不同的存储库,那么Bitcoin Core维护者就没有管理特权。
即使没有“政变”,如果有争议的更改确实以某种方式合并到Core的软件里,部分开发者可以进行分叉,然后移除有争议的更改,再向用户发布新版本。例如,Amaury Sechet当时从Bitcoin Core上分叉出来,移除了隔离见证,创建了比特币ABC。而相反,如果Core驳回了部分人提出的某项更改,开发者也可以分叉,然后再添加这些特性。这样的事情已经发生过很多次:
• MikeHearn从Core上分叉,创建了Bitcoin XT
• AndrewStone从Core上分叉,创建了Bitcoin Unlimited
• JeffGarzik从Core上分叉,创建了BTC1
分叉代码很简单,但转移比特币开发的焦点很难,你必须要说服开发者,让他们把时间投入到另外一个项目上做贡献。
也很难去说服很多不盲目遵循Bitcoin Core变化的用户,这可能是个自我强化的信念,因为如果用户不通过了解他们的选择参与共识的过程,他们就把部分权力让给开发人员了。但是2017年,在UASF(用户激活软分叉)期间,用户的权力得到了行使。有一位匿名比特币开发者shaolinfry提出了BIP148协议,这个提案会迫使矿工激活隔离见证。但是BIP148争议太大,并未被Bitcoin Core采纳,于是shaolinfry 从Core上分叉,创建了Bitcoin UASF。
在我看来,最好的Core贡献者是那些充分行使主权的人。我们都是中本聪。