Taming the IDE 

with fine-grained interaction data
Roberto Minelli, Andrea Mocci,

Romain Robbes, Michele Lanza
REVEAL @ Faculty of Informatics – Università della Svizzera italiana
PLEIAD @ Departamento de Ciencias de la Computación – University of Chile
@robertominelli
Footprints: History-rich tools for information foraging
A. Wexelblat, P. Maes
SIGCHI 1999, pp. 270–277
“The information path obtained from
navigation in an information space reveals
the user’s mental model of the system.”
An exploratory study of how developers seek, relate, and collect
relevant information during software maintenance tasks
A. J. Ko, B. A. Myers, M. J. Coblenz, H. H. Aung
IEEE TSE 2006, vol. 32, no. 12, pp. 971–987
“Developers spend 35% of their time
navigating the source code in search 

for information.”
tabs-based
tabs-based
windows-based
tabs-based
windows-based novel paradigms
Autumn Leaves: Curing the Window Plague in IDEs
D. Roethlisberger, O. Nierstrasz, S. Ducasse
WCRE 2009, 237–246
“Developers are forced to open views on
numerous source artifacts […], leading to a
crowded workspace.”
How chaotic
is the UI of the IDE?
How chaotic
is the UI of the IDE?
Nonlinear dynamics and chaos.
J. M. T. Thompson and H. B. Stewart
John Wiley & Sons, 2002
DISCLAIMER



Our “chaos” has nothing to do
with “deterministic chaos”
developer IDE
developer IDE
navigate
developer IDE
edit
developer IDE
inspect
developer IDE
user input
developer IDE
user interface
developer
navigate
userinterface
userinput
edit
inspect
IDE
interaction
data
developer
navigate
userinterface
userinput
edit
inspect
IDE
I know what you did last summer: 

An investigation of how developers spend their time
R. Minelli, A. Mocci, M. Lanza
ICPC 2015, pp. 25–35
DFlow
interaction
data
1,631 sessions
17 developers
28' 22" avg. session duration
Dataset
1,631 sessions
17 developers
28' 22" avg. session duration
>770h total time
40,140 # of windows
Dataset
1,631 sessions
17 developers
28' 22" avg. session duration
>770h total time
40,140 # of windows
> 102h User Interface Time
> 595h Understanding Time
Dataset I know what you did last summer: 

An investigation of how developers spend their time
R. Minelli, A. Mocci, M. Lanza
ICPC 2015, pp. 25–35
How chaotic
is the UI of the IDE?
Space Occupancy Metrics
Space Occupancy Metrics
Occupied
Free
Focus
Needed
Space Metrics
Space Occupancy Metrics
Occupied
Free
Focus
Needed
Space
Depth
Space Metrics Overlapping Metrics
Weighted
Space Occupancy Metrics
Space Occupancy Metrics
Screen
Space
Free
Space
Space Occupancy Metrics
Screen
Space
No
Overlapping
Free
Space
Space Occupancy Metrics
Screen
Space
No
Overlapping
Low
Overlapping
(Depth: 2)
Free
Space
Space Occupancy Metrics
Screen
Space
No
Overlapping
Low
Overlapping
(Depth: 2)
High
Overlapping
(Depth: 4)
Free
Space
Space Occupancy Metrics
Screen
Space
No
Overlapping
Low
Overlapping
(Depth: 2)
High
Overlapping
(Depth: 4)
Free
Space
Space Occupancy Metrics
Focus
Space
Screen
Space
Space Occupancy Metrics
+ +
+ +
+ +
Space Occupancy Metrics
Occupied
Free
Focus
Needed
Space
Depth
Space Metrics Overlapping Metrics
Weighted
Space Occupancy Metrics
Occupied
Free
Focus
Needed
Space
Depth
48.22%
51.78%
Space Metrics Overlapping Metrics
Weighted
Space Occupancy Metrics
Occupied
Free
Focus
Needed
Space
Depth
48.22%
51.78%
32.66%
Space Metrics Overlapping Metrics
Weighted
Space Occupancy Metrics
Occupied
Free
Focus
Needed
Space
Depth
48.22%
51.78%
32.66%
96.83%
Space Metrics Overlapping Metrics
Weighted
Space Occupancy Metrics
Occupied
Free
Focus
Needed
Space
Depth
48.22%
51.78%
32.66%
96.83%
20.95%
2.76
69.05%
Space Metrics Overlapping Metrics
Weighted
Chaos Levels
Chaos Levels
Comfy Ok
Chaos Levels
Comfy Ok HellMess
Chaos Levels
Comfy Ok HellMess
100%0%
: Needed Space
Chaos Levels
Comfy Ok HellMess
100%0%
: Needed Space
200%75%
Chaos Levels
Comfy Ok HellMess
: Results
11%
21%
17%
51%
51.04% 16.98% 21.11% 10.88%
Developers spend more than 30% of their time 

in highly chaotic IDE configurations…
Developers spend more than 30% of their time 

in highly chaotic IDE configurations…
so
what?
Correlation Analysis I know what you did last summer: 

An investigation of how developers spend their time
R. Minelli, A. Mocci, M. Lanza
ICPC 2015, pp. 25–35
5%
8%
14%
70%
Correlation Analysis
vs.
I know what you did last summer: 

An investigation of how developers spend their time
R. Minelli, A. Mocci, M. Lanza
ICPC 2015, pp. 25–35
11%
21%
17%
51%
Chaos Levels
Correlation Analysis
vs.
I know what you did last summer: 

An investigation of how developers spend their time
R. Minelli, A. Mocci, M. Lanza
ICPC 2015, pp. 25–35
Comfy
Ok
-0.34
-0.04
11%
21%
17%
51%
Chaos Levels
not statistically significant
statistically significant
Correlation Analysis
vs.
I know what you did last summer: 

An investigation of how developers spend their time
R. Minelli, A. Mocci, M. Lanza
ICPC 2015, pp. 25–35
Comfy
Ok
Mess
Hell
-0.34
-0.04
0.16
0.42
11%
21%
17%
51%
Chaos Levels
not statistically significant
statistically significant
Correlation Analysis
vs.
I know what you did last summer: 

An investigation of how developers spend their time
R. Minelli, A. Mocci, M. Lanza
ICPC 2015, pp. 25–35
Comfy
Ok
Mess
Hell
-0.34
-0.04
0.16
0.42
Comfy
Ok
Mess
Hell
-0.27
0.05
0.11
0.26
11%
21%
17%
51%
Chaos Levels
not statistically significant
statistically significant
Developers spend more than 30% of their time 

in highly chaotic IDE configurations…
Developers spend more than 30% of their time 

in highly chaotic IDE configurations…
…and this impacts both 

UI and understanding time!
How can we tame it?
Main IDE Windows
Main IDE Windows
Code browser
source code
Main IDE Windows
Code browser Debugger
source code
Main IDE Windows
Code browser Debugger Send / Implement
source code
Taming Strategies
Elision Layout
Elision Strategy
Elision Strategy
Layout Strategy
Screen
Space
Layout Strategy
Screen
Space
Taming Strategies in Practice
Screen
Space
Window
in focus
Taming Strategies in Practice
Elision
Screen
Space
Window
in focus
Taming Strategies in Practice
Layout
Screen
Space
Window
in focus
Chaos Levels
Comfy Ok HellMess
: Results
11%
21%
17%
51%
51.04% 16.98% 21.11% 10.88%
Chaos Levels
Comfy Ok HellMess
: Results
+17.73% -1.35% -8.08% -8.30%
3%
13%
16%
69%
11%
21%
17%
51%
Taming the IDE 

with fine-grained interaction data
Taming the IDE 

with fine-grained interaction data
Taming the IDE 

with fine-grained interaction data
Taming the IDE 

with fine-grained interaction data
Taming the IDE 

with fine-grained interaction data
@robertominelli
Taming the IDE 

with fine-grained interaction data
Roberto Minelli, Andrea Mocci,

Romain Robbes, Michele Lanza

Taming the IDE with Fine-Grained Interaction Data