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