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

693
views

Published on

Published in: Technology

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
693
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 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 http://techiferous.com/2011/08/are-you-a-good-programmer/ 2 http://www.techrepublic.com/blog/10-things/10-types-of-programmers-youll-encounter-in-the-field/
  • 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

×