A methodology for analyzing the temporal evolution of novice programs based on semantic components

  • Authors:
  • Christopher D. Hundhausen;Jonathan L. Brown;Sean Farley;Daniel Skarpas

  • Affiliations:
  • Washington State University, Pullman, WA;Washington State University, Pullman, WA;Washington State University, Pullman, WA;Washington State University, Pullman, WA

  • Venue:
  • Proceedings of the second international workshop on Computing education research
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

Empirical studies of novice programming typically rely on code solutions or test responses as the basis of their analyses. While such data can provide insight into novice programming knowledge, they say little about the programming processes in which novices engage. For those interested in improving novice programming environments, a key research question arises: How can we collect and analyze data on novice programming that will enable us (a) to analyze and compare the programming processes promoted by alternative novice programming environments, and (b) ultimately to build better novice programming environments? To address this question, we have collected a large video corpus of novices as they construct code solutions in various versions of ALVIS Live! [17], a novice programming environment. Through detailed post-hoc analyses of our video corpus, we have developed a methodology for compiling the moment-by-moment evolution of novice code solutions. Based on an analysis of a model code solution's key semantic components, our methodology enables researchers to document, on a second-by-second basis, (a) what part of a code solution a programmer is focusing on, and (b) where the semantic feedback provided by the programming environment is helping. Although it is time and labor intensive, our methodology provides researchers with a standard set of data and representations for comparing the programming processes promoted by alternative programming environments.