抵制數豆子:除提交次數外的開源影響力
開源互動有何價值?
無論您是釋出自己的程式碼還是為其他人的專案做貢獻,評估開源互動的有效性都是一項相當模糊的任務。
評估“互動成功與否”的傳統方法與可以輕鬆量化的事件密切相關。在體育運動中,可以通過比賽規則和身體表現來評估運動員,比如多快、多高和多少次。在銷售中,可能通過客戶轉化率和銷售額資料來衡量銷售人員。
開源社群評估與有形的工件和成果的關係沒那麼密切。開源社群中的“成功”涉及到 3 個關鍵領域:
- 個人影響力(我做了多大貢獻?)
- 組織影響力(您對社群有多重要?)
- 流行度(是否有人關心您在做什麼?)
這非常類似於研發。在研發中,人們可能通過發表文章數來評估個人影響力,通過專利數和所開發產品的銷量(間接銷量)來評估組織影響力,並通過引用率和市場份額來評估流行度。
本文特別關注組織影響力,並建議使用提交次數作為啟發方法來衡量組織與某個開源專案的互動水平。澄清一點,儘管收入是我們的經濟和許多業務的推動因素,但本文的關注點不是收入。我們關注的是價值;收入是一種結果。
您如何衡量開源互動的價值?
開源社群度量指標的當前正規化受到這些社群人員有限背景嚴重影響。具體來講,在電腦科學和 IT 領域擁有狹隘背景的人獲得的社會科學培訓很少,而且認為系統度量指標足以衡量人類。在系統中,精確率對識別效能瓶頸、上線時間和容量規劃很重要。
在傳統上,基於“員工的價值就是員工產生的工作量”的假設,科技行業將上述狹隘的背景應用於人類度量指標(這裡稱為“人類-系統度量正規化”)。因此,度量指標必須用非常高的精確率來衡量工作量,比如程式碼行數或解決的通知單數。此外,員工報酬和評級與報告的這些工作量直接掛鉤。
事實上,量化的工作量度量指標只能告訴我們關於工作的價值或性質的部分資訊,而不是全部。而且,在銷售中引入競爭機制,並且衡量的工作量與切實獎勵掛鉤時,這些指標可能導致行為差錯。
您是否改變過您的工作活動來“虛報”某個工作量度量指標?
人類無法用人類-系統度量指標來衡量,因為人太會糊弄了。度量指標應該由問題驅動(基於您的目標和價值以及您希望如何實現它們),而不是完全由資料驅動。事實上,如果沒有適當的反省和思考如何衡量指標如何影響您的更大目標(以及它們是否相關),就不應該開始收集任何資料。
您如何擺脫人類-系統度量正規化?
- 詢問更好的開源互動問題
- 尋找能引發戰略性討論的有意義答案(而不只是儀表板)
GitHub:一個針對編碼的社交網路平臺
許多開源社群和組織通過 GitHub 託管其專案(不要與 git 混淆,git 是一個命令列工具,GitHub 提供了它的介面)。GitHub 是一個包含等待分析的公共活動的寶庫,但 GitHub 本身無法在這一領域提供任何有意義的資訊!每一年,GitHub 都會發布 The State of the Octoverse 報告,這是資料驅動的度量指標的典型例子。該報告包含豐富的漂亮圖表和統計資料,但非常混亂和不連貫,無法講述任何故事或分享任何有深度或有意義的資訊。
每個儲存庫的頁面都包含提交數和貢獻者數量等基本統計資料。甚至還包含一個洞察頁面,上面提供了更多(但不是特別有見地)的統計資料。我們無法使用這些型別的人類-系統度量指標來獲得有意義的結論。
使用提交次數作為對影響力的度量
提交次數是一個被認為屬於程式碼更改的歷史記錄。目前,“排名”影響力的流行度量方法是統計提交次數,並根據識別出的一組作者資訊將它們分配給一位作者或一個公司。
常見問題:誰的提交次數最多?更好的問題:一個組織的影響力有多大?
識別組織關聯
標識公司的最常見方法是通過作者用於提交的電子郵箱地址的域名,或者通過作者的 GitHub 個人資料中的公司欄位來標識公司。公司欄位是自由格式的文字,沒有修改歷史,而且無法實際驗證。此外,只有少部分 GitHub 使用者在實際使用它。
讓使用者使用其工作電子郵箱地址向儲存庫執行提交,這是標識組織關聯的最可靠方法。但是,跨專案的準確性仍是一大挑戰,因為作者並不總是使用相同的電子郵箱地址,而且一些作者從不使用他們的工作電子郵箱地址。
解決此問題的人類-系統度量方法是,開發一個複雜解決方案來標識作者關聯,以便提高精確率,但這隻能獲得少量收益,而且複雜性和開銷會明顯增加。一個根據成熟的社會科學和統計方法構建的問題驅動的方法建議,您無需在意精確率,只要詢問正確的問題就行了。
我知道您至少能夠非常肯定地識別部分關聯。因此,要考慮的啟發方法是,如果一個組織互動積極,那麼他們在給定時間間隔內將至少擁有 1 次包含關聯的電子郵件域的提交。這種啟發方法也可以預防“遊戲化”,預防成員向專案執行大量錯誤提交來提升其排行榜位置,因為在給定時間間隔只進行一次計數。
警告:使用此啟發方法可能無法識別頻繁互動的組織。
採用提交模式而不是提交計數
互動頻率(提交間隔)
當您思考與人的關係時,與您關係最密切的人往往是您在較長時間內最常交流的人。使用此模型,您無需考慮提交計數,只需考慮您是否至少採用一致方式提交了一次,以及提交花了多長時間。這還展示了一個組織向一個專案提交了多長時間,這是單單一個提交計數所無法展現的。
具體來講,這個指標度量包含至少一次提交的時間間隔頻率(比如月),並回答了下面的問題:該組織參與互動已有多長時間?
互動週期(提交間隔順序)
描繪為時序時,上面演示的提交間隔也可以表明該組織參與互動的一致性。
每個組織的提交計數何時才足夠準確(且成本低)?
在開源領域,有兩種基本的治理型別:封閉和開放。封閉治理意味著,專案領導角色由單個實體控制,提交者主要與該實體相關聯。根據控制實體的目標,專案可能被轉換為開放治理專案,這意味著任何社群成員都可以承擔領導角色。在這些情況下,可以預料屬於原組織的提交者中具有更高的識別率。
當識別率基本上為 X 和 ~X 時,提交者與屬於每個小組的提交次數的比例應表明大部分提交是否與原組織相關。
提交者多樣性
一個專案的開放治理水平如何?理想情況下,一個開放治理專案不應讓大部分提交者代表一個組織。還可以使用這個度量指標來演示過去採用開放治理的專案上存在的問題,尤其是在確定存在某種已知的主要影響力時。
IBM Cognitive Open Technology 團隊最近 在 Index 大會上舉行了一次 Tensorflow 小組會議,有多位重要的 Tensorflow Google 員工參與了此會議。會議宣告,Google 在努力通過增加非 Google 提交者讓 Tensorflow 社群變得多樣化。
結束語
我演示了單看提交數和作者數不是特別具有洞察力。但是,隨著不斷地繪製圖表,您可以獲得組織與專案的關係性質的更多洞察。此外,因為您考慮的是可以更明確地識別哪些關聯,而不是窮追您不能識別的關聯,所以您可以衡量一個或多個組織是否主導著某個開源專案中的活動。
最後的思考:有關提交次數的注意事項
提交次數不是一種充分的互動度量。必須考慮其他活動才能開展有根據的戰略討論,更不用說提交次數本身的實際含義。此外,這裡提出的指標仍處於探索階段,有待嚴格驗證。無論如何,這些指標應該提供了一個起點,啟發您就自己的開源互動目標提出更好的問題並建立更好的交流。
其他資源
相關文章
- 1.迭代次數對精確度的影響
- 教育的數字化路徑:實現更大影響力
- 使用者研究影響力的三個層次
- 除數字貨幣,區塊鏈影響全球的八種方式區塊鏈
- 度量BGP監測源數量對AS可見性的影響
- 數字化轉型的影響是什麼?數字化轉型對企業的影響?
- 數十億次數學運算消耗幾毫瓦電力,谷歌開源Pixel4背後的視覺模型谷歌視覺模型
- 騰訊雲 CODING 入選“數智影響力”數字化轉型創新典型案例
- JVM 引數調整對 sortx 的影響JVM
- Java教程:影響MySQL效能的配置引數JavaMySql
- 尤拉計劃705:除數序列的逆轉次數
- 初露頭角!Walrus入選服貿會“數智影響力”數字化轉型創新案例
- linux系統影響tcp連線數的因素LinuxTCP
- GitHub 當機超兩小時,影響數百萬開發者Github
- 【刷力扣】1342. 將數字變成 0 的操作次數力扣
- 一次向linux開源社群提交補丁的經歷Linux
- 《影響力》閱讀筆記筆記
- 2020特斯拉影響力報告
- 數說疫情影響下的線上教育行業行業
- 只出現一次的數字--力扣力扣
- 科爾尼:2018年全球企業資料分析影響力指數(附下載)
- 資料庫產品影響力指數釋出,CirroData分散式資料庫上榜!資料庫分散式
- 軟體開發公司如何才能提高品牌影響力??
- 力扣 1342. 將數字變成 0 的操作次數 C++力扣C++
- 外鏈數量與質量,影響百度搜尋引擎排名的雙重因素
- 2021數字化轉型影響力峰會舉行 阿里雲釋出數字化轉型成長模型阿里模型
- 開源元件漏洞影響多個 CMS 系統元件
- 數字經濟對於製造業數字化轉型影響的思考
- JPEG的量化引數QP如何影響壓縮質量
- Kafka之acks引數對訊息持久化的影響Kafka持久化
- UPnP協議CallStranger漏洞影響數百萬裝置協議Ranger
- PingCAP上榜工信微報年度回顧三大具有國際影響力的開源社群之一PingCAP
- spark-submit 提交的引數SparkMIT
- TDengine 榮獲 CSDN IT 技術影響力之星 “年度開源專案” 、 “年度IT領軍人物”獎項
- leetcode 5562. 字元頻次唯一的最小刪除次數(C++)LeetCode字元C++
- 注意力2.0:品牌影響的可見度
- 服裝企業如何保持品牌的影響力
- MySQL:Innodb:innodb_flush_log_at_trx_commit引數影響的位置MySqlMIT