Abstract
Active learning in Computer Science classrooms often involves having students solve programming problems in class using a web-based interpreter. Spinoza is one such system which captures all of the student attempts and uses it to provide actionable learning analytics for the instructor. In this paper we present several new pedagogical applications of the log data from Spinoza, including two approaches to team formation and an in depth analysis of the Solve-Then-Debug debugging pedagogy in Spinoza. We provide some initial evidence that the Team Formation strategies may be effective methods for forming either diverse or homogeneous teams. The second application we examine in depth is the Solve-Then-Debug pedagogy in which students who correctly solve a Spinoza programming problem are then asked to analyze and debug the most common errors that the class has made so far on that problem. This is a social debugging process and in this paper we provide a detailed explanation of the learning goals for each step of this pedagogy. We also give an example of how students engaged with one particular Solve-Then-Debug problem. This provides initial evidence that the Solve-Then-Debug pedagogy engages students in effective program bug analysis activity.