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

NC State University
Raleigh, NC
March 4, 2014


Seattle, WA
December 21 - 27, 2013


MobileWorks
Berkeley, CA
December 6, 2013


CrowdConf
San Francisco, CA
October 22, 2013


GE Research
San Ramon, CA
October 21, 2013


IBM Research - Watson
Ossining, NY
October 5 - October 8, 2013

Professional Service
Co-Organizer
2014
CSI-SE: Crowdsourcing in Software Engineering

Program Committee Member:
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.

I'm on the job market, seeking a tenure-track faculty position!

Application materials:     CV         research statement          teaching statement

Crowdsourcing in Software Engineering (CSI-SE)
Workshop held in conjunction with ICSE 2014
Featuring invited speakers, posters, demos, and a working session exploring all aspects of open contribution to software work.

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

Microtasking software development
[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


Supporting informal design with interactive whiteboards
Nicolas Mangano, Thomas D. LaToza, Marian Petre, André van der Hoek
To appear in 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:

Current
Christian Adriano (phd)

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