509 / 736FOSS·FUND

Open-source Bitcoin Funding

比特币开源工作的资金支持

免费下载 Bitcoin 软件,并不意味着它没有成本。总得有人编写代码、寻找错误,确认新版本没有破坏原来正常工作的功能。资助开放开发,就是让这些人有时间做好这些工作。成果不一定是新功能:有时,最有价值的成果,是经过仔细审查后,一个错误根本没有到达用户手中。

Open-source Bitcoin Funding 指的是资助那些创建、审查和维护公开可用的 Bitcoin 软件、教育资源与基础设施的人和项目。Open-source 表示源代码可以按许可证的条件查看、使用和修改,并不表示工作没有成本。资助支付的是时间和专业能力,而不是决定整个网络规则的权利。

设想一位开发者,在结束日常工作后的晚上,审查一项钱包修改提案。她需要理解原有行为、运行测试,并考虑不常见的情况。她可能没有增加任何看得见的功能,却帮其他人避开了错误。比特币软件项目 Bitcoin Core 需要的贡献还包括测试、文档、翻译和用户界面。其贡献指南甚至把深入审查与测试视为开发的瓶颈。资助为这些经常不被注意的工作腾出了时间。 [6] [7]

捐款可以支持个人或组织,开发资助约定获支持工作的范围,雇佣关系则有自己的义务。以 Brink 为例,它区分面向资深开发者的资助,与有报酬的 fellowship 项目。后者让参与者在导师指导下,通过工作学习。对于资助接受者,Brink 期待其独立工作,并公开报告进展。因此,接受者需要了解的不只是金额,还有工作期望、支持期限、付款时间和延续条件。 [3]

代码仓库是保存项目代码及其修改历史的地方。把它公开,并不会自动让人付钱支持工作。OpenSats 会评估项目是否符合其使命、目标是否清晰、是否可行、申请者的能力,以及预期影响。它介绍的流程包括专家评估、申请者核查和董事会多数批准。协议随后规定工作范围、阶段目标和进展报告。这是某个基金的规则,不是整个 Bitcoin 生态统一的准入程序。 [1]

Spiral 网站保留了 Square Crypto 于 2019-09-14 发布的一份历史公告:向 BTCPay Foundation 提供 100000 USD,支持 BTCPay Server。资金可用于改善 Bitcoin 的自由开源软件,例如提升易用性或隐私。这个金额描述的是那笔具体资助,不是今天开发工作的价目表。Human Rights Foundation 也在其使命范围内,支持开发以外的教育、翻译和易用性工作。因此,这个概念不只涵盖写代码,而这些例子也不是资助方的完整名单。 [4] [5]

在 Bitcoin Core 中,修改会被公开提出,由其他人审查和测试,再由维护者决定是否合并到共同的代码仓库。即使完成合并,也不会自动改变整个网络的规则。用户选择运行的软件,他们的节点,也就是检查交易和区块的计算机,通过软件验证规则是否得到遵守。出资方可以影响受资助开发者把时间花在哪里,但资助不会赋予其绕过项目审查或命令其他人接受修改的权力。资助工作、接受代码、采用网络规则,是不同的步骤。 [7] [9]

我们可以合理地追问:谁在付钱,支持多久,有什么义务,什么情况下可以终止?当付款方的目标与用户需要不一致时,就可能出现利益冲突。OpenSats 公开财务和治理文件,并提供利益冲突规则的链接。这有助于判断各方关系,却不能保证中立。同样,给开发者发报酬的公司有多少,并不等于有多少实体控制协议。应当考察具体关系,而不是预先指责每个基金。 [2] [9]

资助成果可以从许可证、代码、审查、测试、文档和接受者的报告中寻找。Bitcoin Core 通常按 MIT 许可证接受贡献,但注明的例外情况除外。许可证规定使用条件,不是安全证书。代码公开本身,也不能证明有人做过深入检查。如果发现敏感漏洞,也就是可被利用进行攻击的错误,应按项目安全政策报告,并协调披露。急于展示资助成果,不能抢在保护用户之前。 [7] [8]

有用的项目仍需要维护、审查他人的修改,以及传递知识。Brink 明确把这些活动和修复错误列入支持范围。因此,不能只计算 commit,也就是代码仓库中的变更记录,或累加已宣布的捐款金额。更重要的是解决了什么问题、谁验证了结果、接下来由谁维护。宣布资助是支持的开始,不是项目完成的证明。能够长期发挥作用的资助,也要考虑那些不会登上头版的工作。 [3] [1]

示例 · FOSS·FUND

好的工作,有时会阻止一次发布

在这个虚构例子中,一笔资助让开发者能够专门审查钱包修改,而不必只用晚上的空闲时间。她发现一种会使新版本出错的情况,并编写测试展示问题。提案因此退回作者修改。用户暂时没有看到新功能,但资助已经产生价值:它帮助避免发布一个有问题的版本。出资方可以按协议评估有记录的工作,却不能用付出的报酬买到绕过项目审查的权利。

要获得更完整的理解,请将本词条与以下词条结合阅读: Bitcoin Donations, 比特币教育, Bitcoin Core, Bitcoin and Human Rights, Bitcoin. 反向关联还来自: Bitcoin Donations.

01大额捐款人可以决定 Bitcoin 的规则吗?

仅凭捐款不行。他可以影响哪些工作获得资助,以及接受者投入什么方向。但代码是否被接受要遵循项目流程,网络规则则取决于参与者实际采用和运行什么。必须区分这些层面。

02没有新功能的工作也值得资助吗?

值得。审查别人的修改、修复错误,或写清楚文档,可能比再添一个功能更有帮助。重要的是能说明具体做了什么,以及如何验证。commit 数量或宣布的资助金额,都不能单独说明成果。

DOC · 001OpenSats — Grant Selection一手来源 DOC · 002OpenSats — Transparency一手来源 DOC · 003Brink — Programs一手来源 DOC · 004Spiral — Grant #1: BTCPay Server一手来源 DOC · 005Human Rights Foundation — Bitcoin Development Fund一手来源 DOC · 006Bitcoin Core — How Can I Contribute?文档 DOC · 007Bitcoin Core — Contributing文档 DOC · 008Bitcoin Core — Security Advisories文档 DOC · 009Bitcoin.org — Network control FAQ文档
修订日期: 来源优先 · 非投资建议