Mon 5 Nov 2018 15:30 - 15:55 at Beacon Hill - Interactive Tools & Breakout Chair(s): Sarah Chasins

Programmers frequently learn from examples produced and shared by other programmers. However, it can be challenging and time-consuming to produce concise, working code examples. We conducted a formative study where 12 participants made examples based on their own code. This revealed a key hurdle: making meaningful simplifications without introducing errors. Based on this insight, we designed a mixed-initiative tool, CodeScoop, to help programmers extract executable, simplified code from existing code. CodeScoop enables programmers to “scoop” out a relevant subset of code. Techniques include selectively including control structures and recording an execution trace that allows authors to substitute literal values for code and variables. In a controlled study with 19 participants, CodeScoop helped programmers extract executable code examples with the intended behavior more easily than with a standard code editor.

Andrew studies computer science as a PhD candidate at UC Berkeley. He dreams of a future where rediscovery is a thing of the past, because people readily share the lessons they learn in their everyday life. He has built and studied software development tools with software engineering research teams at Google and Microsoft Research. His work appears at top academic conferences in software engineering and human-computer interaction including CHI and ICSE.

Mon 5 Nov

15:30 - 17:00: PLATEAU 2018 - Interactive Tools & Breakout at Beacon Hill
Chair(s): Sarah ChasinsUniversity of California, Berkeley
plateau-2018-papers15:30 - 15:55
Andrew HeadUC Berkeley
plateau-2018-papers15:55 - 16:00
Junho LeeKorea University, Dowon SongKorea University, Sunbeom SoKorea University, Hakjoo OhKorea University
plateau-2018-papers16:00 - 16:05
plateau-2018-papers16:05 - 16:10
Akio OkaTokyo Institute of Technology, Hidehiko MasuharaTokyo Institute of Technology, Tomoyuki AotaniTokyo Institute of Technology
plateau-2018-papers16:10 - 17:00