Understanding the Factors that Impact the Popularity of GitHub Repositories
arXiv:1606.04984 · doi:10.1109/ICSME.2016.31
Abstract
Software popularity is a valuable information to modern open source developers, who constantly want to know if their systems are attracting new users, if new releases are gaining acceptance, or if they are meeting user's expectations. In this paper, we describe a study on the popularity of software systems hosted at GitHub, which is the world's largest collection of open source software. GitHub provides an explicit way for users to manifest their satisfaction with a hosted repository: the stargazers button. In our study, we reveal the main factors that impact the number of stars of GitHub projects, including programming language and application domain. We also study the impact of new features on project popularity. Finally, we identify four main patterns of popularity growth, which are derived after clustering the time series representing the number of stars of 2,279 popular GitHub repositories. We hope our results provide valuable insights to developers and maintainers, which can help them on building and evolving systems in a competitive software market.
Accepted at 32nd International Conference on Software Maintenance and Evolution (ICSME 2016). Camera-ready version
Cited by in corpus (43)
- Why Modern Open Source Projects Fail
- Is this GitHub Project Maintained? Measuring the Level of Maintenance Activity of Open-Source Projects
- Predicting the Popularity of GitHub Repositories
- Identifying Unmaintained Projects in GitHub
- Why We Engage in FLOSS: Answers from Core Developers
- On Wasted Contributions: Understanding the Dynamics of Contributor-Abandoned Pull Requests
- To Type or Not to Type? A Systematic Comparison of the Software Quality of JavaScript and TypeScript Applications on GitHub
- On Tracking Java Methods with Git Mechanisms
- An Empirical Study of the Characteristics of Popular Minecraft Mods
- Deriving a Usage-Independent Software Quality Metric
- What Makes a Popular Academic AI Repository?
- Towards Using Package Centrality Trend to Identify Packages in Decline
- First Come First Served: The Impact of File Position on Code Review
- Studying Test-Driven Development and its Retainment Over a Six-month Time Span
- Manas: Mining Software Repositories to Assist AutoML
- Studying the Impact of TensorFlow and PyTorch Bindings on Machine Learning Software Quality
- Code Recommendation for Open Source Software Developers
- Automatic Issue Classifier: A Transfer Learning Framework for Classifying Issue Reports
- Which Pull Requests Get Accepted and Why? A study of popular NPM Packages
- GitHub Discussions: An Exploratory Study of Early Adoption
- Beyond Textual Issues: Understanding the Usage and Impact of GitHub Reactions
- How do Developers Promote Open Source Projects?
- Breaking Type Safety in Go: An Empirical Study on the Usage of the unsafe Package
- Towards Automatically Generating Release Notes using Extractive Summarization Technique
- Do Small Code Changes Merge Faster? A Multi-Language Empirical Investigation
- Refactoring Legacy JavaScript Code to Use Classes: The Good, The Bad and The Ugly
- Patterns of Multi-Container Composition for Service Orchestration with Docker Compose
- GitRanking: A Ranking of GitHub Topics for Software Classification using Active Sampling
- Beyond Accuracy: An Empirical Study on Unit Testing in Open-source Deep Learning Projects
- Bridging the Language Gap: An Empirical Study of Bindings for Open Source Machine Learning Libraries Across Software Package Ecosystems
- When the Open Source Community Meets COVID-19: Characterizing COVID-19 themed GitHub Repositories
- Open Source Development Around the World: A Comparative Study
- Newcomer Candidate: Characterizing Contributions of a Novice Developer to GitHub
- Coding Practices and Recommendations of Spring Security for Enterprise Applications
- GitHub Proxy Server: A tool for supporting massive data collection on GitHub
- FAIR and Open Computer Science Research Software
- Do practitioners intentionally self-fix Technical Debt and why?
- Dirty-Waters: Detecting Software Supply Chain Smells
- A Quantitative Study of Security Bug Fixes of GitHub Repositories
- Are the Majority of Public Computational Notebooks Pathologically Non-Executable?
- Generating GitHub Repository Descriptions: A Comparison of Manual and Automated Approaches
- GitEvolve: Predicting the Evolution of GitHub Repositories
- Conflict and Cooperation: AI Research and Development in terms of the Economy of Conventions