PB Projection Boxes


Live programming is a regime in which the programming environment provides continual feedback, most often in the form of runtime values. In this project, we explore 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 projec- tions to pick a subset of the semantics to display. By varying the projection used, projection boxes can encode both previ- ously 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 have already demonstrated 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.


Clip showing how projection boxes work


Projection Boxes: On-the-fly Reconfigurable Visualization for Live Programming (CHI 2020)
    Sorin Lerner

Artifacts (Code, etc)

Comming soon.