UNDERSTANDING THE TRENDS OF DEVELOPER CONTRIBUTIONS IN NUGET, PYPI, AND NPM ECOSYSTEMS - Raiffaza, Naufal Dzakia; Nugroho, Yusuf Sulistyo (Informatika, Universitas Jenderal Soedirman, 2024)
Open-source software (OSS) projects have taken the software development industry rapidly by encouraging cooperation, creativity, and knowledge exchange. However, despite the widespread adoption and success of OSS, there is limited understanding of how contributions are distributed across different types of activities, such as code, documentation, and issue triage, and how these contributions vary over time within different OSS ecosystems. This gap in knowledge can impact effective project management and community engagement strategies. To address this problem, we aim to look into the patterns of developer contributions within the three main OSS ecosystems hosted on GitHub, namely NuGet, PyPI, and NPM. We examine the distribution of type-based contribution and the trends of developer activities within these ecosystems. We classify contributions into code, documentation, and issue triage using a mixed-methods approach that combines content analysis and time-series analysis, and we analyze the timeline variations in contribution trends. Our results show differences in pull request activity and developer contribution patterns between ecosystems. The ‘npm-expansion’ repository leads in open pull requests, while the ‘warehouse’ repository in PyPI dominates closed pull requests. The NPM ecosystem shows the highest number of activities when it comes to open pull requests. Notable peaks can be seen in trends in code development and maintenance activities, indicating the changing priorities of various projects. The findings shed light on the changes of OSS contributions and highlight the value of varied roles and ongoing community involvement. The comprehension of contribution patterns in open-source software projects is improved by this study, which also provides guidance for project management, resource allocation, and community support strategies. The knowledge acquired can direct the creation of instruments and systems that support more cooperative and productive open-source software ecosystems.