I'm a PhD student advised by Anita Sarma in the Electrical Engineering & Computer Science department at Oregon State University, where I also obtained my BS in Computer Science in June 2015. As an undergraduate, I interned at Intel Corporation and Hewlett Packard Enterprise, and conducted my senior project with Garmin AT. Previously, I was a Research Intern at Microsoft in the PROSE team (mentored by Titus Barik), and a Systems Analyst in healthcare IT and DevOps (see my CV here).

My research interests are at the intersections of software engineering, human-computer interactions, and developers tools. I am currently exploring the effects of designing integrated development environments (IDEs) with human cognition and spatial interactions as core tenets of problem-solving within software. I also conduct research into software development processes such as merge conflicts, continuous integration, and test-driven development (TDD).


  Supporting Code Comprehension via Annotations: Right Information at the Right Time and Place
Marjan Adeli, Nicholas Nelson, Souti Chattopadhyay, Hayden Coffey, Austin Henley, Anita Sarma.    
VL/HCC'20, Dunedin, New Zealand, August 10, 2020.     [Conference] [Pre-print (May'20)]

   A Tale from the Trenches: Cognitive Biases and Software Development
Souti Chattopadhyay, Nicholas Nelson, Audrey Au, Natalia Morales, Christopher Sanchez, Rahul Pandita, Anita Sarma.    
ICSE'20, Seoul, South Korea, May 23, 2020 (AR: 20.9%).     [Conference] [Pre-print (Feb'20)] [Distinguished Paper Award]
  Latent Patterns in Activities: A Field Study of How Developers Manage Context
Souti Chattopadhyay, Nicholas Nelson, Yenifer Ramirez Gonzalez, Annel Amelia Leon, Rahul Pandita, Anita Sarma.    
ICSE'19, Montreal, Canada, May 25, 2019 (AR: 20.6%).     [Conference] [Pre-print (Feb'19)] [Artifacts]

  The Life-Cycle of Merge Conflicts: Processes, Barriers, and Strategies
Nicholas Nelson, Caius Brindescu, Shane McKee, Anita Sarma, Danny Dig.    
EMSE, Empirical Software Engineering Journal (Springer), February 2019.     [Journal] [Pre-print (Feb'19)] [Artifacts]
  Context in Programming: An Investigation of How Programmers Create Context
Souti Chattopadhyay, Nicholas Nelson, Thien Nam, McKenzie Calvert, Anita Sarma.    
CHASE'18: Short Paper, Gothenburg, Sweden, May 27, 2018.     [Conference] [Pre-print (Apr'18)]
   Software Practitioner Perspectives on Merge Conflicts and Resolutions
Shane McKee, Nicholas Nelson, Anita Sarma, Danny Dig.    
ICSME'17, Shanghai, China, Sept. 17-22, 2017 (AR: 27.8%).     [Conference] [Pre-print (Aug'17)] [Slides] [Artifacts] [IEEE Software Blog] [Distinguished Paper Award]
   Trade-Offs in Continuous Integration: Assurance, Security, and Flexibility
Michael Hilton, Nicholas Nelson, Timothy Tunnell, Darko Marinov, Danny Dig.    
ESEC/FSE'17, Paderborn, Germany, Sept. 4-8, 2017 (AR: 24.4%).     [Conference] [Pre-print (Aug'17)] [Artifacts] [Distinguished Paper Award]

  Towards an IDE to Support Programming as Problem-Solving
Nicholas Nelson, Anita Sarma, AndrĂ© van der Hoek.    
PPIG'17, Delft, Netherlands, Jul 1-3, 2017.     [Conference] [Session] [Slides] [Project Code]
  Problem-Solving Applications in Developer Environments
Nicholas Nelson.    
PPIG'17: Doctoral Consortium, Delft, Netherlands, Jul 1-3, 2017.     [Conference] [Session]
  TDDViz: Using Software Changes to Understand Conformance to Test Driven Development
Michael Hilton, Nicholas Nelson, Hugh McDonald, Sean McDonald, Ron Metoyer, Danny Dig.    
XP'16, Edinburgh, United Kingdom, May 24-27, 2016.     [Conference] [Pre-print (Mar'16)] [Project Code]


  • PC Member: PROMISE 2020 Replication Challenge Track
  • Reviewer: EMSE 2020, TSE 2020
  • Sub-Reviewer: ESEC/FSE 2020, ICPC 2020, VL/HCC 2019, ESEC/FSE 2019, ASE 2019, ASE 2018, ASE 2017, UIST 2017, MSR 2017, ASE 2015
  • Student Volunteer: ICSE 2019
  • Teaching Assistant: CS362 - Software Engineering II (Spring 2020), CS361 - Software Engineering I (Fall 2017, Winter 2017, Winter 2016)
  • Mentor: