The Onion Patch: Migration in Open Source Ecosystems


Published on

Slides for "The Onion Patch: Migration in Open Source Ecosystems", by Corey Jergensen, Anita Sarma, and Patrick Wagstrom. Presented at ESEC/FSE 2011 in Szeged, Hungary

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

No notes for slide
  • Spoiler Alert: We found little evidence of the onion model in our data. We did, however, find lots of other interesting things
  • Remember to say that “we are scoping to some of the more novel findings in our work. Our research questions and hypotheses that drove our work can be found in the paper, along with the stats that go with it.”
  • Onion modelFirst socialization then technical contributionHowever, the immigration model is based on stand alone projectsToday, the norm is well-connected ecosystemsNo findings as of yet on socialization processes in an ecosystem
  • We have all of the code, mailing lists, and bugs for each of these projects.The people were unified across projects through a variety of methods – email address was easiest. In many cases we needed to work with experts in the community to get the resolution we needed.
  • The centers of the circles indicate the number of developers working on the project.The lines indicate the number of developers shared between the projects.Not all lines are shown because it is a clique, and that would be a very messy and unpretty graph
  • After discovering that there is a significant migration we wanted to actually examine the onion model and how it works within a project and ecosystem.These are samples of the five different models of joining that we found in the system.Note, we’re only looking at progression patterns of people who eventually became committers.
  • Notes: This only covers people who eventually became committers
  • Notes: This only covers people who eventually became committersNext we evaluated progressions across the ecosystem – we basically looked at contributions as though everything in the ecosystem was a single projctWe start to see a trend here, but it’s just across six project. If we had the data to extend it more then we might see more people fall in to the technical-social patterns
  • We did a simple regression that mapped together activity on the mailing lists and bug trackers to relate to commits.
  • That’s Hungarian for “Who are these people?”Shuíshìzhèxiērén?
  • The Onion Patch: Migration in Open Source Ecosystems

    1. 1. The Onion Patch: Migration in Open Source Ecosystems<br />Corey Jergensen*<br />Anita Sarma*<br />Patrick Wagstrom+<br />* University of Nebraska, Lincoln <br />+ IBM TJ Watson Research Center<br />
    2. 2. 2<br />Not sure if this a paper about<br />ogres, software development,or cooking<br />September 7, 2011<br />
    3. 3. This Talk in One Slide<br />The Onion Model proposed a model for developers to join individual projects<br />Ecosystems change the project landscape<br />Similar social norms and technical requirements across projects in an ecosystem lower barrier to entry<br />We examine how an ecosystem alters the ways in which developers join projects<br />3<br />September 7, 2011<br />
    4. 4. Spoiler Alert – Our Findings<br />There are different progression paths that can be followed<br />Tenure does not necessarily mean more central contribution<br />Different Classes of Committers Exist<br />Little concrete evidence of the Onion model<br />4<br />September 7, 2011<br />
    5. 5. Overview<br />The Onion Model<br />Primary Research Questions<br />Our data<br />Progression paths<br />Effect of tenure on commit centrality<br />Committer classes<br />Implications<br />5<br />September 7, 2011<br />
    6. 6. Layers – Like an Onion<br />Users<br />Social<br />Mailing Lists<br />Contributors<br />Socio-Technical<br />Bug Trackers<br />Core<br />Code<br />Technical<br />6<br />September 7, 2011<br />
    7. 7. Research Questions<br />Does Migration Occur in Ecosystems?<br />When a developer migrates, can they kickstart participation with pre-existing knowledge?<br />In interconnected ecosystems, what factors affect contribution type and quality?<br />7<br />September 7, 2011<br />
    8. 8. The GNOME Project<br />We examined subset of six successful projects<br />Between 369 and 1085 people active across email, bug tracker, and code repository<br />Both GUI tools and underlying libraries<br />Up to 10 years of history<br />8<br />September 7, 2011<br />
    9. 9. Does Migration Exist?<br />September 7, 2011<br />9<br />716<br />541<br />122<br />120<br />169<br />162<br />123<br />369<br />475<br />181<br />69<br />164<br />133<br />166<br />107<br />690<br />1085<br />112<br />
    10. 10. Progression Paths<br />10<br />Release 2<br />Release 1<br />Release 3<br />Bugs<br />Code<br />Mail<br />Socio Technical<br />Code<br />Mail<br />Bugs<br />Accelerated<br />Mail<br />Code<br />Bugs<br />TechSocial<br />Code<br />Bugs<br />Technical<br />Code<br />Source Only<br />September 7, 2011<br />
    11. 11. Findings of Progression Paths - Project<br />11<br />September 7, 2011<br />
    12. 12. Findings of Progression Paths - Ecosystem<br />12<br />September 7, 2011<br />
    13. 13. Centrality of Commits<br />Difference between being a committer and being a core committer<br />Previous research has shown that core does most of the work on most projects<br />Once becoming a committer, what factors affect relationship to core?<br />13<br />September 7, 2011<br />
    14. 14. Commit 1<br />Calculating Source Code Centrality<br />14<br />foo.c<br />bar.c<br />Commit 2<br />baaz.c<br />Alice<br />quux.c<br />Bob<br />September 7, 2011<br />
    15. 15. Centrality<br />Time<br />Tenure != Centrality<br />Simple Story<br />Mail Activity +<br />Tracker Activity +<br />Project Experience -<br />Detailed Story<br />Mail Activity +<br />Tracker Activity +<br />New to Project +<br />Middle Aged +<br />Experienced ???<br />15<br />September 7, 2011<br />
    16. 16. Major Factors Affecting Centrality<br />16<br />Artifacts Created<br /><ul><li>Source Commits
    17. 17. Bugzilla Activity & Comments
    18. 18. Mailing List Messages</li></ul>Single Project Experience<br /><ul><li>Prior Experience
    19. 19. Total Ecosystem Experience
    20. 20. Project Experience</li></ul>Component 2<br />Component 1<br />Broad Social Experience<br /><ul><li>Translation Commits
    21. 21. Mailing List Messages
    22. 22. Prior Experience
    23. 23. Ecosystem Experience
    24. 24. Project Experience
    25. 25. Active Experience</li></ul>Technical Medium Experience<br /><ul><li>Source Commits
    26. 26. Mailing Lists
    27. 27. Tracker Activity
    28. 28. Prior Experience
    29. 29. Active Experience</li></ul>Component 3<br />Component 4<br />September 7, 2011<br />
    30. 30. Kikezekazemberek?<br />Translators!<br />Common infrastructure used across projects<br />“Parachute in” to implement internationalization<br />Individual translators can work only on the translation files without needing to hack project code<br />17<br />WersinddieseLeute?<br />Who are these people?<br />谁是这些人?<br />September 7, 2011<br />
    31. 31. Implications?<br />Open Source is kinda like an onion, but for the most part it isn’t<br />There is a need for project stewards as well as code warriors<br />Common Infrastructure enables ecosystem migration<br />Ecosystems have changed our views<br />When hiring <br />question should not be “What have you done on project X”? <br />Rather “Show me everything that you’ve done on Github.”<br />StackExchange for example accrues karma across all boards<br />For researching<br />Is socialization process taking place through social media?<br />Are layers of the onion model being created outside of traditional Software Engineering artifacts<br />Is karma/credits already known intrinsically by the community and leading to following?<br />18<br />September 7, 2011<br />