Support programming problem solving with contextual help

Amy J. Ko
Bits and Behavior
Published in
2 min readMay 29, 2017
The Idea Garden, integrated into the Gidget programming game.

Programming problem solving is still more of an art than a science. My lab has only just begun investigating it from a self-regulation perspective (Loksa & Ko 2017, Loksa et al. 2017), which, while powerful, only intervenes at a meta-level, helping learners help themselves more effectively. There’s little work that attempts to explicitly provide guidance on how to solve problems directly.

This is where the Idea Garden fits in. My collaborator (and former undergraduate research mentor!) Margaret Burnett started work on this a few years ago as an effort to help end users get “unstuck” when writing simple software to solve problems. The basic idea behind an Idea Garden help system is to provide on-demand, in-context problem solving strategies.

My student Michael Lee and I started collaborating on Margaret’s project when she and her students began integrating the work into Gidget, our debugging game. This third integration culminated into a synthesis of the Idea Garden design, which included seven design principles:

  1. Make strategies explicit
  2. Make strategies actionable
  3. Contextualize strategy recommendations to a learners’ situation
  4. Convey strategies in a constructive, non-authoritative tone
  5. Support both comprehensive and selective information processing styles
  6. Engage learners with content through contextual hints
  7. Use “negotiated” interruptions, “decorating” the environment with information with progressive levels of detail.

Underlying hypothesis is that by following these principles, any programming environment can better help users recover from insurmountable barriers by compelling users to attempt new, different strategies.

Does it work? Results are promising. Using integrations in Gidget and the Cloud9 IDE, learners who had access to the Idea Garden used it, and sought less in-person help than learners who didn’t have the Idea Garden. These results suggest that in-context strategy recommendations can make learners more independent problem solvers.

If you’re interested in learning more, our recently published journal paper digs deep on the principles, the multiple implementations of Idea Garden prototypes, and several studies in which the prototypes were evaluated:

Will Jernigan, Amber Horvath, Michael J. Lee, Margaret M. Burnett, Taylor Cuilty, Sandeep Kuttal, Anicia Peters, Irwin Kwan, Faezeh Bahmani, Andrew Ko, Christopher J. Mendez, and Alannah Oleson (2017). General Principles for a Generalized Idea Garden. Journal of Visual Languages and Computing (JVLC), to appear.

--

--

Amy J. Ko
Bits and Behavior

Professor, University of Washington iSchool (she/her). Code, learning, design, justice. Trans, queer, parent, and lover of learning.