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

ICSE
Florence, Italy
May 19 - 22, 2015


Seattle, WA
December 20 - 26, 2014

FSE
Hong Kong, China
November 16 - 20, 2014



Professional Service
Co-Chair
2015
CSI-SE: Second International Workshop on Crowdsourcing in Software Engineering

2014
PLATEAU: Workshop on Evaluation and Usability of Programming Languages and Tools
CSI-SE: First International Workshop on Crowdsourcing in Software Engineering

Program Committee:
2015
VL/HCC: Symposium on Visual Languages and Human-Centric Computing
ICSE Demos: International Conference on Software Engineering, Demos Track
IS-EUD: International Symposium on End-User Development
CHASE: Workshop on Cooperative and Human Aspects of Software Engineering

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



 
Software engineering is a complex and multifaceted endeavor. Within the broad domain of software engineering, I create new ways for software developers to build software more effectively and efficiently. I engage with software professionals – observing and interviewing developers at work – to understand where and how technology can help, and design new ways for developers to program, design, and collaborate.



2nd International Workshop on CrowdSourcing in Software Engineering

Submission deadline: 1/23/15


Press
Crowd programming featured in ACM TechNews, Techwire, and Campus Technology.


    
Studies of software development practice
[CHASE13] [PLATEAU10] [CHASE10] [FSE07] [ICSE06]

Crowd development
[ICSE15] [UIST14] [CSD14]
[CrowdConf13] [CHASE13]
Supporting informal design at the whiteboard [TSE15] [CHI14]
[ICSE13ed]
Guidance on designing and evaluating useful tools for software professionals
[ESE13] [PLATEAU11] [CHASE10] [course]
              
Tools for programming
[ICSE12] [VL/HCC11] [ICSE10]
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, and 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, project website, github
     Borrowing from the crowd: a study of recombination in software design competitions
Thomas D. LaToza, Micky Chen, Luxi Jiang, Mengyao Zhao, and André van der Hoek
To appear in ICSE 2015: International Conference on Software Engineering
Reports findings from an architecture and user experience design competition, examining where and how borrowing ideas from other designs helps to improve software designs.
full paper submission, materials and data
How software designers interact with sketches at the whiteboard
Nicolas Mangano, Thomas D. LaToza, Marian Petre, and André van der Hoek
To appear in 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.
journal article  local pdf, doi, materials and data



Harnessing the crowd: decontextualizing software work
Thomas D. LaToza, W. Ben Towne, and André van der Hoek
CSD 2014: 1st International Workshop on Context in Software Development
Explores how organizing software work into self-contained, low-context microtasks opens new opportunities for software development.
workshop paper   local pdf, project webiste
Microtask programming: building software with a crowd
Thomas D. LaToza, W. Ben Towne, Christian M. Adriano, and 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, doi, youtube, slides, project webiste

Supporting informal design with interactive whiteboards
Nicolas Mangano, Thomas D. LaToza, Marian Petre, and André van der Hoek
CHI 2014: 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, doi, youtube, project website, github

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, and 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 (acceptance rate: 63%)   local pdf, doi, 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 (acceptance rate: 63%)    local pdf, doi, 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, and 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, and 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 (acceptance rate: 18%)   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)


Funding

National Science Foundation, Crowd Programming, $1.4M