導(dǎo)讀:開源社區(qū)作為資源集聚的平臺,全球開發(fā)者與使用者、合作伙伴在這進(jìn)行思想碰撞、技術(shù)建設(shè),還承擔(dān)開源項目孵化、商業(yè)運作等職能,在推動開源軟件發(fā)展的過程中起著巨大的作用。
正值開源吞噬世界的當(dāng)下,據(jù) GitHub 2021 年度報告顯示,目前GitHub用戶數(shù)已超 7300 萬,越來越多的開發(fā)者參與開源,積極與社區(qū)里全球開發(fā)者共同學(xué)習(xí)和創(chuàng)造。
開源社區(qū)作為資源集聚的平臺,全球開發(fā)者與使用者、合作伙伴在這進(jìn)行思想碰撞、技術(shù)建設(shè),還承擔(dān)開源項目孵化、商業(yè)運作等職能,在推動開源軟件發(fā)展的過程中起著巨大的作用。
盡管開源社區(qū)可稱為“開放源代碼社區(qū)”,但如果僅僅只是開放源碼,忽視開源社區(qū)建設(shè),將引發(fā)眾多不良后果:沒有充足的貢獻(xiàn)者與維護者來支撐項目發(fā)展;用戶需要的服務(wù)支持力度與日俱增;沒有成熟的商業(yè)模式,缺乏行業(yè)認(rèn)可與持續(xù)投資;開源社區(qū)貢獻(xiàn)門檻過高;沒有完善的項目文檔、貢獻(xiàn)者引導(dǎo)指南與培訓(xùn)認(rèn)證等支持……
長此以往,如大樹失去養(yǎng)分,整個開源社區(qū)將會失去生命力,更無需談開源項目的持續(xù)發(fā)展。因此豐富開源社區(qū)的多樣性和包容性,需要我們積極從開發(fā)者的需求出發(fā)來運營社區(qū),讓其快速成長。
在具體運營的社區(qū)的過程中,有哪些維度的指標(biāo)可以作為參考標(biāo)準(zhǔn)?有哪些舉措可以不斷激發(fā)社區(qū)生命力?
衡量開源社區(qū)健康度,CHAOSS 有妙招
為推動社區(qū)健康度的建設(shè)工作,Linux 基金會下度量開源項目與社區(qū)健康度的開源項目 CHAOSS 應(yīng)運而生。CHAOSS 分了不同的工作組來完善社區(qū)的相關(guān)指標(biāo),幫助大家更好地衡量和管理社區(qū),具體從以下幾大方面入手:
通用指標(biāo):定義多個工作組使用的指標(biāo)或?qū)ι鐓^(qū)健康關(guān)鍵的指標(biāo)。
多樣性、平等性、包容性:多樣性、公平和包容性是開源社區(qū)健康的核心,該工作組旨在定義指標(biāo)和方法,來幫助他人衡量和集中多樣性、公平性和包容性,并將其納入自己的開源項目。
Evolution 指標(biāo):目標(biāo)是制定指標(biāo)來評估開源項目的生命周期。
風(fēng)險評估:關(guān)注與開源風(fēng)險相關(guān)問題的指標(biāo)。
價值:制定指標(biāo),推進(jìn)大家理解和衡量開源項目的價值,提高社區(qū)的影響和透明度。
度量軟件平臺:提供基于CHAOSS指標(biāo)的度量軟件平臺,評估社區(qū)健康度
今年 10 月 CHAOSS 發(fā)布最新的度量指標(biāo),在近百個指標(biāo)中,有從委員會/理事會多元化、導(dǎo)師制等宏觀方面來衡量社區(qū)的健康度,還有從微觀角度,如開發(fā)者 clone 代碼、fork、議題解決等方面來衡量開發(fā)者的參與度。指標(biāo)傳送門:https://chaoss.community/wp-content/uploads/2021/10/Chinese-Release-2021-10-21.pdf
建設(shè)社區(qū)生命力:點滴積累,聚木成林
據(jù)紅帽公司的調(diào)查報告顯示,有 95% 的企業(yè) IT 領(lǐng)導(dǎo)者認(rèn)為開源軟件“具有重要的戰(zhàn)略意義”。
盡管如此,在具體建設(shè)社區(qū)生命力并非一朝一夕的事,中國信通院云計算與大數(shù)據(jù)研究所云計算部副主任郭雪表示,需規(guī)范社區(qū)治理、社區(qū)運營、社區(qū)開發(fā)、基礎(chǔ)設(shè)施這四方面相關(guān)指標(biāo),方能助力社區(qū)生態(tài)發(fā)展。
在社區(qū)治理上,需規(guī)范好行為準(zhǔn)則、貢獻(xiàn)者協(xié)議、貢獻(xiàn)者類型等成員管理;做好用戶文檔、開發(fā)者指南、變更日志等文檔管理;建立項目管理、代碼審查、法律合規(guī)審查、安全管理等組織結(jié)構(gòu);制定決策機制、投票機制、反饋機制、輔導(dǎo)機制、發(fā)布機制等流程規(guī)范。
在社區(qū)運營上,進(jìn)行活動分級、多樣化門票設(shè)置等會議活動;積極開展外部合作;開展培訓(xùn)認(rèn)證,以降低開發(fā)者門檻、利益驅(qū)動為目標(biāo),構(gòu)建良好開發(fā)者生態(tài);關(guān)注用戶生態(tài)發(fā)展,拓展用戶最佳實踐,提高產(chǎn)品易用性、降低使用門檻;進(jìn)行社區(qū)活躍度監(jiān)測。
在社區(qū)開發(fā)上,做好開源軟件選型、依賴軟件使用、開源軟件維護(漏洞修復(fù))等依賴管理;建立合入管理、編碼管理等編碼規(guī)范;做好構(gòu)建環(huán)境、構(gòu)建執(zhí)行過程、構(gòu)建結(jié)果、構(gòu)建數(shù)據(jù)源等構(gòu)建管理;漏洞修復(fù)方案管理、漏洞感知、漏洞可追溯、漏洞驗證等漏洞管理;還有分支版本與工作流管理等需求管理。
在基礎(chǔ)設(shè)施上,關(guān)注網(wǎng)站、代碼倉庫、構(gòu)建平臺、發(fā)布平臺、開源代碼掃描工具、CLA簽署工具、測試平臺等的運行。
在實際落地中,有哪些注意點呢?對此,擁有近 10 年開源社區(qū)建設(shè)經(jīng)驗,CHAOSS 社區(qū)董事會成員王曄暉老師分享了他的洞察:
Q:什么是社區(qū)生命力?
王曄暉:社區(qū)生命力可以從生態(tài)角度出發(fā),構(gòu)建一個社區(qū),就是構(gòu)建一個生態(tài),生態(tài)可以是亞馬遜雨林生態(tài),也可以是沙漠生態(tài)。一個健康的生態(tài)是一個可持續(xù)發(fā)展的有活力的生態(tài),面臨內(nèi)外干擾后,可以通過自我調(diào)節(jié)恢復(fù)。所以為了保證社區(qū)的持續(xù)活力,需要構(gòu)建一整套生態(tài)治理架構(gòu),建立規(guī)則,確保一切有序演進(jìn)。
Q:活躍的社區(qū)生命力給開發(fā)者帶來哪些幫助?
王曄暉:要根據(jù)開發(fā)者背后的貢獻(xiàn)屬性(CHAOSS contribution attribution)來看待,他代表個人開發(fā)者,還是代表組織、公司來參與貢獻(xiàn)。個人而言,是構(gòu)建個人開源社交明信片的過程,對于代表公司而言,不僅是個人明信片,公司的參與一定帶有商業(yè)目的的。
Q:如何評判開源圈提出的眾多度量指標(biāo)的差異?
王曄暉:大致可分為以下四種維度進(jìn)行對比:
一、定性指標(biāo) VS 量化指標(biāo):
定性指標(biāo):吸納主觀因素,非結(jié)構(gòu)化,經(jīng)驗性,難以歸類,如開發(fā)者滿意度。
量化指標(biāo):提供可靠的量化結(jié)果,排斥主觀因素,缺乏直觀的洞察,如 issue的首次響應(yīng)時間。
目前存在過度依賴量化指標(biāo)的情況,另外假如調(diào)查方通過激勵等手段來收集問卷,可能存在利益導(dǎo)向,這將導(dǎo)致用戶對定性指標(biāo)的質(zhì)量不信任。
二、虛榮指標(biāo) VS 可付諸實踐指標(biāo):
虛榮指標(biāo):點擊量、頁面瀏覽量、訪問量、獨立訪客數(shù)、Star 數(shù)、網(wǎng)站停留時間、用戶郵件地址數(shù)量、下載量。
可付諸實踐指標(biāo):有比較性的、簡單易懂的、有比率的,如開發(fā)者留存率。
虛榮指標(biāo)有個共性特點:只會單向遞增,不會下降。從另一方面來看,這些指標(biāo)由于簡單易懂,方便宣傳提升知名度。但是假如將它作為社區(qū)的北極星指標(biāo),可能存在較大的誤導(dǎo)性,將有可能造成社區(qū)運營南轅北轍。
三、探索性(先見性)指標(biāo) VS 報告性(后見性)指標(biāo):
探索性(先見性)指標(biāo):推測性,用于預(yù)見未來,如下一個月開發(fā)者流失率預(yù)測。
報告性(后見性)指標(biāo):解釋過去,如上一個月開發(fā)者流失率。
當(dāng)前基本為報告性指標(biāo),而缺少探索性指標(biāo),前者只能用于解釋過去,無法直接指導(dǎo)社區(qū)后續(xù)改進(jìn)措施,例如無法使用大數(shù)據(jù)的方式進(jìn)行數(shù)據(jù)分析。目前華為正在通過大數(shù)據(jù)方式引入機器學(xué)習(xí)和深度學(xué)習(xí),建立探索性指標(biāo)度量模型。
四、相關(guān)性指標(biāo) VS 因果性指標(biāo):
當(dāng)前現(xiàn)狀指標(biāo)與指標(biāo)間割裂,缺乏相關(guān)性探索,和因果性分析可以通過建立度量模型,分析模型內(nèi)指標(biāo)間的相關(guān)性或因果性關(guān)系。通過分析結(jié)果,可指導(dǎo)社區(qū)從哪些方面著手,如開發(fā)者留存率與社區(qū)活躍度、開發(fā)者多樣性之間的相關(guān)性和因果性關(guān)系等,未來在這些方面將是華為社區(qū)度量探索的重點方向。
Q:在具體實踐中,我們?nèi)绾渭せ钌鐓^(qū)生命力以提升開發(fā)者體驗?是否有應(yīng)用到一些前沿技術(shù)?
王曄暉:以華為為例,通過在社區(qū)度量模型建立反饋機制,及時了解開發(fā)者的反饋,便于精進(jìn)和改善社區(qū)治理機制;利用前沿 AI 技術(shù)來輔助社區(qū)的運營,通過對基礎(chǔ)設(shè)施的技術(shù)優(yōu)化和智能化來提升用戶體驗;引入開發(fā)工具鏈外溢機制,將華為技術(shù)優(yōu)秀的編碼規(guī)范機制、研發(fā)流程、技術(shù)工具等外溢到社區(qū)里。華為聯(lián)合合作伙伴組建社區(qū)治理委員會和技術(shù)委員會,凝心聚力督進(jìn)社區(qū)建設(shè),源源不斷為社區(qū)注入活力。
另外,在大力發(fā)展華為開源社區(qū)之余,華為與 CHAOSS 社區(qū)共享開源治理、社區(qū)運營、基礎(chǔ)設(shè)施經(jīng)驗,共同探討開源項目和社區(qū)的度量標(biāo)準(zhǔn)。華為通過十多年在開源的點滴積累,不斷促進(jìn)中國以及全球開源產(chǎn)業(yè)的發(fā)展,實踐聚木成林愿景。
持續(xù)激發(fā)社區(qū)活力:凝心聚力
樹木要想茁壯繁茂,森林要想蔥郁成林,離不開整個生態(tài)環(huán)境的發(fā)展。激發(fā)社區(qū)生命力,不能僅靠某一家企業(yè)突飛猛進(jìn)式的努力,只有產(chǎn)業(yè)各方基于開源協(xié)作的創(chuàng)新模式推動產(chǎn)業(yè)生態(tài)構(gòu)建,共建多樣性、包容性的開源生態(tài)。華為推出“開源雨林”計劃、高校人才培育等計劃,攜手合作伙伴、高校、社區(qū)等共同推動我國和全球開源業(yè)態(tài)的發(fā)展。