Harmony 的问题:第一部分

还没有读者喜欢这个。
A community raising a barn

Opensource.com

Harmony,Canonical 牵头的旨在为开源项目提供一套全面的贡献者协议的努力,在 Canonical 总法律顾问 Amanda Brock 在 opensource.com 上 宣布 该倡议一年后,悄然发布了其 1.0 版本。在那一年的大部分时间里,Harmony 的构建都在公众视野之外进行,审议过程被 查塔姆研究所规则 所掩盖。

尽管我对 Harmony 的推动者们充满钦佩、尊敬和喜爱,但我无法认可他们的工作成果。我认为 Harmony 是不必要的、令人困惑的,并且可能对开源和自由软件开发有害。

贡献政策和自由软件传统

四分之一个世纪以来,大多数自由软件项目的特点是交易的非正式性和许可方平等这两个规范。大多数项目从未使用过正式的贡献者协议。相反,它们通常在一种我称之为“入站=出站”的规则下运作:本质上,贡献被理解为根据适用的出站项目许可证(或明确的入站许可证由项目下游传递)获得许可。这使得有价值的贡献者可以轻松参与项目,而不会受到恐吓和繁文缛节的困扰,并使所有项目贡献者(无论是补丁提交者还是提交者)在法律上处于平等的地位。这是一种如此普遍的法律治理形式,以至于我必须得出结论,开源开发模型的巨大成功很大程度上归功于此。

自由软件基金会为早期的 GNU 项目强制执行的版权转让政策多年来一直是这一普遍社会规则的主要例外。正式贡献者协议的使用在最近一段时间有所增加,但它仍然是一种少数派方法。在使用此类协议的情况下,基本上有两种方法,我将其称为最大化主义和最小化主义。最大化主义方法以版权转让协议和贡献者许可协议 (CLA) 为代表,这些协议要求最大限度地广泛授予入站版权许可。最小化主义方法可能不太为人所知;它们通常涉及对使用特定的知名自由软件许可证进行贡献的简单明确承诺。这通常是项目的适用出站许可证(入站=出站习俗的正式化),或某些标准的宽松许可证。

最大化主义贡献者协议在 FLOSS 开发社区中一直备受争议,尤其是在由单一企业利益控制的项目要求的版权转让政策的情况下。对该主题的最佳考察仍然是 Michael Meeks 的文章 “关于版权转让的一些想法”。值得注意的是,Canonical 在因其自身的版权转让协议而受到广泛的社区批评几个月后宣布了 Harmony 项目。

约束的幻觉

Harmony 选择遵循并因此使最大化主义方法合法化,但以一种我担心可能会引起混乱的新方式。使用 Harmony 的项目必须首先决定是要求贡献者转让版权还是最大限度地广泛授予入站版权许可;没有其他选择。然后,项目应从一组五个互斥的条件中选择贡献中分配或许可的内容如何由项目向下游许可。

五个选项中的每一个都允许项目使用贡献提交日期时的出站项目许可证,但这通常是项目无论如何都会做的事情。(这与入站=出站不同,因为 Harmony 下的许可方是入站项目实体,而不是贡献者。)五个选项中的四个为项目提供了使用现有项目许可证的替代方案。在这四种情况中的一种情况下,替代方案是不受限制的,明确允许项目实体选择任何许可证,无论是自由许可证还是专有许可证。(项目做出象征性的承诺,要“额外地”根据现有项目许可证许可贡献。)其余三个选项下的替代方案包括项目指定的许可证列表、任何 OSI 批准的许可证以及任何 FSF 推荐的著作权保留许可证。

关于这些出站许可选项,值得注意的是,它们没有意义,除非在选项仅承诺项目实体在出站方面使用著作权保留许可证的情况下。这种情况只会发生在现有出站许可证是著作权保留许可证并且,如果项目可以选择替代许可证,则替代方案要么是仅由著作权保留许可证组成的列表,要么是“FSF 推荐的著作权保留”类别的情况下。在所有其他情况下,出站条件本质上是名义上的。那是因为,即使未选择“不受限制”选项,项目始终可以根据非著作权保留 FLOSS 许可证许可贡献,根据定义,这将不对代码的使用施加任何出站许可约束,包括项目实体本身的使用。

我不是在质疑宽松许可的合法性;事实上,我一直鼓励 Red Hat 开发人员使用标准的非著作权保留许可证。令我担忧的是,Harmony 煞费苦心地给人一种约束出站许可的表象,但实际上只有在一种特殊(且可能罕见)的情况下才会如此。 

举一个简单的例子,假设一家公司启动了一个新的 GPL 许可的项目,并要求贡献者签署 Harmony 版权转让协议,并选择了“仅限 OSI 批准的许可证”出站选项。然后,该公司完全可以自由地根据例如(OSI 批准的)3 条款 BSD 许可证许可所有贡献,而这反过来又不会阻止该公司根据专有的闭源许可证私下许可项目代码,包括贡献。这不是什么新鲜的场景,但 Harmony 添加的是约束的幻觉,我担心这可能会误导那些对开源许可相对不熟悉的贡献者。

Harmony 和 GPL 的可执行性

我已经暗示,Harmony 对出站许可的约束表象只有在项目同意仅根据像 GPL 这样的著作权保留许可证许可贡献时才是真实的。但即使在这种情况下,最大化主义模型仍然存在,就像在所有其他 Harmony 排列中一样。通过将版权转让给项目实体,或授予其尽可能广泛的版权许可,Harmony 协议贡献者放弃了所有监管从项目下游使用贡献的权利。这是与历史悠久的入站=出站传统的最大决裂:贡献者完全与项目代码的下游用户断绝了任何真正的法律关系。相反,贡献者只剩下针对项目实体的索赔,如果它违反了授予条件。

这足够好吗?也许对于某些贡献者来说,在某些情况下是这样。但是,如果贡献者关心下游对 GPL 的遵守情况,如果项目实体不努力执行这种遵守情况,贡献者将无能为力。贡献者的期望将无法实现,但贡献者将无能为力。Harmony 没有创造这个问题;它在 GPL 项目对最大化主义模型的所有现有使用中都是固有的。但是,面向 GPL 的贡献者不应假定具有 GPL 出站约束的 Harmony 协议会满足他们的政策目标。

我将在本文的 第二部分 中继续我对 Harmony 的批评。

标签
Richard Fontana
Richard 是 Red Hat 法律部门产品和技术团队的高级商业律师。他的大部分工作都集中在与开源相关的法律问题上。

22 条评论

<p>Fontana,我完全同意您的评估。您去年在正式概念化“入站=出站”时表达的清晰性确实澄清了我对为什么大多数 CLA 非常危险的看法,并且这个概念 <a href="http://ebb.org/bkuhn/blog/2011/07/07/harmony-harmful.html">严重影响了我自己关于 Harmony 项目协议的文章</a>。</p>

<p>但是,我确实希望 Red Hat 会为 <a href="http://fedoraproject.org/wiki/Legal:FPCA">Fedora 项目贡献者协议 (FPCA)</a> 切换到纯粹的入站=出站方法。FPCA 当然比任何 Harmony 排列都更接近入站=出站,但是由于贡献者仅仅是健忘,退化回 MIT 宽松许可证作为“当前默认许可证”意味着著作权保留可能无法得到维护。</p>

Bradley,虽然纯粹的“入站=出站”对于发行版项目肯定可以奏效,但在 Fedora 的特殊背景下,也有很好的理由支持使用具有默认许可功能的新最小化主义方法 FPCA。我建议与 Tom Callaway 讨论这个问题,他对 Fedora 特殊背景下的这些问题比任何人都考虑得多。FPCA 的设计源于 Tom,Fedora 委员会也支持它。参见最近的 Fedora 委员会会议纪要:http://lists.fedoraproject.org/pipermail/advisory-board/2011-July/010852.html。

我不明白为什么发行版需要任何形式的贡献者协议。发行版聚合了软件软件包的集合,所有软件包都在不同的许可证下。FPCA 在这种情况下给我的印象是极其繁重的。软件软件包的补丁应根据上游项目认为合适的条款提交给上游。

Ubuntu 只有 <a href="http://www.ubuntu.com/community/conduct">行为准则</a>,它与成为负责任的社区成员有关,而与软件许可证无关。

Fedora 不仅仅聚合软件包 - FPCA 可能涵盖文档、wiki 编辑、艺术作品以及 RPM spec 文件。但是,我同意发行版项目不需要贡献者协议,我很高兴您提出了这一点。Fedora 拥有 FPCA 的主要原因可能是历史原因:它过去有另一个(旧的 Fedora CLA,密切基于 Apache 软件基金会的 ICLA),而 FPCA 最初是为了纠正旧协议的缺陷而产生的。我听到许多过去对旧 Fedora CLA 的批评者表示赞同 FPCA。

虽然我是 FPCA 的主要起草者,但今天它给我的印象有点笨重(我不会说“极其”,因为它仍然是一个非常精简的贡献者协议 :)。在我与 Tom Callaway 合作 FPCA 的主要时期,我对这个主题的思考还处于早期阶段。

您和 <a href="http://blogs.gnome.org/bolsh/2011/07/06/harmony-agreements-reach-1-0/">Dave Neary</a> 让我省去了记录我对 Harmony 的担忧的麻烦(我在其中参与是为了缓解而不是认可)。尽管如此,当客户忽略我对该主题的所有论点时,我可能会建议他们使用 Harmony 协议(许可证版本,社区选择的许可证明确标识为出站许可证)而不是编写自己的协议。

您没有详细提及的是不采用这些类型协议的社区原因。我已经从 <a href="http://webmink.com/essays/on-copyright-aggregation/">社区</a> 和 <a href="http://webmink.com/essays/transparent-private/">公司</a> 的角度写过关于这个主题的文章。

我在即将发布的第二部分中解决了一些问题,尽管您比我更擅长解释这些事情。:-)

您还会介绍组织(Apache 和 Plone 浮现在脑海中)似乎很好地利用了贡献者协议的情况吗?

在本文中,我重点关注 Harmony。我在第一部分中指出,存在我称之为“最小化主义”贡献者协议的东西。这些协议不会引起最大化主义变体(如 Harmony)所引起的问题。

我承认我不熟悉 Plone 的方法,但我会研究一下。我认为 Apache 是一个独特的案例。它的 CLA 在形式上是最大化主义的,但由于 ASF 使用的 CLA 本质上与 ASF 项目使用的出站许可证重复,因此实际上是无害的。请参阅我去年撰写的关于新的 Fedora 贡献者协议的文章:https://open-source.net.cn/law/10/6/new-contributor-agreement-fedora(Fedora 的旧 CLA 基于 Apache CLA)。

如果这是您所说的 Plone 贡献者协议 http://plone.org/foundation/contributors-agreement/agreement.pdf (pdf) - 我看到它在一定程度上基于 FSF 版权转让。Plone 基金会明确保留根据非 FLOSS 许可证许可出站的权利,但也承诺出站 FLOSS 许可(但不仅限于 GPL)。与 Harmony 的一个可能显着的区别是,FLOSS 出站许可承诺似乎可能适用于所有 Plone,而不仅仅是人为地隔离贡献。

总的来说,我认为 Plone 协议与 Harmony 一样糟糕,但可能不会更糟。

Richard,参与了多次电话会议和会议后,我发现您将“查塔姆研究所规则掩盖”的描述有点耸人听闻。正如 RedHat 肯定知道的那样,加入讨论列表和参加会议没有任何障碍,参与者也坦诚地说明了他们所属的机构。

话虽如此,健康的辩论就是这样,为了另一个角度,您的读者可以关注 Stephen Walli 的总结,并保持讨论的活力:http://www.networkworld.com/community/node/76064

<p>Paula,我不同意。在早期阶段,Harmony 会议仅在私人电子邮件列表上宣布,例如 <a href="https://mail.fsfeurope.org/mailman/listinfo/ftf-legal">ftf-legal</a>,这些列表<strong>非常</strong>难以加入。即使拥有 12 年的 FLOSS 许可证政策经验,我加入 ftf-legal 的请求多年来也一直被拒绝。</p>

<p>因此,我只通过谣言了解了 Harmony,而且在我收到的关于 Harmony 的所有信息中,只有那些谣言,直到 Allison 在四月份将其公开。因此,我不认为 Fontana 有任何耸人听闻。</p>

<p>与此同时,对于四月之前的会议,仍然没有人能告诉我哪些公司的人参与了起草。我认识多位受邀参加会议的人(通过我上面提到的列表以及一些人是我的谣言来源),但由于查塔姆研究所规则(一套完全不适合为个人自由软件开发者制定政策的规则),他们<strong>仍然</strong>被禁止告诉我任何事情。</p>

<p>这绝不是一个透明的过程。事实上,就在本周,在 1.0 文档 <a href="http://lists.harmonyagreements.org/pipermail/harmony-drafting/2011-July/000085.html">以透明格式发布</a> 之前,需要<a href="http://lists.harmonyagreements.org/pipermail/harmony-drafting/2011-July/000083.html">多次</a> <a href="http://lists.harmonyagreements.org/pipermail/harmony-drafting/2011-July/000084.html">请求</a>。</p>

我在文章中没有提到的一件事(早期草稿深入探讨了细节,但我试图节省空间,即使这样我也将其分为两部分)是我自己对 Harmony 的有限参与,但我将在本评论中解释这一点。

我作为 Red Hat 的代表参加了一些会议,主要是在 Harmony 的早期阶段,并在私人邮件列表中发布了一些消息。我的参与基本上是观察性的,尤其是随着时间的推移,尽管早期 Amanda Brock 亲切地邀请我重现我在 LinuxCon 2010 上的演讲,该演讲是对贡献者协议主题的怀疑性处理(请参阅我的幻灯片 http://ref.fedorapeople.org/fontana-linuxcon.html)。我还应该注意到,Amanda Brock 鼓励并欢迎我参与 Harmony。(正如我理解的那样,此披露并未违反查塔姆研究所规则。)

的确,尽管有查塔姆研究所规则,Harmony 还是被宣传为向所有参与者开放(尽管我听说过一些关于感兴趣的参与者订阅私人邮件列表时遇到重大延迟的报告)。尽管如此,我认为“掩盖”是一个准确的描述。回顾过去,我认为 Harmony 的查塔姆研究所规则引起的保密性降低了其成功的机会。我发现,查塔姆研究所规则存在问题的原因之一是,它往往以比规则的实际制定可能暗示的更严格的方式进行自我解释。

我不确定为什么加入邮件列表很困难,而唯一的要求是“请求加入”。但是,根据 Alpha 版本之后的反馈,我们切换到完全公开的邮件列表,并使用完全公开的订阅网络表单。

我同意查塔姆研究所规则是一个不幸的选择。它们听起来不错且开放,鼓励协作,但在实际操作中,它们非常难以使用。

文档的格式与透明度无关,实际上与我的技术盲点有关。Creative Commons 仅提供许可证选择器工具,我没有想到人们可能想要 Harmony 模板的普通、老式的静态 PDF。(我仍然无法想象人们将它们用于什么。Harmony 是一个模板,您必须在使用前对其进行修改,那么静态 PDF 有什么用呢?)

我同意关于持续的、黑暗和怪异的“查塔姆研究所规则”的说法。在 Identi.ca 上听到所有这些黑暗和秘密之后,我在 2011 年 1 月注册了邮件列表,并从那时起一直潜伏在那里。

不知道这个想法是否是所有事情都已经一成不变了,但看起来肯定不是那样。

我看到很多关于 Harmony 将如何欺骗开发人员的说法,但短语版权转让协议说明了一切。如果您签署版权转让协议,您就同意转让您的版权。

当然,法律术语可能很棘手,但反 Harmony 人士应该给开发人员一些信任...

很抱歉听到您的经历 Bradley,我在 2010 年 6 月加入了邮件列表,没有大张旗鼓,并且收到了讨论列表中的 450 多封电子邮件。我不知道您引用的 ftf-legal 列表。

<p>我假设您在这里提到的<q>邮件列表</q> 特指(现在已弃用的)私人 Harmony 邮件列表,而<strong>不是</strong>我提到的其他私人邮件列表(例如 ftf-legal)(即,最初发送私人 Harmony 列表邀请的地方)。</p>
<p>我一点也不惊讶,作为微软支持的行业协会的领导者,您被明确邀请加入 Harmony。在我看来,当邀请公开(大约在 2010 年末)时,关键决策已经成为既成事实,那时我加入已经毫无意义。另外,我原则上也反对个人同意查塔姆研究所规则来参与自由软件公共政策制定。</p>
<p>我发现自由软件社区可能会考虑采用主要在这些保密规则下制定的政策文件,这完全是荒谬的。我确信这种过程对于像 Paula 的行业协会来说很常见,但这种保密性历来在自由软件社区中引起了严重的问题和困惑。Paula,您可能还记得您参与 United Linux 时 <a href="http://www.linux.com/archive/feed/25204">秘密决策造成的那些问题</a>。正如您和我当时都了解到的,财团在未咨询更大的自由软件社区的情况下进行的秘密决策只会引起问题。Harmony 正在重蹈覆辙。</p>

感谢您的评论 Bradley,为了澄清,我请求加入,我没有被邀请。关于 UnitedLinux LLC,随时乐意与您喝杯咖啡,一起回顾一下过去。这将是一个引人入胜的案例研究,说明为什么 LLC 不是非营利组织的最佳结构。

<p>我非常确定您的支持者(例如,微软)今年已经在 OSCON 购买了一些咖啡休息时间。如果您在那里,我们应该在休息时间见面!</p>
<p>我很高兴看到您不认为 LLC 是希望在自由软件社区中运营的组织的良好结构。我假设这意味着您和我一样,不认为开放创新网络 (OIN) 结构良好?</p>

Brandley,请到 Outercurve 展位 #918 停下来,就我个人而言,我更喜欢自己买咖啡,不喜欢批量冲泡的免费咖啡。

<p>就我而言,我尽量避免贸易展展厅的批量冲泡性质,因此希望我们能在一些演讲中赶上。我将在星期五演讲;我希望你能来。俄勒冈会议中心的咖啡还不错,而且唯一可以购买的咖啡是大公司星巴克,反正也不是那么好。我想 501(c)(6) 类型的人不太介意大公司咖啡。</p>

入站=出站约定对于像我这样的小贡献者(和新手)来说最容易理解。“最小化主义”方法似乎最能同时满足这两种需求。“最大化主义”协议我会称之为“可怕”,而且我在第一次遇到后就避开了它们。感谢 Fontana 先生对这些方法使用清晰而恰当的术语。

作为对查塔姆研究所规则讨论的后续,良好的开放协作开发和自由软件项目如此有效的原因之一是,过去做出的决策可以通过公共存档进行审查。当关于谁说了什么的决策过程被匿名性掩盖时,就无法在以后重现和理解为什么做出决策。这破坏了社区学习、自我修复和改进的能力。过去决策的理由留给在场者的记忆,我们知道记忆可能是多么不准确。

在大多数社区中,<a href="https://www.theopensourceway.org/wiki/Communities_of_practice#Develop_both_public_and_private_community_spaces">拥有一些私人空间</a> 进行一些讨论是一个好主意,但相关材料需要<a href="https://www.theopensourceway.org/wiki/Stuff_everyone_knows_and_forgets_anyway#Take_extra_extra_extra_care_to_have_all_discussions_in_the_open">回到公共空间</a>,以便所有人理解,如果不同意,至少不会对秘密推理感到惊讶。

Creative Commons License本作品根据 Creative Commons Attribution-Share Alike 3.0 Unported License 获得许可。
© . All rights reserved.