Tutorons: Generating Context-Relevant, On-Demand Explanations and Demonstrations of Online Code (Tutorons)

Andrew Head, Björn Hartmann and Marti Hearst

National Science Foundation 1149799

Programmers frequently turn to the web to solve problems and find example code. For the sake of brevity, the snippets in online instructions often gloss over the syntax of languages like CSS selectors and Unix commands. Programmers must compensate by consulting external documentation. In this project, we propose language-specific routines called Tutorons that automatically generate context-relevant, on-demand micro- explanations of code. A Tutoron detects explainable code in a web page, parses it, and generates in-situ natural language explanations and demonstrations of code. So far, we have built Tutorons for CSS selectors, regular expressions, and the Unix command “wget”. We demonstrate techniques for generating natural language explanations through template instantiation, synthesizing code demonstrations by parse tree traversal, and building compound explanations of co-occurring options. Through qualitative studies, we show that Tutoron-generated explanations can reduce the need for reference documentation in code modification tasks.

[1]
Andrew Head et al. 2015. Tutorons: Generating Context-Relevant, On-Demand Explanations and Demonstrations of Online Code. VL/HCC '15.

More information: http://www.tutorons.com