Demo Data from SIGIR 2026 / reviewers in the wild / expert
Nicholas Nelson 0002
dblp:47/6907-2
· DBLP profile ↗
7ranked-venue papers
1as first author
0since 2021 · last 2020
0000-0002-6365-7152ORCID · verified
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 6 · 1 first-authorHuman-computer interaction and ubiquitous computing · 1
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Software engineering, system software, and programming languages
3 papers |
Empirical software engineering · 79% Software maintenance and evolution · 21% |
Topics — the 3 heaviest of 3, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Empirical software engineering
developer studies |
0.8 | 2 | 2020 | A tale from the trenches: cognitive biases and software development · ICSE 2020 Latent patterns in activities: a field study of how developers manage context · ICSE 2019 |
Software maintenance and evolution › release engineering
continuous integration |
0.3 | 1 | 2017 | Trade-offs in continuous integration: assurance, security, and flexibility · ESEC/SIGSOFT FSE 2017 |
Empirical software engineering
mining software repositories |
0.2 | 2 | 2020 | A tale from the trenches: cognitive biases and software development · ICSE 2020 Latent patterns in activities: a field study of how developers manage context · ICSE 2019 |
Methods — techniques the papers use, named apart from their topics
qualitative analysis · 0.8field study · 0.8survey · 0.3semi-structured interviews · 0.3
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2020 | A tale from the trenches: cognitive biases and software developmentabstractCognitive biases are hard-wired behaviors that influence developer actions and can set them on an incorrect course of action, necessitating backtracking. While researchers have found that cognitive biases occur in development tasks in controlled lab studies, we still don't know how these biases affect developers' everyday behavior. Without such an understanding, development tools and practices remain inadequate. To close this gap, we conducted a 2-part field study to examine the extent to which cognitive biases occur, the consequences of these biases on developer behavior, and the practices and tools that developers use to deal with these biases. About 70% of observed actions that were reversed were associated with at least one cognitive bias. Further, even though developers recognized that biases frequently occur, they routinely are forced to deal with such issues with ad hoc processes and sub-optimal tool support. As one participant (IP12) lamented: There is no salvation! Souti Chattopadhyay, Nicholas Nelson 0002, Audrey Au, Natalia Morales, Christopher A. Sanchez, Rahul Pandita, Anita Sarma |
ICSE | 2 |
| 2020 | Supporting Code Comprehension via Annotations: Right Information at the Right Time and PlaceabstractCode comprehension, especially understanding relationships across project elements (code, documentation, etc.), is non-trivial when information is spread across different interfaces and tools. Bringing the right amount of information, to the place where it is relevant and when it is needed can help reduce the costs of seeking information and creating mental models of the code relationships. While non-traditional IDEs have tried to mitigate these costs by allowing users to spatially place relevant information together, thus far, no study has examined the effects of these non-traditional interactions on code comprehension. Here, we present an empirical study to investigate how the right information at the right time and right place allows users-especially newcomers-to reduce the costs of code comprehension. We use a non-traditional IDE, called Synectic, and implement link-able annotations which provide affordances for the accuracy, time, and space dimensions. We conducted a between-subjects user study of 22 newcomers performing code comprehension tasks using either Synectic or a traditional IDE, Eclipse. We found that having the right information at the right time and place leads to increased accuracy and reduced cognitive load during code comprehension tasks, without sacrificing the usability of developer tools. Marjan Adeli, Nicholas Nelson 0002, Souti Chattopadhyay, Hayden Coffey, Austin Z. Henley, Anita Sarma |
VL/HCC | 2 |
| 2019 | Latent patterns in activities: a field study of how developers manage contextabstractIn order to build efficient tools that support complex programming tasks, it is imperative that we understand how developers program. We know that developers create a context around their programming task by gathering relevant information. We also know that developers decompose their tasks recursively into smaller units. However, important gaps exist in our knowledge about: (1) the role that context plays in supporting smaller units of tasks, (2) the relationship that exists among these smaller units, and (3) how context flows across them. The goal of this research is to gain a better understanding of how developers structure their tasks and manage context through a field study of ten professional developers in an industrial setting. Our analysis reveals that developers decompose their tasks into smaller units with distinct goals, that specific patterns exist in how they sequence these smaller units, and that developers may maintain context between those smaller units with related goals. Souti Chattopadhyay, Nicholas Nelson 0002, Yenifer Ramirez Gonzalez, Annel Amelia Leon, Rahul Pandita, Anita Sarma |
ICSE | 2 |
| 2019 | The life-cycle of merge conflicts: processes, barriers, and strategies
Nicholas Nelson 0002, Caius Brindescu, Shane McKee, Anita Sarma, Danny Dig |
Empir. Softw. Eng. | 1 |
| 2017 | Software Practitioner Perspectives on Merge Conflicts and ResolutionsabstractMerge conflicts occur when software practitioners need to work in parallel and are inevitable in software development. Tool builders and researchers have focused on the prevention and resolution of merge conflicts, but there is little empirical knowledge about how practitioners actually approach and perform merge conflict resolution. Without such knowledge, tool builders might be building on wrong assumptions and researchers might miss opportunities for improving the state of the art.We conducted semi-structured interviews of 10 software practitioners across 7 organizations, including both open-source and commercial projects. We identify the key concepts and perceptions from practitioners, which we then validated via a survey of 162 additional practitioners.We find that practitioners are directly impacted by their perception of the complexity of the conflicting code, and may alter the timeline in which to resolve these conflicts, as well as the methods employed for conflict resolution based upon that initial perception. Practitioners' perceptions alter the impact of tools and processes that have been designed to preemptively and efficiently resolve merge conflicts. Understanding whether practitioners will react according to standard use cases is important when creating human-oriented tools to support development processes. Shane McKee, Nicholas Nelson 0002, Anita Sarma, Danny Dig |
ICSME | 2 |
| 2017 | Trade-offs in continuous integration: assurance, security, and flexibilityabstractContinuous integration (CI) systems automate the compilation, building, and testing of software. Despite CI being a widely used activity in software engineering, we do not know what motivates developers to use CI, and what barriers and unmet needs they face. Without such knowledge, developers make easily avoidable errors, tool builders invest in the wrong direction, and researchers miss opportunities for improving the practice of CI. We present a qualitative study of the barriers and needs developers face when using CI. We conduct semi-structured interviews with developers from different industries and development scales. We triangulate our findings by running two surveys. We find that developers face trade-offs between speed and certainty (Assurance), between better access and information security (Security), and between more configuration options and greater ease of use (Flexi- bility). We present implications of these trade-offs for developers, tool builders, and researchers. Michael Hilton 0001, Nicholas Nelson 0002, Timothy Tunnell, Darko Marinov, Danny Dig |
ESEC/SIGSOFT FSE | 2 |
| 2016 | TDDViz: Using Software Changes to Understand Conformance to Test Driven DevelopmentabstractA bad software development process leads to wasted effort and inferior products. In order to improve a software process, it must be first understood. Our unique approach in this paper uses code and test changes to understand conformance to the Test Driven Development (TDD) process. We designed and implemented TDDViz , a tool that supports developers in better understanding how they conform to TDD. TDDViz supports this understanding by providing novel visualizations of developers’ TDD process. To enable TDDViz ’s visualizations, we developed a novel automatic inferencer that identifies the phases that make up the TDD process solely based on code and test changes. We evaluate TDDViz using two complementary methods: a controlled experiment with 35 participants to evaluate the visualization, and a case study with 2601 TDD Sessions to evaluate the inference algorithm. The controlled experiment shows that, in comparison to existing visualizations, participants performed significantly better when using TDDViz to answer questions about code evolution. In addition, the case study shows that the inferencing algorithm in TDDViz infers TDD phases with an accuracy (F-measure) of 87%. Michael Hilton 0001, Nicholas Nelson 0002, Hugh McDonald, Sean McDonald, Ronald A. Metoyer, Danny Dig |
XP | 2 |