Upgrade to Pro — share decks privately, control downloads, hide ads and more …

How Does the Shift to GitHub Impact Project Collaboration?

Gustavo Pinto
January 14, 2018
90

How Does the Shift to GitHub Impact Project Collaboration?

Gustavo Pinto

January 14, 2018
Tweet

Transcript

  1. How Does the Shift to GitHub
    Impact Project
    Collaboration?
    Gustavo Pinto
    I. Steinmacher M. Gerosa
    F. Fronchetti D. Alencar
    1

    View Slide

  2. 2

    View Slide

  3. Why?
    http://programmers.stackexchange.com/questions/164618
    3

    View Slide

  4. Why?
    http://programmers.stackexchange.com/questions/164618
    Is simple
    Is easy to use
    Because Github:
    Offers DVCS support
    has the PR system
    increases collaboration
    4

    View Slide

  5. 5
    Does Github really
    increase collaboration?

    View Slide

  6. Active: >= 1 commit in the last 12
    months
    Popular: > 10.000 stars
    Non-trival: > 10.000 LoC
    Obviously: Migrated to Github
    Projects Selection
    6

    View Slide

  7. Active, popular, non-trivial
    7

    View Slide

  8. Active, popular, non-trivial
    Projects Prog. Language Moved to Github LoC Age
    Ruby C 02/2010 1,001K 18
    mongodb C++ 01/2009 2,104K 9
    Jenkins Java 11/2010 191K 10
    Rails Ruby 04/2008 203K 12
    Joomla! PHP 09/2011 610K 11
    jQuery JavaScript 04/2009 41K 10
    8

    View Slide

  9. Method: Two Steps
    1) Mining Software Repositories
    9

    View Slide

  10. Method: Two Steps
    1) Mining Software Repositories
    2) Survey with developers
    Q1: What motivated the project to move to Github?
    Q2. Do you have any internal policy to attract
    newcomers?
    Q3: Does this snapshot make sense?
    10

    View Slide

  11. How Does the Shift to
    GitHub Impact Project
    Collaboration?
    11

    View Slide

  12. How Does the Shift to
    GitHub Impact Project
    Collaboration?
    In terms of:
    {• number of newcomers, active
    committers, contributions
    • number of pull-requests
    received
    • number of issues created
    12

    View Slide

  13. Newcomers, active
    committers, contributions
    13

    View Slide

  14. Committer
    # commiters
    p-value 0.001
    effect size 0.633 14

    View Slide

  15. Committer
    # commiters
    p-value 0.001
    effect size 0.633 15
    The number of committers increased significantly
    (effect size = 0.633)

    View Slide

  16. Contribution
    # commiters contributions
    p-value 0.001 0.001
    effect size 0.633 0.635 16
    The number of contributions increased significantly
    (effect size = 0.635)

    View Slide

  17. # commiters contributions newcomers
    p-value 0.001 0.001 0.001
    effect size 0.633 0.635 0.460
    Newcomer
    The number of newcomers increased significantly
    (effect size = 0.460)
    17

    View Slide

  18. # commiters contributions newcomers
    p-value 0.001 0.001 0.001
    effect size 0.633 0.635 0.460
    Newcomer
    Rails core developer
    18
    We don't have any strong
    policy other than: be nice with
    newcomers, give them attention, good
    feedback and try to motivate them to
    solve their own problems.
    The number of newcomers increased significantly
    (effect size = 0.460)

    View Slide

  19. # commiters contributions newcomers
    p-value 0.001 0.001 0.006
    effect size 0.299 0.018 0.206
    The rise of active committer does not imply in the
    rise of contributions
    19

    View Slide

  20. # commiters contributions newcomers
    Joomla!
    p-value 0.001 0.001 0.006
    effect size 0.299 0.018 0.206
    jQuery
    p-value 0.035 0.001 0.060
    effect size 0.066 0.144 0.160
    The migration to GitHub played a major role to the rise of
    contributions in only 2 out of the 6 studied projects
    20
    effect size: 0.018 effect size: 0.114

    View Slide

  21. Pull-Requests
    21

    View Slide

  22. Pull Requests
    22

    View Slide

  23. Pull Requests
    Several PRs are submitted, few got merged
    (3 out of the 1,223 Ruby PRs got merged)
    Merged PRs
    23

    View Slide

  24. Pull Requests
    The number of PRs did not
    increase over time
    (in 5/6 of the projects)
    (again) Several PRs are
    submitted, few got merged
    24

    View Slide

  25. Issues
    25

    View Slide

  26. Issues
    Not all projects are
    using the issue
    tracking system
    26

    View Slide

  27. Issues
    Initial effort
    required!
    Not all projects are
    using the issue
    tracking system
    27

    View Slide

  28. In summary
    28

    View Slide

  29. The rise of contributions is not
    straightforward
    29

    View Slide

  30. Little effort was placed on policies
    for attracting or retaining
    newcomers
    30

    View Slide

  31. 31
    Some projects have a high rate of
    PRs closed and not merged.
    If the project is not intended to use
    PRs, state this upfront!

    View Slide

  32. 32
    Some projects have a high rate of
    PRs closed and not merged.
    If the project is not intended to use
    PRs, state this upfront!

    View Slide

  33. Project members might expect an
    overhead on managing the issue
    tracking system
    33

    View Slide

  34. 34
    THANKS

    View Slide

  35. How Does the Shift to GitHub
    Impact Project
    Collaboration?
    Gustavo Pinto
    I. Steinmacher M. Gerosa
    F. Fronchetti D. Alencar
    35

    View Slide