歡迎光臨
每天分享高質量文章

從使用者成為“股東” —— 在 Apache 基金會的 2600 天

4 月 1 日,騰訊雲大資料及人工智慧產品研發的專家研究員堵俊平受邀成為 Apache 軟體基金會成員,一封名為 “邀請成為 ASF 成員” 的電子郵件正式為堵俊平敲開了開源世界的新大門。

— 騰訊開源

 

轉自:mp.weixin.qq.com作者:騰訊開源

4 月 1 日,騰訊雲大資料及人工智慧產品研發的專家研究員堵俊平受邀成為 Apache 軟體基金會成員,一封名為 “邀請成為 ASF 成員” 的電子郵件正式為堵俊平敲開了開源世界的新大門。

從使用者成為“股東”
—— 在 Apache 基金會的 2600 天

從 2011 年開始為 Hadoop 的初始版本打補丁,堵俊平已經在 Apache Hadoop 社群深耕了 8 年,13 年成為提交者,15年成為 PMC 成員,時至今年,正式榮升 ASF 成員。“我很榮幸,但從此,我也有了更多的責任。”

現在全世界有 883 位 ASF 成員 ,中國區僅有 13 人,其中較為出名的包括 Kyligence 聯合創始人兼 CEO 韓卿(Luke Han) ,以及中國開源社的理事長劉天棟(Ted Liu)。

與在一個專案單元下垂直貢獻不同,ASF 成員會收到 Apache 基金會下超過 350 個開源專案的季度報告,橫向地對更多的專案起到管理義務。

ASF 成員關註的是 Apache 基金會本身,這通常透過專案相關和跨專案活動來證明。從法律上講,成員是基金會的“股東”,也是業主之一。他們有權選舉董事會,成為董事會選舉的候選人。他們也有權作為導師提出一個新的孵化專案。

有一點需要特別指出,Apache 基金會中從提交者開始的每個角色都只能透過他人提名並投票決定,這代表社群夥伴的認可,每上一個新臺階的背後都有著日日夜夜事無巨細的付出:不斷貢獻高質量程式碼、提交補丁,組織釋出,回答使用者問題,參與投票,培養和提名提交者,發表合理合適意見,還有一些影響更加深遠的貢獻,推動騰訊內部持續貢獻 Apache 基金會,組織駭客松和聚會 ,身體力行地推廣 Hadoop,傳遞開源理念。

堵俊平今年的想法是主動去挖掘 1-2 個合適的專案,推薦進入孵化流程,“Mentor 有點像投資人,只不過我們是拿出自己的時間來投資”,堵俊平做了這樣的比喻,時間比資金更有限、更私人,所以選擇開源專案時會堅持從技術驅動,在自己有興趣的領域幫助有潛力的專案快速成熟。

程式碼、人,社群都在成長
—— Apache基金會的運作樣式

Apache 基金會的官網上有幾十份、累計數十萬字的檔案內容在介紹 Apache 基金會的運作樣式,在真正接觸到基金會的“內部人士”前,外界似乎很難相信一個跨時區、跨文化、跨公司的組織能夠嚴格按照這樣的樣式運作了 20 年。它詳細到超乎想象,哪怕是針對一些意外情況,也多能在這些檔案找到解決方案。

“ASF 成員想要退休怎麼辦?”,“決策投票的有效期在跨時區的情況下如何保證?”,“投出 +0.9 票的成員是怎麼想的”……諸如此類。

Apache 基金會中的每個人、每個專案、每個社群,都並非固定一成不變的,它是一個極其動態的過程,每個人、專案和社群時刻都在成長,而這一切是透明的,作為一個普通使用者,幾乎不要花多少功夫,你就能瞭解這個龐大的社群每天發生的一切變化:程式碼量的增減、提交者的變化、最新的釋出清單。Apache 基金會像是一個精密的齒輪,日夜不停地轉動,開源這個概念自身的魅力正是其磨合劑。

作為社群中的人,只要你參與在 Apache 基金會的專案中,你就肯定能找到一個對應角色:

◈ 使用者User開始使用一個或多個 Apache 基金會的開源專案。
◈ 貢獻者Contributor提交程式碼或檔案的patches,在官方渠道(郵件串列,IRC 等)支援其它使用者。
◈ 提交者Committer持續貢獻,堅持貢獻,被提名、投票透過後,擁有直接訪問並提交程式碼的許可權。
◈ 專案管理成員PMC Member做了更多不侷限於程式碼的貢獻,進入單個專案個管理委員會,透過投票影響這個專案的發展方向。
◈ Apache 基金會成員ASF Member對 Apache 基金會直接負責,在多個專案中做出貢獻,擁有董事會的投票權。

如果你已經在維護一個開源專案,想讓它進入 Apache 基金會,那你則需要充分瞭解專案在社群不斷演進的過程,“提名→進入孵化器→成為頂級專案”,每一步都有跡可循。

(圖為一個開源專案進入孵化器的過程)

從 Apache Way 到 Tencent Way
—— 以 TOSA 加速力行開源實踐

Apache 之道影響了包括騰訊在內的眾多中國公司,近幾年,中國的開源愛好者們在大會演講中終於不是隻會講系統是如何設計的、程式碼是如何實現的,“開源社群”成為業內一個有點抽象的流行詞。

“社群”到底是什麼?其實就是多人+互動關係,開源社群就是指大家的互動關係圍繞著開源專案而產生。不過這種關係並不會憑空產生,原始開發者需要站在一個完全陌生的開發者角度去思考“我為什麼要加入你?

這裡有很多方法已經在 Apache 之道中得到總結:首先這應該是一個創新的專案,簡單易懂的上手指南、詳細全面的專案檔案、統一規範的程式碼格式,都能夠降低其他開發者的門檻,吸納貢獻者之前要先想清楚專案需要哪方面的幫助,貢獻者加入之前也要明確如何協調工作。

對於自由開發者來說,踐行以上方法,可能只需要多一點點決心而已,但對於公司體制下的開源開發者,得到公司和所在團隊的支援也許更加實際。

18 年中旬,騰訊正式成立了開源管理辦公室,騰訊 BG 相對獨立、自下而上的管理樣式其實和 Apache 軟體基金會頗有類似之處,因此這個辦公室的組織架構也設計成類似於 Apache 軟體基金會的樣式。開源合規組應對開源的法律風險,TPMC 聚集了每個專案的內外部開發者,而這個略帶江湖氣息的騰訊開源聯盟(TOSA)則是整個組織的大腦,負責決策騰訊開源要向哪個方向前行。

堵俊平現任騰訊開源聯盟的主席,除了負責 Apache 基金會 的各項事宜外,他還主動承擔起管理和治理騰訊開源工作的職責。“我非常高興能看到騰訊開源選擇 Apache 的樣式,這奠定了一個專案不斷壯大的基礎,對於發展中遇到的問題,我會堅持開放透明的方式去解決”,堵俊平提出了三點標的:

1. 改進騰訊開源的審核流程。釋出統一的審核平臺,能讓大家看到自己及其它正在審核中的專案的行程,儘量從內部開始,就把流程透明化。此外,目前開源前的審核大多是法律方面的流程,很少有針對專案本身程式碼質量、檔案建設的考量,我希望騰訊也能發揚導師制度,導師深度參與到一個新的開源專案中,給予幫助。我們甚至可以建立一個 tencent-incubator 的倉庫,放置一些不那麼成熟的專案,這樣外部開發者使用的時候也更容易選擇:選擇成熟的,成本低;選擇孵化中的,有機會一起改變。
2. 幫助專案構建外部的生態。對於構建開源專案的外部生態,堵俊平表示這對騰訊來說並不是一個輕鬆的過程,除了他個人願意作為導師推薦騰訊的開源專案在 Apache 基金會中孵化成頂級專案以外,騰訊雲也在持續為開源 Hadoop 等專案貢獻補丁和功能,包括驗證釋出用於生產環境。
他表示騰訊雲願意為開源專案提供支援,可能有很多方式,幫助開源專案打包成商業級服務在騰訊雲上便捷的提供給使用者,或者組織技術大會給開源提供更多的曝光視窗等。
3. 建立騰訊對開源的評估體系。“國內有一些有關各大公司開源水平的評價新聞我認為並不夠確切,純粹去比拼數量和 Star 其實是個簡單粗暴的行為”,堵俊平談到:“就像 Apache 基金會對孵化的專案提出的要求——至少有來自三家公司以上的貢獻者才能畢業,這個行為其實是在保護使用者,我希望騰訊對於自己的開源專案也能有一些更加細緻、更加專業的評估體系,這樣無論在任何場合,面對任何報道,我們都讓外界對騰訊的開源、騰訊的技術充滿信心。

已同步到看一看
贊(0)

分享創造快樂