[论文解读] Why do developers take breaks from contributing to OSS projects? A preliminary analysis
本文基於對核心貢獻者的半結構化訪談,引入了「睡眠」與「死亡」狀態的概念,用以描述OSS貢獻中的暫時性與永久性中斷。研究識別了這些轉變的個人與專案相關動機,並提出關於檢測、重啟以及人員流動對OSS可持續性影響的關鍵研究問題。
Creating a successful and sustainable Open Source Software (OSS) project often depends on the strength and the health of the community behind it. Current literature explains the contributors' lifecycle, starting with the motivations that drive people to contribute and barriers to joining OSS projects, covering developers' evolution until they become core members. However, the stages when developers leave the projects are still weakly explored and are not well-defined in existing developers' lifecycle models. In this position paper, we enrich the knowledge about the leaving stage by identifying sleeping and dead states, representing temporary and permanent brakes that developers take from contributing. We conducted a preliminary set of semi-structured interviews with active developers. We analyzed the answers by focusing on defining and understanding the reasons for the transitions to/from sleeping and dead states. This paper raises new questions that may guide further discussions and research, which may ultimately benefit OSS communities.
研究动机与目标
- 為解決OSS貢獻者生命周期中「離開」階段缺乏正式模型的問題,特別是暫時性與永久性不活躍的情況。
- 引入並定義「睡眠」與「死亡」狀態,作為暫時性與永久性貢獻中斷的隱喻。
- 識別導致轉向這些狀態的動機,包括個人、職業與專案相關因素。
- 探討透過OSS溝通渠道中的可見與不可見信號,檢測這些狀態的可能性。
- 引發對人員流動影響的討論,並探討貢獻者重啟的潛在可能。
提出的方法
- 對活躍OSS專案的核心開發者進行半結構化訪談,以探討其在不活躍與離開方面的經驗。
- 運用隱喻框架——「睡眠」與「死亡」——來概念化暫時性與永久性貢獻中斷。
- 分析訪談回饋,識別與睡眠及死亡狀態相關的重複動機與信號。
- 探討通訊工具(如Slack、IRC、郵件列表、問題追蹤系統)在標示開發者存在或缺席方面的角色。
- 識別「生命跡象」(如留言、審查、追蹤問題)等潛在信號,以區分睡眠與死亡開發者。
- 提出基於個人貢獻節奏而非固定時間區間的變數閾值方法,以識別不活躍狀態。
实验结果
研究问题
- RQ1什麼是導致開發者進入OSS專案中「睡眠」或「死亡」狀態的主要動機?
- RQ2如何利用貢獻資料與通訊信號,客觀識別「睡眠」與「死亡」狀態?
- RQ3哪些是可見與不可見的信號,可用來判斷開發者處於「睡眠」狀態或「死亡」狀態?
- RQ4轉向「睡眠」與「死亡」狀態的頻率如何?開發者在中斷後「甦醒」或「重啟」的頻率又如何?
- RQ5在何種條件下,開發者流動對OSS專案的可持續性是有益或有害的?
主要发现
- 睡眠與死亡狀態具有本質差異:睡眠中的開發者會顯示出持續興趣的跡象(如閱讀問題、留言),而死亡中的開發者則完全無通訊或參與。
- 離開的動機包括職業變遷、人生事件與社交因素,且睡眠與死亡的動機存在顯著重疊。
- 部分開發者在長時間中斷後仍會回歸,顯示「重啟」是可能的,儘管專案在缺席期間的變更可能造成重啟障礙。
- 僅從動機無法明確預測從睡眠轉為死亡狀態的轉折,顯示相同原因可能導致兩種不同後果。
- 參與聊天頻道、問題追蹤與程式碼審查等活動的信號對檢測睡眠開發者至關重要,但難以追蹤的無形活動(如閱讀訊息)則較難監測。
- 維護者之間對是否應嘗試重啟離職開發者尚未達成共識,顯示社群策略仍有改進空間。
更好的研究,从现在开始
从论文设计到论文写作,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。