开源软件 (OSS) 的可持续性依赖于愿意为项目做出贡献的热情开发者。因此,项目的生存能力取决于其留住开发者、招募新开发者(即新手)的能力,以及更重要的,创建用户社区以促进其采用和使用。
随着 OSS 项目的增长,贡献者倾向于组织起来并创建社区以推动开发过程。然而,许多项目缺乏正式的模型,尤其是治理模型,来构建和管理围绕它们的(可能庞大的)社区。对于所有项目来说,支持处理各种组织决策(包括法律和经济方面)是一个巨大的关注点。事实上,我之前报道过 GitHub 中排名前 25 的星标项目的透明度和治理模型的一些结果。简而言之,结果令人鼓舞,但仍需付出很多努力。
OSS 基金会
在其他领域,非营利性倡议和基金会(公共或私人的)组织起来为社区提供法律和经济基础设施。它们还可以定义许多关于非营利组织和非政府组织的活动、会员资格和决策过程的内部规章。
同样,近年来,围绕 OSS 创建了许多基金会。软件基金会是非营利性组织,其使命是为开放和协作的软件开发提供必要的基础。它们还为个人志愿者提供法律框架,并使资源的捐赠能够用于公共利益。然而,基金会之间存在很大的差异,并且关于它们差异的信息很少。
以 Apache 软件基金会和 Linux 基金会这两个最著名的软件基金会为例。它们遵循不同的策略来管理它们涵盖的项目。Apache 软件基金会提出了一种精英管理系统,不同的委员会控制和驱动多个软件项目的开发(董事会监督整个过程),而 Linux 基金会则遵循灵活的方法,并充当其项目的保护伞,这些项目可以部署特定的开发流程,并更专注于推广 OSS 的好处。
作为我在 SOM 研究实验室的研究的一部分,我研究了 OSS 基金会的不同类型及其对 OSS 项目开发的影响。目标是:1) 清晰地描绘软件基金会的当前发展水平,以及 2) 帮助开发者在创建新基金会或选择加入现有基金会时做出明智的决定。我们建立了一个包含 89 个软件基金会的数据集,根据其范围、开放性和对其项目开发实践的影响对其进行了分析。
我们在 国际软件工程会议 2018 的 软件工程与社会 专题讨论会上展示了这项研究的结果。我们的研究论文(您可以在 在线阅读)获得了 ICSE 2018 软件工程与社会论文奖。
探索 OSS 软件基金会
为了方便查询和理解 OSS 背景下的软件基金会,我最近发布了一个 网站,总结了我们研究的结果。

该网站包含关于 89 个软件基金会的信息,这些基金会根据以下维度进行分类
-
软件产品支持者? 我们检查数据集中的每个基金会,以了解其主要目标是否是支持特定的一组软件项目的开发。其他目标可能包括培训、认证或一般开源的推广。
-
国际范围? 这从地理角度研究基金会的分布(即,基金会具有国际性还是地方性)。
-
独立? 基金会可以为一个特定项目、一组项目服务,或者作为许多较小基金会的保护伞,这些基金会使用它来简化其创建、管理和法律流程。我们专注于独立的基金会。
-
明确的使命? 除了开发之外,基金会可能还旨在帮助项目进行社区培育或促进新的和相关项目的创建。这些目标通常在基金会的使命中声明,并在其网站或章程中提及。令人惊讶的是,相当多的基金会没有提供关于其使命的明确信息。
该网站以条形图和列表两种形式呈现结果,可以根据基金会的名称或上述维度进行查询。列表中的每个条目都显示所选基金会的名称、状态和维度值。
对结果的深入分析也有助于阐明 OSS 软件基金会在 OSS 项目开发中所扮演的角色,正如我们在我们的 研究论文 中探讨的那样。
这项工作类似于 chooseafoundation.com,但我们包含了更长的基金会列表。即便如此,我们的列表并非详尽无遗,可能包含错误。我想尽可能保持其更新,因此如果您发现任何错误或遗漏的基金会,请随时 向我发送问题。
2 条评论