参与开源项目的9个理由

如今,个人和组织对于为开源作贡献有着前所未有的激情。据 Black Duck 第10期年度开源调查报告显示,有 65% 的受访企业表示正参与到开源项目,67% 的企业正积极鼓励员工开展自己的开源项目。由 Linux 基金会发布的 “Who Writes Linux” 报告也显示,自2005年以来总共有 13594 名开发者为该项目贡献代码。

110043_MhHr_2896879

创建和维护那些被广泛使用的开源项目每年可能需要耗费数千小时,为什么开发者会愿意花费时间和精力编写这些免费公开的代码?为什么企业会愿意让他们的员工编写代码,开源让其他公司甚至是竞争对手都可以使用?

以下总结了九个参与开源的最常见的动机。如果你之前没有参与过,看完或许会有兴趣去尝试一下。

1、改进代码&改善功能

大多数的组织和个人首先参与的是他们正在使用的开源项目,主要目的是想让项目/软件变得更完善,更便于自己使用。

当然,开发者也可以自由修改自己需要的功能,而无需将代码反馈给整个社区。然而,许多人会发现,将这部分的工作继续分享才是能让利益最大化的方式。因为如果他们没有贡献这部分功能的代码,会有一个风险是,当项目发布新版本,这些功能可能不再工作,需重新调试。

110241_rdK7_2896879

2、获取竞争优势&提升品牌形象

许多组织和企业参与开源以获取竞争优势。这听起来似乎有点不合常理,因为将代码开源给任何人都可以,怎么会有优势? 然而,实际情况是,当他们的开发人员为项目编写代码后,会比那些只使用的人更加了解该项目。而且有一些公司还能够利用这些专业知识来获得利润。

此外,这种行为也有助于提高组织和企业的声誉,提升品牌形象,特别是在开发者之间的口碑。带来的好处就是利于招聘和留住人才。

111127_BDC7_2896879

3、降低开发成本

在 Black Duck 2015年的调查中,组织表示他们贡献开源的首要原因就是为了降低开发成本。虽然到2016年,降低开发成本已在调查结果中降至第三,但这仍然十分重要。

当组织开源一个内部项目时,他们能够接触到更大的开发者群体。不再仅仅依靠自己的团队成员,从许多不同的人那里获得的贡献,都能让项目变得更好。通过加入开源社区,企业可以得到由数百或数千个开发者完成并提交过来的工作成果,远比自己团队的几个人或几十个人高效的多。

111901_Ugbm_2896879

4、支持开源信仰

有些企业会将开源和自由软件的承诺放在其核心价值观之中,甚至将其包括在使命或愿景中。与公司使命和价值观保持一致,也是开发者为开源项目作贡献的一大理由。

有些 leader 认为,开放和自由会让产品,甚至让世界更美好。 如前所述,这种价值观有时会给企业带来额外的好处,比如更强的品牌声誉,更好的招聘和留住员工等等。

112617_vmqF_2896879

5、促进行业标准

许多企业已经发现,行业技术标准就像是载舟而起的水,当做出来的产品符合行业标准时,他们实现了与市场上的相关产品更好的互操作性,这可以使他们的产品对用户更具吸引力。

整个技术行业已经有数十个组织致力于创建和维护开放标准,许多科技巨头也都在积极带领和资助这些组织,目的就是为了改进整个行业使用的核心技术。

113335_8l6Q_2896879

6、让项目更易用

不是只有开发者才能对开源项目作出贡献。项目还需要技术撰稿人创建文档,翻译人员将文本转换为其他语言,设计人员使界面更直观、更具吸引力等等。 事实上,许多开源项目都在积极寻找有这些技能的贡献者。

以这些方式作出贡献可以使项目更易用。更好的可用性通常意味着更大的用户群,吸引更多的贡献者,这也意味着能让项目长期保持高质量。

113917_OCHo_2896879

7、为更好的职业生涯而奋斗

据 Linux 基金会2016年发布的报告显示,有86%的专业技术人员表示开源对他们的职业生涯有所帮助。 许多公司都希望聘用具有与指定开源项目相关技能的人才,实际为项目贡献过的代码能更好的展示你的能力。

此外,在开源项目上的工作也可以帮助快速提高个人技能;通过与社区其他成员的密切互动,还可以扩宽你的人脉,这些都能给自己的职业生涯带来帮助。

115242_HD3f_2896879

8、回馈开源

回馈,也是许多开发者在被问及为什么要贡献代码的时候的答案。他们曾将别人开源的代码用在自己的项目当中,节省了大量的时间和精力。重复造轮子没有意义,大部分的工作已由他人做好。所以从开源中获益的开发者通常愿意“向前付费”,以便未来其他程序员可以体验到类似的好处。

115434_61Yh_2896879

9、享受乐趣

最后但并非最不重要的一点是,许多开发者参与开源项目,是因为他们觉得这件事情很快乐。 事实上,在 Linus Torvalds 写的讲述了他如何创建 Linux 的书中,他称此为“Just for Fun”。

许许多多的流行开源项目最开始都是源于创作者的喜好,他们也很享受这种能够创造任何自己想要的项目的自由。 确实,许多人长期参与开源不也是为了这种愉悦感吗。

164009_6u8v_2896879

原文:9 Reasons to Contribute to an Open Source Project

编译:开源中国


关注我

我的微信公众号:前端开发博客,在后台回复以下关键字可以获取资源。

  • 回复「小抄」,领取Vue、JavaScript 和 WebComponent 小抄 PDF
  • 回复「Vue脑图」获取 Vue 相关脑图
  • 回复「思维图」获取 JavaScript 相关思维图
  • 回复「简历」获取简历制作建议
  • 回复「简历模板」获取精选的简历模板
  • 回复「加群」进入500人前端精英群
  • 回复「电子书」下载我整理的大量前端资源,含面试、Vue实战项目、CSS和JavaScript电子书等。
  • 回复「知识点」下载高清JavaScript知识点图谱

每日分享有用的前端开发知识,加我微信:caibaojian89 交流