聊下自己的开源实践和The apache way

题记与声明

最近在不同的开源场合都听到了The apache way这篇文章,今天抽机会拜读一下,顺便写个笔记,建议阅读原文。本文中对部分内容有节选。

什么是 The apache way

原文就是这篇博客:https://blogs.apache.org/foundation/entry/the-apache-way-to-sustainable
这是一篇在apache基金会成立20周年之际,发表的一篇博客,里边回顾了20年来apache基金会的使命,同时作为20年来apache基金会的“行为准则”。
“This approach, The Apache Way, was defined over 24 years ago by the original Apache Group, prior to the establishment of the Foundation. It has led to our success as a foundation and we believe it has been fundamental to the triumph of Open Source as a whole.

While The Apache Way has been refined over the years, it remains true to the original goals of transparent, community-driven collaboration in a vendor-neutral environment that is accessible to all.”

具体而言

““The mission of the Apache Software Foundation (ASF) is to provide software for the public good. We do this by providing services and support for many like-minded software project communities consisting of individuals who choose to participate in ASF activities.” ”

“Apache软件基金会(ASF)的使命是为公众提供软件。我们通过为许多志同道合的软件项目社区提供服务和支持,这些社区由选择参加ASF活动的个人组成。”

为公众提供软件 “Provide Software for the Public Good”

  • We produce software that is non-excludable and non-rivalrous

  • 我们生产的软件是非排他性和非竞争性的

  • Use of the software in any context does not reduce its availability to others

  • 在任何情况下使用本软件都不会降低其对其他人的可用性

  • Users and contributors have no committed responsibility to the foundation, our projects or our communities

  • 用户和贡献者对基金会、我们的项目或我们的社区没有承诺的责任

    扫描二维码关注公众号,回复: 15239347 查看本文章
  • Use of a license that conforms to the Open Source Definition is necessary but not sufficient to deliver on our mission

  • 使用符合开源定义的许可证是必要的,但不足以完成我们的任务

由于开源软件可以无限制的进行数字复制和分发。甚至根据用户需要进行修改,并与其他软件组合使用来构建新的产品。因此,在不影响他人使用的情况下,ASF的生产软件可以用于许多不同的方式用于公益事业。但同时也需要一个法律方式保护基金会管理的软件许可。也就是我们常说的Apache License 2.0. 概括为

  • 许可证必须满足开源定义(OSD).

  • 在实际应用中,许可证不得施加超出Apache许可证2.0的限制。

这意味着您可以放心,由Apache软件基金会内的项目管理的软件是两者兼而有之的公共物品和为了公众利益. 您可以出于任何目的使用Apache软件,并且您对基金会或项目不承担任何责任(尽管如下一节所述,这样做通常符合您的利益)。

虽然OSD批准的许可证和相关的策略对于成功的开源产品是必要的,但是它们还不够。它们为开源产品提供了一个法律框架,但没有提供一个社会框架,这让我们看到了我们使命的第二句话:

“志同道合的软件项目个人社区” “Like-Minded Software Project Communities of Individuals”

  • The Apache Way provides a governance model designed to create a social framework for collaboration

  • Apache方式提供了一个治理模型,旨在为协作创建一个社会框架

  • The Apache Software Foundation develops communities, and those communities develop software

  • Apache软件基金会开发社区,这些社区开发软件

  • ASF project communities develop and reuse software components that in turn may be reused in products

  • ASF项目社区开发和重用软件组件,这些组件又可以在产品中重用

  • Users of ASF software often build products and services using our software components

  • ASF软件的用户通常使用我们的软件组件来构建产品和服务

  • Our model, and others like it, have produced some of the largest and longest-lived Open Source projects that have literally revolutionized the industry

  • 我们的模式,以及其他类似的模式,已经产生了一些规模最大、寿命最长的开源项目,这些项目实际上已经彻底改变了这个行业

这几句话里有很多东西。正是对这些词的理解,才使得在开源许可下的软件和通过Apache方式实现可持续发展的软件之间的区别。这些话强调了这样一个事实:基金会并不直接生产软件。没错,拥有超过80亿美元软件代码的Apache软件基金会并不直接生产软件。我们关注的不是软件,而是协作社区的创建和支持;该软件是有意的副产品。

我们志同道合的项目社区聚集在一起,因为他们共享可以在软件中解决的共同问题。俗话说,“一个共同的问题就是一个问题减半”。通过将具有独特想法和技能的个人聚集在一起,我们打破了合作的障碍。

Apache Way经过精心设计,为协作创建了一个社会结构,它补充了上面讨论的法律框架。在法律框架确保使用软件的平等权利的情况下,Apache方式确保了对软件做出贡献的同等能力。这对于开源软件项目的长期可持续性至关重要。这种用于协作的社会结构在许多非Apache项目中都是缺失的,然而一个健壮的社会结构始终是ASF之外的长期成功项目的关键组成部分。

Apache Way是完全包容的、开放的、透明的和基于共识的。或从单一供应商(或供应商)促进不适当的控制。它确保任何有价值贡献的个人都能得到授权,并努力确保一个项目能够持续下去,尽管随着时间的推移,社区成员不可避免地发生变化。

Apache项目通常会生成一些软件组件,这些组件可以以不同的方式与其他软件(任何许可证)组合在一起,以解决不同的问题。这为参与者在给定的软件项目中独立于基金会之外的关系进行协作提供了大量的机会。这与在开源许可下将产品作为一个整体进行授权的想法截然不同。我们的模型提供了更多的重用机会,这反过来又增加了可能对项目做出贡献的人员。

Apache Way的一个核心原则是“社区优先于代码”,它概括了我们的深刻信念,即健康的社区比良好的代码具有更高的优先级。一个强大的社区总是可以纠正代码的问题,而不健康的社区可能会努力以可持续的方式维护代码库。健康的社区确保了基金会在未来20年及以后的稳定发展。其他只关注开源项目的Apache框架也受到了影响。如果您环顾一下与Apache项目一起成长起来的项目,您将看到对治理模型的扩展有类似的关注。这不是意外。

为什么这个重要

在Apache软件基金会,我们相信每个开发人员都有自己构建软件的动机。我们庆祝他们选择何时以及如何构建软件的权利,包括使用非开放式许可证的权利。

我们不会规定什么对开发人员或软件行业是最好的。

我们关心的是软件的提供,使我们的用户、贡献者和公众能够决定什么是对他们最好的。

我们欢迎您使用我们的软件,并为我们的项目作出贡献——或者不。这取决于你。

我们要求你们不要有商业利益。

无数的组织正在证明,他们的团队成员在与供应商无关的环境中协作时,通常会将开放式创新过程(如Apache方式)应用到他们的工作中。这有助于提高内部效率,并为新的外部机会奠定基础,这些机会可能会带来额外的好处。

只为您的意图贡献最好的服务于更大的Apache社区,可以增强人们对Apache品牌背后的人员和项目的信任,并帮助我们实现为公众利益提供软件的使命。

我们一起学习,一起工作,尽我们所能提供最好的软件。

所有人都可以使用Apache软件。

自由选择是基金会和Apache项目如此强大的原因。

原文总结

软件行业已经发生了变化,并且还在继续变化。软件交付给最终用户的方式已经改变。我们这个行业的一些领导者已经退休,新的领导者出现了。但有些事情并没有改变。我们的协作软件开发模式,通过许可和社会框架的结合,仍然是最成功的软件生产模式之一。

增加用户的数量,即使是那些没有贡献代码的用户,在开源中应该被看作是一种好处,而不是问题。更多的用户提供了一个机会。在Apache,更多的用户意味着更多的成功,因为他们是我们未来的贡献者。

感悟

The apache way实际上是对于apache的开源社区原则“社区优先于代码”的一份很好的阐释。具体来说阐释了开源行为,商业行为,个人行为之间的区别与联系。定义了如何使用,参与,贡献到开源社区的活动中。并将这些行为,通过apache license进行规范化。
在同时,也解释了开源项目某种意义上是要有益于社会和公众价值的产物/项目。使得其他人可以基于开源项目开发和设计自己的商业项目。

猜你喜欢

转载自blog.csdn.net/oe1019/article/details/122028111
way