Understanding abstraction: a means of leveling the playing field in CS1?

  • Authors:
  • Celina Gibbs;Yvonne Coady

  • Affiliations:
  • University of Victoria, Victoria, BC, Canada;University of Victoria, Victoria, BC, Canada

  • Venue:
  • Proceedings of the ACM international conference companion on Object oriented programming systems languages and applications companion
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

Given the wide ranging treatment of IT in high schools, future generations of CS1 students are bound to arrive with dramatically different levels of exposure to programming constructs. Though exposure to language mechanisms is not the take-away point from CS1, this appears to create an uneven playing field in our introductory courses. The premise of our work is that by focusing on abstraction, students connect with opportunities to engage in creative and analytical processes, potentially achieving more intellectual satisfaction--even from simple formative exercises in a first assignment. Our results show that of the 75 students in the study, on average 91% reported success with the implementation exercises in the assignment. However, when asked to reflect on their implementations at a higher level of abstraction, only 69% communicated solutions in ways that meaningfully generalized the specific task at hand. Further, success in abstracting their solution appeared to be less tightly linked with previous programming experience, and instead is most strongly related to the propensity to experiment with their own code.