ElectroTutor: Test-Driven Physical Computing Tutorials

A wide variety of tools for creating physical computing systems have been developed, but getting started in this domain remains challenging for novices. In this paper, we introduce test-driven physical computing tutorials, a novel application of interactive tutorial systems to better support users in building and programming physical computing systems. These tutorials inject interactive tests into the tutorial process to help users verify and understand individual steps before proceeding. We begin by presenting a taxonomy of the types of tests that can be incorporated into physical computing tutorials. We then present ElectroTutor, a tutorial system that implements a range of tests for both the software and physical aspects of a physical computing system. A user study suggests that ElectroTutor can improve users' success and confidence when completing a tutorial, and save them time by reducing the need to backtrack and troubleshoot errors made on previous tutorial steps.

[1]  Caitlin Kelleher,et al.  Stencils-based tutorials: design and evaluation , 2005, CHI.

[2]  Neil T. Heffernan,et al.  AXIS: Generating Explanations at Scale with Learnersourcing and Machine Learning , 2016, L@S.

[3]  Sara Jones,et al.  Crossed Wires: Investigating the Problems of End-User Developers in a Physical Computing Task , 2016, CHI.

[4]  Scott R. Klemmer,et al.  Authoring sensor-based interactions by demonstration with direct manipulation and pattern recognition , 2007, CHI.

[5]  Steven Li,et al.  Crowdsourced Fabrication , 2016, UIST.

[6]  Joseph Jay Williams,et al.  Understanding the Effect of In-Video Prompting on Learners and Instructors , 2018, CHI.

[7]  Michael S. Bernstein,et al.  Reflective physical prototyping through integrated design, test, and analysis , 2006, UIST.

[8]  Mary Beth Rosson,et al.  Paradox of the active user , 1987 .

[9]  Björn Hartmann,et al.  ShowMeHow: translating user interface instructions between applications , 2011, UIST.

[10]  Susan Palmiter,et al.  Animated Demonstrations vs Written Instructions for Learning Procedural Tasks: A Preliminary Investigation , 1991, Int. J. Man Mach. Stud..

[11]  Dan R. Olsen,et al.  Help by guided tasks: utilizing UIMS knowledge , 1990, CHI '90.

[12]  Elena L. Glassman,et al.  Learnersourcing Personalized Hints , 2016, CSCW.

[13]  Hans-Werner Gellersen,et al.  SPATA: Spatio-Tangible Tools for Fabrication-Aware Design , 2015, TEI.

[14]  Björn Hartmann,et al.  Bifröst: Visualizing and Checking Behavior of Embedded Systems across Hardware and Software , 2017, UIST.

[15]  Björn Hartmann,et al.  Authoring multi-stage code examples with editable code histories , 2013, UIST.

[16]  Tovi Grossman,et al.  ToolClips: an investigation of contextual video assistance for functionality understanding , 2010, CHI.

[17]  Tovi Grossman,et al.  Sketch-sketch revolution: an engaging tutorial system for guided sketching and application learning , 2011, UIST.

[18]  Sean Follmer,et al.  Drill Sergeant: Supporting Physical Construction Projects through an Ecosystem of Augmented Tools , 2016, CHI Extended Abstracts.

[19]  Juho Kim,et al.  Improving learning with collective learner activity , 2015 .

[20]  Mitchel Resnick,et al.  Engaging Amateurs in the Design, Fabrication, and Assembly of Electronic Devices , 2016, Conference on Designing Interactive Systems.

[21]  David S. Kreiner,et al.  Incorporating Active Learning with PowerPoint-Based Lectures Using Content-Based Questions , 2009 .

[22]  Kent L. Beck,et al.  Test-driven Development - by example , 2002, The Addison-Wesley signature series.

[23]  Tessa A. Lau,et al.  DocWizards: a system for authoring follow-me documentation wizards , 2005, UIST.

[24]  Pei-Yu Chi,et al.  MixT: automatic generation of step-by-step mixed media tutorials , 2012, CHI Extended Abstracts.

[25]  Tovi Grossman,et al.  GamiCAD: a gamified tutorial system for first time autocad users , 2012, UIST.

[26]  Tovi Grossman,et al.  Community enhanced tutorials: improving tutorials with multiple demonstrations , 2013, CHI.

[27]  Takeo Igarashi,et al.  Generating photo manipulation tutorials by demonstration , 2009, ACM Trans. Graph..

[28]  Tovi Grossman,et al.  Smart Makerspace: An Immersive Instructional Space for Physical Tasks , 2015, ITS.

[29]  John Millar Carroll The Nurnberg Funnel: Designing Minimalist Instruction for Practical Computer Skill , 1990 .

[30]  Björn Hartmann,et al.  The Toastboard: Ubiquitous Instrumentation and Automated Checking of Breadboarded Circuits , 2016, UIST.

[31]  Mike Y. Chen,et al.  CircuitSense: Automatic Sensing of Physical Circuits and Generation of Virtual Circuits to Support Software Tools. , 2017, UIST.

[32]  Krzysztof Z. Gajos,et al.  Crowdsourcing step-by-step information extraction to enhance existing how-to videos , 2014, CHI.

[33]  Andrea Bunt,et al.  Task-centric interfaces for feature-rich software , 2014, OZCHI.

[34]  M. Chi,et al.  Eliciting Self‐Explanations Improves Understanding , 1994 .

[35]  Tovi Grossman,et al.  Trigger-Action-Circuits: Leveraging Generative Design to Enable Novices to Design and Build Circuitry , 2017, UIST.

[36]  Mira Dontcheva,et al.  Pause-and-play: automatically linking screencast video tutorials with applications , 2011, UIST.

[37]  Philip J. Guo,et al.  Torta: Generating Mixed-Media GUI and Command-Line App Tutorials Using Operating-System-Wide Activity Tracing , 2017, UIST.

[38]  Sean Follmer,et al.  Scanalog: Interactive Design and Debugging of Analog Circuits with Programmable Hardware , 2017, UIST.