Effect of implementing subgoals in code.org's intro to programming unit in computer science principles

Lauren E. Margulieux, Briana B. Morrison, Baker Franke, Harivololona Ramilison

Research output: Contribution to journalArticlepeer-review


The subgoal learning framework has improved performance for novice programmers in higher education, but it has only started to be applied and studied in K-12 (primary/secondary). Programming education in K-12 is growing, and many international initiatives are attempting to increase participation, including curricular initiatives like Computer Science Principles and non-profit organizations like Code.org. Given that subgoal learning is designed to help students with no prior knowledge, we designed and implemented subgoals in the introduction to programming unit in Code.org's Computer Science Principles course. The redesigned unit includes subgoal-oriented instruction and subgoal-themed pre-written comments that students could add to their programming activities. To evaluate efficacy, we compared behaviors and performance of students who received the redesigned subgoal unit to those receiving the original unit. We found that students who learned with subgoals performed better on problem-solving questions but not knowledge-based questions and wrote more in open-ended response questions, including a practice Performance Task for the AP exam. Moreover, at least one-third of subgoal students continued to use the subgoal comments after the subgoal-oriented instruction had been faded, suggesting that they found them useful. Survey data from the teachers suggested that students who struggled with the concepts found the subgoals most useful. Implications for future designs are discussed.

Original languageEnglish (US)
Article number26
JournalACM Transactions on Computing Education
Issue number4
StatePublished - Nov 2020


  • Code.org
  • Computer Science Principles
  • K-12
  • Subgoal learning
  • instructional design

ASJC Scopus subject areas

  • Computer Science(all)
  • Education


Dive into the research topics of 'Effect of implementing subgoals in code.org's intro to programming unit in computer science principles'. Together they form a unique fingerprint.

Cite this