Facebook 尝试新的方法来发布开源项目

阅读数:1291 2016 年 8 月 2 日

话题:Facebook语言 & 开发架构

上周,Facebook 发布了Create React App,这个新项目旨在帮助 React 开发者快速上手其新项目。Create React App 这个新项目只是一个开始,它也成为了 Facebook 在 GitHub 上的孵化器的首个项目。

Facebook 孵化器是 Facebook 用于发布开源项目的新流程,用于确保这些开源项目能够长久平稳地运行。我们可以将其看作是 Facebook 新的开源项目的 Beta 阶段或是试验场。

Facebook 开源负责人 James Pearce 说,Facebook 孵化器的想法在于更好地管理这些项目的生命周期。Facebook 目前拥有将近 400 个开源项目,在 GitHub 上有数以万计的粉丝。他说到:“我们希望通过这一计划能够以最具效率的方式管理这些项目”。为了实现这一目标,Facebook 决定将大多数新项目加到这个计划当中,看看社区的反响以及使用率如何。

Pearce 强调说,孵化器中的所有项目(就像 Facebook顶级仓库中的那些)也在公司内部使用,并且有团队在积极地维护。不要认为孵化器中的这些项目就是质量比较差的项目。

要想从孵化器中顺利孵化出来,项目需要证明自己在社区中的影响力,不过 Pearce 说到,公司也会考察其他方面。比如说项目有没有人在用?项目文档质量好不好?将项目集成到其他工具中的难度如何?Facebook 与社区的参与度如何?“如果业界对项目产生了共鸣,那就是项目将要孵化出来的一个很好的信号”,Pearce 补充到。

Pearce 不止一次强调说文档是非常重要的一个方面,而文档恰恰也是很多开源项目经常忽略的一点。他说,Facebook 有一个专门的技术作者团队在从事着这件事(工程师也会一同参与),公司也在考察新的StackOverflow 文档服务,用于托管一些文档项目。

虽然孵化器旨在帮助项目沿着正确的轨道前进,但 Pearce 也强调说孵化器并不仅仅在于优化项目的启动与增长阶段,而是从长远来看要管理项目的完整生命周期。

并不是每个项目最终都会取得成功,Facebook 有时也会终止自己曾经开源的项目。虽然我们现在有了孵化器,但这种事情依然还会发生,不过团队显然希望项目在进入到主仓库之前能够纠正存在的种种问题。

Pearce 说 Create React App 是孵化器项目的一个很好的榜样,因为 Facebook 并不确定社区会怎样看待这个项目,不过他也提到依然会有一些项目会跳过孵化器这一过程。

Pearce 说到,“虽然我们发布了 React Native,不过我们可能会跳过孵化器这一阶段”。对于 Facebook 捐献给一些大型组织的项目来说亦如此,比如说 Open Compute 项目。孵化器本身是没有孵化阶段的,我们希望 Facebook 这个用于发布开源软件的新系统能够在可预期的未来大展拳脚。

查看英文原文Facebook tries a new way to release open-source projects