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 等大公司近年來也逐漸開始定期發布開源軟件。