Social coding in github: transparency and collaboration in an open software repository (original) (raw)
A topology of groups: What GitHub can tell us about online collaboration
Technological Forecasting and Social Change, 2020
In this work, we study the collaboration patterns of open source software projects on GitHub by analyzing the pull request submissions and acceptances of repositories. We develop a group typology based on the structural properties of the corresponding directed graphs, and analyze how the topology is connected to the repositorys collective identity, hierarchy, productivity, popularity, resilience and stability. These analyses indicate significant differences between group types and thereby provide valuable insights on how to effectively organize collaborative software development. Identifying the mechanisms that underlie self-organized collaboration on digital platforms is important not just to better understand open source software development but also all other decentralized and digital work environments, a setting widely regarded as a key feature of the future work place.
Journal of Systems and Software, 2019
With over 28 million developers, success of the GitHub collaborative platform is highlighted through an abundance of communication channels among contemporary software projects. Knowledge is broken into two forms and its sharing (through communication channels) can be described as externalization or combination by the SECI model. Such platforms have revolutionized the way developers work, introducing new channels to share knowledge in the form of pull requests, issues and wikis. It is unclear how these channels capture and share knowledge. In this research, our goal is to analyze these communication channels in GitHub. First, using the SECI model, we are able to map how knowledge is shared through the communication channels. Then in a large-scale topology analysis of seven library package projects (i.e., involving over 70 thousand projects), we extracted insights of the different communication channels within GitHub. Using two research questions, we explored the evolution of the channels and adoption of channels by both popular and unpopular library package projects. Results show that (i) contemporary GitHub Projects tend to adopt multiple communication channels, (ii) communication channels change over time and (iii) communication channels are used to both capture new knowledge (i.e., externalization) and updating existing knowledge (i.e., combination).
The appropriation of GitHub for curation
2017
GitHub is a widely used online collaborative software development environment. In this paper, we describe curation projects as a new category of GitHub project that collects, evaluates, and preserves resources for software developers. We investigate: (1) what motivates software developers to curate resources; (2) why curation has occurred on GitHub; (3) how curated resources are used by software developers; and (4) how the GitHub platform could better support these practices. We conduct indepth interviews with 16 software developers, each of whom hosts curation projects on GitHub. Our results suggest that the motivators that inspire software developers to curate resources on GitHub are similar to those that motivate them to participate in the development of open source projects. Convenient tools (e.g., Markdown syntax and Git version control system) and the opportunity to address professional needs of a large number of peers attract developers to engage in curation projects on GitHub. Benefits of curating on GitHub include learning opportunities, support for development work, and professional interaction. However, curation is limited by GitHub's document structure, format, and a lack of key features, such as search. In light of this, we propose design possibilities to encourage and improve appropriations of GitHub for curation.
Herding a Deluge of Good Samaritans: How GitHub Projects Respond to Increased Attention
Proceedings of The Web Conference 2020, 2020
Collaborative crowdsourcing is a well-established model of work, especially in the case of open source software development. The structure and operation of these virtual and loosely-knit teams differ from traditional organizations. As such, little is known about how their behavior may change in response to an increase in external attention. To understand these dynamics, we analyze millions of actions of thousands of contributors in over 1100 open source software projects that topped the GitHub Trending Projects page and thus experienced a large increase in attention, in comparison to a control group of projects identified through propensity score matching. In carrying out our research, we use the lens of organizational change, which considers the challenges teams face during rapid growth and how they adapt their work routines, organizational structure, and management style. We show that trending results in an explosive growth in the effective team size. However, most newcomers make only shallow and transient contributions. In response, the original team transitions towards administrative roles, responding to requests and reviewing work done by newcomers. Projects evolve towards a more distributed coordination model with newcomers becoming more central, albeit in limited ways. Additionally, teams become more modular with subgroups specializing in different aspects of the project. We discuss broader implications for collaborative crowdsourcing teams that face attention shocks. CCS CONCEPTS • Human-centered computing → Computer supported cooperative work; Open source software.
Open Source-Style Collaborative Development Practices in Commercial Projects Using GitHub
—Researchers are currently drawn to study projects hosted on GitHub due to its popularity, ease of obtaining data, and its distinctive built-in social features. GitHub has been found to create a transparent development environment, which together with a pull request-based workflow, provides a lightweight mechanism for committing, reviewing and managing code changes. These features impact how GitHub is used and the benefits it provides to teams' development and collaboration. While most of the evidence we have is from GitHub's use in open source software (OSS) projects, GitHub is also used in an increasing number of commercial projects. It is unknown how GitHub supports these projects given that GitHub's workflow model does not intuitively fit the commercial development way of working. In this paper, we report findings from an online survey and interviews with GitHub users on how GitHub is used for collaboration in commercial projects. We found that many commercial projects adopted practices that are more typical of OSS projects including reduced communication, more independent work, and self-organization. We discuss how GitHub's transparency and popular workflow can promote open collaboration, allowing organizations to increase code reuse and promote knowledge sharing across their teams.
How Does the Shift to GitHub Impact Project Collaboration?
2016 IEEE International Conference on Software Maintenance and Evolution (ICSME), 2016
Social coding environments such as GitHub and Bitbucket are changing the way software is built. They are not only lowering the barriers for placing changes, but also making open-source contributions more visible and traceable. Not surprisingly, several mature, active, non-trivial open-source software projects are switching their decades of software history to these environments. There is a belief that these environments have the potential of attracting new contributors to open-source projects. However, there is little empirical evidence to support these claims. In this paper, we quantitatively and qualitatively studied a curated set of open-source projects that made the move to GitHub, aiming at understanding whether and how this migration fostered collaboration. Our results suggest that although interaction in some projects increased after migrating to GitHub, the rise of contributions is not straightforward.
GitHub Discussions: An exploratory study of early adoption
Empirical Software Engineering, 2021
Discussions is a new feature of GitHub for asking questions or discussing topics outside of specific Issues or Pull Requests. Before being available to all projects in December 2020, it had been tested on selected open source software projects. To understand how developers use this novel feature, how they perceive it, and how it impacts the development processes, we conducted a mixed-methods study based on early adopters of GitHub discussions from January until July 2020. We found that: (1) errors, unexpected behavior, and code reviews are prevalent discussion categories; (2) there is a positive relationship between project member involvement and discussion frequency; (3) developers consider GitHub Discussions useful but face the problem of topic duplication between Discussions and Issues; (4) Discussions play a crucial role in advancing the development of projects; and (5) positive sentiment in Discussions is more frequent than in Stack Overflow posts. Our findings are a first step...
Integration of the Education and Science. Challenges of the Modern World, 2015
The existing code-based program implemented in GitHub portal provides a great tool for scientists and students for data sharing and notification of the co-workers, tutors and supervisors involved in research about actual updates. It enables to connect collaborators to share around current results, release datasets and updates and many more. Using standard command-line interface GitHub allows registered users to push repositories on the site. The availability of both public and private repositories enables to share current data updates with target audience: e.g., unpublished research work only for co-authors or supervisors, or, vice versa, successfully defended thesis is open for public. However, despite the evident usefulness and perspectives of GitHub, the existing users of GitHub mostly include the programmer communities and IT specialists. Therefore, there is a need in academic centers and universities to strongly popularize and increase the use of GitHub for student works. The case study is given on the graduate study: an MSc work successfully written and maintained using open source GitHub service at the University of Twente, Faculty of Geo-Information Science and Earth Observation (Netherlands) entitled " Seagrass monitoring and mapping along the coasts of Greece, Crete ". Current presentation reports my own experience of management and organization of MSc thesis project. In spite of traditional and highly ineffective tool of MS Word, I used the effective combination of LaTeX tools with GitHub for data Fig.1. Fragment of the text written using LaTeX and processed by Git.