Using python and QuickDraw to foster student engagement in CS1

  • Authors:
  • Ben Stephenson

  • Affiliations:
  • University of Calgary, Calgary, AB, Canada

  • Venue:
  • Proceedings of the 24th ACM SIGPLAN conference companion on Object oriented programming systems languages and applications
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

Most students enrolling in introductory computer science courses today have grown up working exclusively with graphical user interfaces. Through this experience, they have come to expect computers to be reasonably intuitive and easy to use. Yet, when students enter an introductory course in computer science, it is commonplace for them to work on exclusively text based assignments using complex programming languages. This paper describes our experience using Python and QuickDraw when teaching CS1. We have found that using these tools engages students by allowing them to quickly complete assignments that solve interesting problems and generate visually interesting results, without requiring excessive exposure to low level concepts or the use of complex graphical libraries. In our experience, students get greater satisfaction from working on such assignments, and this encourages them to spend additional time and effort learning the concepts that each assignment is designed to reinforce. In addition, using these tools presents a modern image for the discipline while also providing opportunities for students to be creative, helping to overcome the stereotype that computer science is sterile and boring.