Projection Boxes: On-the-fly Reconfigurable Visualization for Live Programming
Live programming is a regime in which the programming environment provides continual feedback, most often in the form of runtime values. In this paper, we present Projection Boxes, a novel visualization technique for displaying runtime values of programs. The key idea behind projection boxes is to start with a full semantics of the program, and then use projections to pick a subset of the semantics to display. By varying the projection used, projection boxes can encode both previously known visualization techniques, and also new ones. As such, projection boxes provide an expressive and configurable framework for displaying runtime information. Through a user study we demonstrate that (1) users find projection boxes and their configurability useful (2) users are not distracted by the always-on visualization (3) a key driving force behind the need for a configurable visualization for live programming lies with the wide variation in programmer preferences.
Research Questions / Practical Problems
Question signals indexed for this paper.
- 80%
Augmenting Code with In Situ Visualizations to Aid Program Understanding
CHI '18· Interactive Data Visualization +1
- 80%
InterLink: Linking Text with Code and Output in Computational Notebooks
CHI '25· Interactive Data Visualization +1
- 67%
A Visual Interaction Framework for Dimensionality Reduction Based Data Exploration
CHI '18· Interactive Data Visualization +1
- 67%
Scraps: Enabling Mobile Capture, Contextualization, and Use of Document Resources
CHI '21· Interactive Data Visualization +1
- 67%
Meridian: A Design Framework for Malleable Overview-Detail Interfaces
UIST '25· Interactive Data Visualization +1
Based on Jaccard similarity of research subtopics & professions (≥60%)