Google 创建18年以来,一贯在自己发布的产品与服务中大量使用开源软件,但与此同时也向开源社区回馈了数百万行开源代码。3月28日,Google 开源项目办公室透过官方博客宣布,已经上线名为 Google Open Source 的新网站,力图将其“所有的开源项目及使用、发布和支持开源的信息整合在一起”,向外界进行一站式展示。
这个新网站表现了我们对开源深沉而广博的爱,它既包含众所周知的东西:我们的开源应用、我们支持的开源组织以及我们发布开源项目的完整列表;也包含一些意想不到的东西:公开内部文档,让人们看看我们如何进行开源。
Google 的开源项目办公室已经成立12年多,目前在此任职的工程经理 Will Norris 表示,新网站并非是 GitHub 那样的源代码网站,而是收录了 Google 所有开源项目的“主目录”,并公开了关于开源流程的大部分内部文档,且所有这些资料都可以基于知识共享许可协议(Creative Commons license)阅读与使用。
Norris 称 Google 开放源代码的原则之一是“越多越好”,因为不知道哪些项目可以找到受众,所以开源项目办公室就协助产品团队“尽可能多地发布源代码”。Norris 透露:“因此,我们已经开源了数以千计的许可项目,大型产品如用于各种感知和语言理解任务的机器学习开源软件库 TensorFlow 和编程语言 Go 等,小型项目如 Light My Piano、Neuroglancer 和 Periph.io 等。”这些项目目前都已经收录在新上线网站,并添加了如何使用它们的信息,而随着时间的推移,还将添加更多关于项目生命周期和成熟度的信息。
但是此次上线网站更引人注目的是 Google 公开了关于开源的内部文档,以便让人们可以“看看 Google 如何进行开源”。具体来说,“这些文档展示了 Google 如何发布新的开源项目、向他人项目提交补丁的过程、以及 Google 如何管理被带入公司的开放源代码等”;此外,还概述了为什么 Google 只使用某些许可证下的代码,又或者为什么 Google 要求所有补丁的贡献者标注许可协议。
对于任何希望开发开放源代码软件的公司,或者任何想知道大公司如何处理开源的人们,这都是至关重要的可参考对象。不过因循多年的经验教训,Google 也表示其开放源代码的特定方法不可能适用于所有人,因此这些文档不应被视为“操作指南”,而是希望人们能触类旁通,透过查看 Google 的处理方式找到适合自己的操作手法。
早在2014年,Google 即已联手 Facebook 等大公司创建开源项目 TODO Group,以便于公司之间的协作和技术分享更易实现,而 LinkedIn、Twitter、Pinterest 等大公司近年来也逐渐开始定期发布开源软件。