Thomas LaToza

  

Personal
 

Postdoctoral Research Associate
Software Design and Collaboration Lab

tlatoza [at] uci.edu

Office: Donald Bren Hall 5221

Mailing Address:
5208 Bren Hall
Department of Informatics
University of California, Irvine
Irvine, CA 92697-3440


CV
    Bio     Google Scholar

Travel
SPLASH
Portland, OR
October 21 - 22, 2014

Oregon State University
Corvallis, OR
October 20, 2014

Seattle, WA
October 17 - 19, 2014

UIST
Honolulu, HI
October 5 - 8, 2014


Professional Service
Co-Chair
2014
PLATEAU: Workshop on Evaluation and Usability of Programming Languages and Tools (SPLASH 2014)
CSI-SE: Workshop on Crowdsourcing in Software Engineering (ICSE 2014)

Program Committee Member:
2015
ICSE Demos: International Conference on Software Engineering, Demos Track

2014
ICSE Posters: International Conference on Software Engineering, Posters Track
ICSE Demos: International Conference on Software Engineering, Demos Track
CSMR-WCRE Demos: Conference on Software Maintenance, Reengineering and Reverse Engineering
CHASE: Workshop on Cooperative and Human Aspects of Software Engineering

2013
CHASE: Workshop on Cooperative and Human Aspects of Software Engineering
TOPI: Workshop on Developing Tools as Plug-ins
IS-EUD: International Symposium on End-User Development

2012 
SUITE: Workshop on the Evaluation and Usability of Programming Languages and Tools
USER: Workshop on User Evaluation for Software Engineering Researchers



 

Software engineering is an information intensive activity, requiring software developers to understand, diagnose, find, infer, critique, simulate, decide, and communicate. I design new ways for developers to do this work more effectively. My research is in software engineering, with a focus on human aspects of software development. Using HCI techniques, I observe professional software developers at work and build models of their activities. From this, I design development tools and processes, investigating ways to help developers work more effectively. My work spans several topics, including information needs in software development, tools for investigating and debugging in complex codebases, collaborative design at the whiteboard, and crowdsourcing software development.



Submit to PLATEAU 2014
Submissions due August 1, 2014

    
Observations, surveys, and interviews of developers at work
[CHASE13] [PLATEAU10] [ICSE10] [CHASE10] [FSE07] [ICSE06]

Microtasking software development
[UIST14][CrowdConf13] [CHASE13]
Supporting informal design at the whiteboard [CHI14][ICSE13ed]
Guidance on designing and evaluating useful tools for developers
[ESE13] [PLATEAU11] [CHASE10] [course]
              
Supporting investigations of complex code
[VL/HCC11] [ICSE10] [FSE07]
What do we know about human aspects of software development?
[bibliography]
How has software engineering research changed over time?
[tag clouds]

Selected Papers

Calico: an interactive tool for informal software design
Nicolas Mangano, Thomas D. LaToza, Marian Petre, André van der Hoek
In submission to: Transactions on Software Engineering
Reviews the design literature to identify 14 behaviors designers engage in during informal software design and introduces Calico, a distributed sketching system. Reports results from an extensive field deployment to three groups spanning over 70,000 user actions.
submission  local pdf
How software designers interact with sketches at the whiteboard
Nicolas Mangano, Thomas D. LaToza, André van der Hoek, Marian Petre
In submission to: Transactions on Software Engineering
Using a manually coded dataset of 4,000 sketch-related events, examines how sketches support informal design 'in the moment' through an analysis of the relationships between sketches and the reasoning activities they help to enable.
submission  local pdf
Microtask programming: building software with a crowd
Thomas D. LaToza, W. Ben Towne, Christian M. Adriano, André van der Hoek
UIST 2014: Symposium on User Interface Software and Technology
Introduces an approach for programming through microtasks and presents CrowdCode, an online IDE for microtask programming.
full paper (acceptance rate: 22%)  local pdf

Supporting informal design with interactive whiteboards
Nicolas Mangano, Thomas D. LaToza, Marian Petre, André van der Hoek
CHI14: Conference on Human Factors in Computing Systems
Identifies 14 behaviors to support in informal design at the whitebord, and reports on three field deployments of an interactive whiteboard conducted to undersand the opportunities and challenges in supporting informal design.
full paper (acceptance rate: 23%)   local pdf, youtube, project website

CrowdCode: a platform for crowd development
Thomas D. LaToza, Eric Chiquillo, W. Ben Towne, Christian M. Adriano, and André van der Hoek
CrowdConf 2013
Introduces CrowdCode, an online IDE platform for crowdsourcing software development, and surveys an approach for decomposing programming tasks into self-contained, parellelizable microtasks.
abstract   local pdf, pdf in Portugese, slides, poster, project website



A practical guide to controlled experiments of software engineering tools with human participants
Andrew J. Ko, Thomas D. LaToza, Margaret M. Burnett
ESE: Empirical Software Engineering, Sept 2013
Provides guidance on practical aspects of experimental design, grounded in a systematic literature review of tool evaluations that were published in over 1,700 software engineering papers published from 2001 to 2011.
journal article   doi

Crowd development
Thomas D. LaToza, W. Ben Towne, André van der Hoek, and James D. Herbsleb
CHASE 2013: Workshop on the Cooperative and Human Aspects of Software Engineering
Provides a vision for a new software development process incorporating microtasking, potentially enabling software to be built dramatically faster through higher parallelism and small contributions by casual participants.
workshop paper    local pdf, project website


A study of architectural decision practices
Thomas D. LaToza, Evelina Shabani, and André van der Hoek
CHASE 2013: Workshop on the Cooperative and Human Aspects of Software Engineering
Reports findings from interviews of developers on their architectural decision practices. Results suggest that architectural decisions are often technology decisions and are sometimes revisited, causing software rewrites, following the discovery of an Achilles’ heel.
workshop paper     local pdf, poster


Enabling a classroom design studio with a collaborative sketch design tool
Dastyni Loksa, Nicolas Mangano, Thomas LaToza, and André van der Hoek
ICSE 2013: International Conference on Sofware Engineering, Education Track
Reports findings from a deployment of a distributed interactive sketching tool - Calico - in a software design studio course. Results suggest that Calico enables students to work effectively in teams on design problems and quickly develop, refine, and evaluate designs.
full paper (acceptance rate: 27%)   doi, project website



Active code completion
Cyrus Omar, YoungSeok Yoon, Thomas D. LaToza, and Brad A. Myers
ICSE 2012: International Conference on Software Engineering
Introduces Graphite, an IDE plugin providing interactive and highly-specialized code generation interfaces through code completion. Reports survey and lab study data on the contexts in which such a system could be useful.
full paper (acceptance rate: 21%)   local pdf, doi, youtube, project website, github
           Answering Reachability Questions
Thomas D. LaToza
Dissertation, Carnegie Mellon University
dissertation   local pdf, cmu tr



Designing useful tools for developers
Thomas D. LaToza and Brad A. Myers
PLATEAU 11: Workshop on the Evaluation and Usability of Programming Languages and Tools
Describes a user-centered design process for creating useful tools for software developers, outlining approaches to identify and understand the context and frequency of an important problem, design a solution, and evaluate its effectiveness.
workshop paper   local pdf, doi


Visualizing call graphs
Thomas D. LaToza and Brad A. Myers
VL/HCC 2011: Symposium on Visual Languages and Human-Centric Computing
Introduces Reacher, an IDE plugin supporting code investigation. Lab study results suggest Reacher enables developers to answer reachability questions faster and more successfully.
full paper (acceptance rate: 33%)   local pdf, doi
  
Hard-to-answer questions about code
Thomas D. LaToza and Brad A. Myers
PLATEAU 10: Workshop on the Evaluation and Usability of Programming Languages and Tools
Reports results from a survey of hard-to-answer questions developers ask, revealing 94 questions across 24 categories, many of which are not addressed by exisiting SE tools.
workshop paper   local pdf, doi

Developers ask reachability questions
Thomas D. LaToza and Brad A. Myers
ICSE 2010: International Conference on Software Engineering
Reports results from three studies examining challenges investigating code. Results suggest developers can spend tens of minutes answering a single question, get lost and disoriented, and erroneously make assumptions that result in bugs.
full paper (acceptance rate: 14%)  local pdf, doi
        On the importance of understanding the strategies that developers use
Thomas D. LaToza and Brad A. Myers
CHASE 2010: Workshop on Cooperative and Human Aspects of Software Engineering
Motivates understanding developers strategies to identify opportunities for novel developer tools and examines several common strategies in programming tasks.
workshop paper   local pdf, doi

Questions about object structure during coding activities
Marwan Abi-Antoun, Nariman Ammar, T. LaToza
CHASE 2010: Workshop on Cooperative and Human Aspects of Software Engineering
Reports data from observations of developers performing maintenance tasks. Identifies typical questions about object structure, examining their frequency and context.
workshop paper    local pdf, doi



Program comprehension as fact finding
Thomas D. LaToza, David Garlan, James D. Herbsleb, and Brad A. Myers
ESEC/FSE 2007:  Joint Meeting of the European Software Engineering Conference and the Symposium on the Foundations of Software Engineering
Reports results from observations of complex maintenance tasks. Describes a model of program comprehension and reports findings on the benefits of development experience.
full paper (acceptance rate: 17%)  local pdf, doi
        Maintaining Mental Models: A Study of Developer Work Habits
Thomas D. LaToza, Gina Venolia, Robert DeLine
ICSE 2006: International Conference on Software Engineering, Experience Track
Reports results from surveys and interviews of professional software developers. Results reveal developers' use of tools, perceived problems, and practices involving code ownership, rationale, code duplication, and interruptions.
full paper   local pdf, doi

   
Understanding and modifying procedural versus object-oriented programs: where does domain knowledge help more?
Thomas D. LaToza and Alex Kirlik
Cognitive Science 2004: Annual Meeting of the Cognitive Science Society
Experimentally tests if work with OO code benefits more from domain knowledge than work with procedural code. Results suggest domain knowledge benefits work with procedural code, rather than OO code.
poster    conference pdf, local pdf

Students

I've been fortunate to work with and informally advise a number of great students:

Former
Christian Adriano (phd)
Eric Chiquillo (undergrad)
Vasken Houdoverdov (undergrad)
Evelina Shabani (undergrad)
Steven Morad (undergrad)
Patrick Nguyen (H.S. intern)