Portrait of Rob DeLine

Rob DeLine

Principal Researcher

About

I am a tool maker. The focus of my research is to understand and improve the human aspects of technical work, like software development, machine learning, and data science, with the goal inventing better tools. To create tools, I believe strongly in user-centered design. First, I directly engage with the technical workers I aim to help, for example through observations, interviews and surveys. Next, I design and prototype new tools, often in collaboration with their earliest adopters. Finally, I evaluate the (hopefully positive) effects the tools have on the work, which kicks off another iteration of study.

Most of my career I have focused on tools for software development. Because software development is both collaborative and complex, developers often have questions and stall in their work until they get answers, frequently from their colleagues. That is, a developer’s work day involves three interrelated activities: information seeking (to pose questions), multitasking (to manage blocked work), and communication (to learn answers and unblock work). One line of my research documented this behavior and created tools to support multitasking, particularly by taking advantage of spatial memory (Debugger Canvas, Code Canvas, Code Thumbnails) and to get answers from a recommendation system (Team Tracks). One important case of information seeking is learning to use third-party libraries (application programming interfaces, or APIs). Another line of my research documented the barriers to learning APIs and investigated moving some rules for using APIs into the programming language (Code Contracts, Boogie, Fugue, Vault). My earliest line of research helped novice and end-user programmers learn to create interactive experiences (Alice).

Projects

Trill

Established: September 19, 2013

Trill is a high-performance in-memory incremental analytics engine. It can handle both real-time and offline data, and is based on a temporal data and query model. Trill can be used as a streaming engine, a lightweight in-memory relational engine, and…

Tempe

Established: September 12, 2013

Tempe is a web service for exploratory data analysis. Below are images of the notebook pages mentioned in our submission to ICSE 2014.

User Experience with Big Data

Big data analytics requires new workflows: high latency queries, massively-parallel code, and cloud computing infrastructures all make handling a big dataset different (and harder) than working on a local machine. We are exploring user experiences for analysts, and thinking about…

Debugger Canvas

Established: May 16, 2011

Microsoft and Brown University have collaborated to create Debugger Canvas, a free Power Tool that adds Code Bubbles™ to Visual Studio for a new way to debug. Debugger Canvas has now been released publically on DevLabs! Please…

Publications

2015

2014

2013

2012

2011

2010

2009

2008

2007

2006

2005

2001

1999

1997

1996

1995

1994

1992

1991

Other

To make a prairie it takes a clover and one bee,—
One clover, and a bee,
And revery.
The revery alone will do
If bees are few.
— Emily Dickinson, 1830-1886

Curriculum Vitae (including complete publication list)