James D. Herbsleb

SE
h-index60
4papers
45citations
Novelty28%
AI Score23

4 Papers

3.6SEApr 6, 2021Code
Global Software Engineering in the Age of GitHub and Zoom

James Herbsleb

Much has changed since the inaugural ICGSE conference in 2006. Tools have improved, awareness of cultural differences is widespread, and developments such as the foregrounding of open source have all enhanced our ability to work across geographic divides. But the pervasive and profound impact of software in the world -- especially for societal scale systems such as social media -- forces new and deeply challenging responsibilities on both developers and academics. We must find better ways of incorporating ethics into our development practices and pay far more attention to harmful unintended consequences as deployed systems interact with and often disrupt crucial social systems.

8.6SEMar 1, 2021Code
The Secret Life of Hackathon Code

Ahmed Imam, Tapajit Dey, Alexander Nolte et al.

Background: Hackathons have become popular events for teams to collaborate on projects and develop software prototypes. Most existing research focuses on activities during an event with limited attention to the evolution of the code brought to or created during a hackathon. Aim: We aim to understand the evolution of hackathon-related code, specifically, how much hackathon teams rely on pre-existing code or how much new code they develop during a hackathon. Moreover, we aim to understand if and where that code gets reused, and what factors affect reuse. Method: We collected information about 22,183 hackathon projects from DEVPOST -- a hackathon database -- and obtained related code (blobs), authors, and project characteristics from the World of Code. We investigated if code blobs in hackathon projects were created before, during, or after an event by identifying the original blob creation date and author, and also checked if the original author was a hackathon project member. We tracked code reuse by first identifying all commits containing blobs created during an event before determining all projects that contain those commits. Result: While only approximately 9.14% of the code blobs are created during hackathons, this amount is still significant considering the time and member constraints of such events. Approximately a third of these code blobs get reused in other projects. The number of associated technologies and the number of participants in a project increase reuse probability. Conclusion: Our study demonstrates to what extent pre-existing code is used and new code is created during a hackathon and how much of it is reused elsewhere afterwards. Our findings help to better understand code reuse as a phenomenon and the role of hackathons in this context and can serve as a starting point for further studies in this area.

5.3SEDec 10, 2020
Guiding Development Work Across a Software Ecosystem by Visualizing Usage Data

Christopher Bogart, James Howison, James Herbsleb

Software is increasingly produced in the form of ecosystems, collections of interdependent components maintained by a distributed community. These ecosystems act as network organizations, not markets, and thus often lack actionable price-like signals about how the software is used and what impact it has. We introduce a tool, the Scientific Software Network Map, that collects and displays summarized usage data tailored to the needs of actors in software ecosystems. We performed a contextualized walkthrough of the Map with producers and stewards in six scientific software ecosystems that use the R language. We found that they work to maximize diversity rather than quantity of uses, and to minimize coordination costs. We also found that summarized usage data would be useful for justifying ecosystem work to funding agencies; and we discovered a variety of more granular usage needs that would help in adding or maintaining features.

3.3CYAug 18, 2020
How to organize an in-person, online or hybrid hackathon -- A revised planning kit

Abasi-amefon Obot Affia-Jomants, Kiev Gama, James D. Herbsleb et al.

Hackathons and similar time-bounded events are a global phenomenon. Their proliferation in various domains and their usefulness for a variety of goals has led to the emergence of different formats. While there are a multitude of guidelines available on how to prepare and run a hackathon, most of them focus on a particular format that was created for a specific purpose within a domain for a certain type of participant. This makes it difficult, in particular, for novice organizers to decide how to run an event that fits their needs. To address this gap we developed the original version of this planning kit in 2020 which focused on in-person events that were the dominant form of hackathons then. That planning kit was organized around 12 key decisions that organizers need to take when preparing for, running, and following up on a hackathon. Fast forward to 2025, after going through a global pandemic that forced all events to move online, we now see different forms of events - in-person, online, and hybrid - taking place across the globe, and while they can be all valuable, they have different affordances and require different considerations when planning. To account for these differences, we decided to update the original planning kit by adding a section that discusses the affordances and requirements of in-person, online, and hybrid events to each of the 12 decisions. In addition, we modified the original example timelines to include different forms and types of events. We also updated the planning kit in general based on insights we gained through continuing to organize and study hackathons. The main planning kit is available online while this report is meant to be a downloadable and citable resource.