Your SlideShare is downloading. ×
A Study of the Characteristics of Developers′ Activities in GitHub
Upcoming SlideShare
Loading in...5

Thanks for flagging this SlideShare!

Oops! An error has occurred.

Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

A Study of the Characteristics of Developers′ Activities in GitHub


Published on

Published in: Technology

  • Be the first to comment

  • Be the first to like this

No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

No notes for slide


  • 1. A Study of the Characteristics of Developers′ Activities in GitHub 2013/12/2 Saya Onoue, Hideaki Hata, Ken-ichi Matsumoto Software Engineering Laboratory Nara Institute of Science and Technology in Japan
  • 2. What kind of developers are there? Sorcerer Derive a program Ninja Hidden MVP Cowboy Fast worker 2
  • 3. This Study Goal – Understand the different types of developers and the ways that they make their contributions Method – Collect data from GitHub – Analyze that data to investigate the characteristics of the activities of real developers. 3
  • 4. What is GitHub? • Web-based hosting service for software development projects that use the Git revision control system. – Social networking service for developers • GitHub API – We can collect various events about developers′ activities. 4
  • 5. GitHub Developers′ Activities • Code – related Dev CommitComment Issue Comment PullRequest ReviewComment Code Create Delete Push Fork PullRequest Issues Issue – Create, Delete, Push, Fork, PullRequest, • Comment – related – CommitComment, PullRequestReviewComment, IssueComment • Issue – related* – Issues *: contribute problems or questions 5
  • 6. The data collection procedure I. Select Projects – Select active project for this study in GitHub II. Identify Developers – Identify developers in the selected project III. Extract activity events – Using the GitHub APIs, get specific events for the developers 6
  • 7. I. Select Projects • We selected two projects for this study – They were active projects on GitHub Project Language Commits node JavaScript 8,974 jQuery JavaScript 5,270 Forks 4,572 4,587 Contributors 447 168 7
  • 8. II. Identify Developers • We limited the contributors to developers who have made more than 100 commits. – node: 9 developers – jQuery: 10 developers 8
  • 9. III. Extract Activity Events • GitHub has 18 different types of activity events • We selected 8 events since others occur rarely • collect last 300 events – Events of all projects that participate Events Outline Create Delete coding created repository, branch, or tag. deleted branch or tag. PullRequest request a change in the repository Push CommitComment commenting upload a change history make statement Commit IssueComment PullRequestReviewComment Issues make statement Issues make statement PullRequest contribute problems or questions 9
  • 10. The Research Questions 1. What events do developers cause? 2. When do developers work? 3. How much do developers work? 10
  • 11. 1. What events do developers cause?1/2 Coding, Commenting, and Issue Handling Many commenting Many coding Balanced events 11
  • 12. 1. What events do developers cause?2/2 • Different developers contribute differently • There are various contributors in the projects node Code Comment Code,Comment Code,Comment,Issues N jQuery 2 Code 1 Comment 4 Code/comment 2 Code,Comment,Issues N 3 2 2 3 12
  • 13. 2. When do developers work?1/2 Workdays Dev 2 Dev 1 Employed developers Dev 3 Dev 4 13
  • 14. 2. When do developers work?2/2 • Some work every day, and some work on a specific day • Some work on weekdays, They are actually hired for this work 14
  • 15. 3.How much do developers work?1/2 Frequencies of Activities (300 events) A few weeks A few months Over a year 15
  • 16. 3. How much do developers work?2/2 • There are large differences in frequency of activities between developers • We can find developers who are working actively, and have contributed to the project for a long time node Days Weeks Months Years N 1 3 3 2 jQuery Days Weeks Months Years N 1 2 6 1 16
  • 17. A summary of developer characteristics • Some of the characteristics of developers’ activities Project Developer Majority Activities Frequencies Dev 1 node Code,Comments,Issues node project Years Dev 2 Code,Comments node and others Weeks ・・・ Dev 3 Code node project Weeks Dev 4 Code,Comments Only Other projects Months ・・・ jQuery Dev 5 Dev 6 Comments jQuery project Code,Comments,Issues Only other project Months A years 17
  • 18. Conclusion and Future work • We analyzed the developers′ activities in GitHub. And found some characteristics of developers. – Different developers contribute differently – Some work every day, and a specific day – There is a large difference in activity frequencies by developers • Future work – Detailed analysis with more data – Project management based on developers’ characteristics 18