[squeak-dev] "Code bubbles" - a prototype IDE

Frank Shearar frank.shearar at gmail.com
Sat Aug 30 09:10:58 UTC 2014

Again, projects moving towards viewing small chunks of code/data
(whether method, class definition, variables in a stack frame, etc).
Familiar stuff, and maybe food for thought for alternative code


Developers spend significant time reading and navigating code
fragments spread across multiple locations. The file-based nature of
contemporary IDEs makes it prohibitively difficult to create and
maintain a simultaneous view of such fragments. We propose a novel
user interface metaphor for code understanding and maintanence based
on collections of lightweight, editable fragments called bubbles,
which form concurrently visible working sets.

The essential goal of this project is to make it easier for developers
to see many fragments of code (or other information) at once without
having to navigate back and forth. Each of these fragments is shown in
a bubble.

A bubble is a fully editable and interactive view of a fragment such
as a method or collection of member variables. Bubbles, in contrast to
windows, have minimal border decoration, avoid clipping their contents
by using automatic code reflow and elision, and do not overlap but
instead push each other out of the way. Bubbles exist in a large,
pannable 2-D virtual space where a cluster of bubbles comprises a
concurrently visible working set. Bubbles support a lightweight
grouping mechanism, and further support connections between them.

A quantitative user study indicates that Code Bubbles increased
performance significantly for two controlled code understanding tasks.
A qualitative user study with 23 professional developers indicates
substantial interest and enthusiasm for the approach, despite the
radical departure from what developers are used to.

More information about the Squeak-dev mailing list