A Large Scale Study of Long-Time Contributor Prediction for GitHub Projects
The continuous contributions made by long time contributors (LTCs) are a key factor enabling open source software (OSS) projects to be successful and survival. We study GITHUB as it has a large number of OSS projects and millions of contributors, which enables the study of the transition from newcomers to LTCs. In this paper , we investigate whether we can effectively predict newcomers in OSS projects to be LTCs based on their activity data that is collected from GITHUB . We collect GITHUB data from GHTorrent, a mirror of GITHUB data. We select the most popular 917 projects, which contain 75,046 contributors. We determine a developer as a LTC of a project if the time interval between his/her first and last commit in the project is larger than a certain time T. In our experiment, we use three different settings on the time interval: 1, 2, and 3 years. There are 9,238, 3,968, and 1,577 contributors who become LTCs of a project in three settings of time interval, respectively.
To build a prediction model, we extract many features from the activities of developers on GITHUB , which group into five dimensions: developer profile, repository profile, developer monthly activity, repository monthly activity, and collaboration network. We apply several classifiers including naive Bayes, SVM, decision tree, kNN and random forest. We find that random forest classifier achieves the best performance with AUCs of more than 0.75 in all three settings of time interval for LTCs. We also investigate the most important features that differentiate newcomers who become LTCs from newcomers who stay in the projects for a short time. Finally, we provide several implications for action based on our analysis results to help OSS projects retain newcomers.
Below are the main contributions of this paper:
We build a prediction model based on a total of 63 features from a developer’s first month activities in GITHUB to determine whether a newcomer will become a LTC in a GITHUB project. We conduct an experiment on a total of 75,046 developers from 917 projects. The results show that our approach can effectively predict whether a newcomer will become a LTC soon after he/she submits his/her first commit to the project.
We investigate the most important characteristics that impact a newcomer being a LTC. We find that the number of a contributor’s followers when he/she joins the project is the most important feature in all time interval settings.
Thu 9 Jul Times are displayed in time zone: (UTC) Coordinated Universal Time change
|07:00 - 07:12|
|07:12 - 07:20|
|07:20 - 07:38|
|07:38 - 07:46|
|07:46 - 07:54|