一句话:通过访谈与问卷揭示优秀开源维护者除技术外所需的管理、社交与人格特质,并构建属性框架。
论文研究优秀开源软件维护者应具备哪些独特属性。作者对 Linux Kernel、Debian、GitLab 等知名项目的 33 位资深维护者进行半结构化访谈,分析并整理属性列表,构建概念框架以解释属性间联系;随后对 90 位开源贡献者开展评分调查。结果显示,“技术卓越”和“沟通”是最常被提及的属性,可归为管理、社交、技术和人格四类;长期项目愿景与极度谨慎构成框架基础,而调查中沟通被视为最关键属性。该工作强调维护者角色远超编码,需兼顾社区培育、新人融入和拒绝不契合目标的补丁。
Although Open Source Software (OSS) maintainers devote a significant proportion of their work to coding tasks, great maintainers must excel in many other activities beyond coding. Maintainers should care about fostering a community, helping new members to find their place, while also saying "no" to patches that although are well-coded and well-tested, do not contribute to the goal of the project. To perform all these activities masterfully, maintainers should exercise attributes that software engineers (working on closed source projects) do not always need to master. This paper aims to uncover, relate, and prioritize the unique attributes that great OSS maintainers might have. To achieve this goal, we conducted 33 semi-structured interviews with well-experienced maintainers that are the gatekeepers of notable projects such as the Linux Kernel, the Debian operating system, and the GitLab coding platform. After we analyzed the interviews and curated a list of attributes, we created a conceptual framework to explain how these attributes are connected. We then conducted a rating survey with 90 OSS contributors. We noted that "technical excellence" and "communication" are the most recurring attributes. When grouped, these attributes fit into four broad categories: management, social, technical, and personality. While we noted that "sustain a long term vision of the project" and being "extremely careful" seem to form the basis of our framework, we noted through our survey that the communication attribute was perceived as the most essential one.
@inproceedings{DiasMCSW021,
title = {What Makes a Great Maintainer of Open Source Projects?},
author = {Edson Dias and Paulo Meirelles and Fernando Castor and Igor Steinmacher and Igor Wiese and Gustavo Pinto},
booktitle = {ICSE},
year = {2021},
doi = {10.1109/icse43902.2021.00093}
}