Programming, Problem Solving, and Self-Awareness: Effects of Explicit
Guidance
Learning Programming
/
Loksa, Dastyni
/
Ko, Andrew J.
/
Jernigan, Will
/
Oleson, Alannah
/
Mendez, Christopher J.
/
Burnett, Margaret M.
Proceedings of the ACM CHI'16 Conference on Human Factors in Computing
Systems
2016-05-07
v.1
p.1449-1461
© Copyright 2016 ACM
Summary: More people are learning to code than ever, but most learning opportunities
do not explicitly teach the problem solving skills necessary to succeed at
open-ended programming problems. In this paper, we present a new approach to
impart these skills, consisting of: 1) explicit instruction on programming
problem solving, which frames coding as a process of translating mental
representations of problems and solutions into source code, 2) a method of
visualizing and monitoring progression through six problem solving stages, 3)
explicit, on-demand prompts for learners to reflect on their strategies when
seeking help from instructors, and 4) context-sensitive help embedded in a code
editor that reinforces the problem solving instruction. We experimentally
evaluated the effects of our intervention across two 2-week web development
summer camps with 48 high school students, finding that the intervention
increased productivity, independence, programming self-efficacy, metacognitive
awareness, and growth mindset. We discuss the implications of these results on
learning technologies and classroom instruction.