Building Worlds
Zoë J. Wood, Aaron W. Keen · 2015
When teaching introductory computing courses, we are often guilty of writing rudimentary programming assignments - those meant to illustrate one simple language feature, comprised mostly of code that will never be used beyond the assignment. Admittedly, first-year computing students must navigate a myriad of challenges, sometimes learning both imperative and object-oriented programming, in addition to mastering syntax, logic,debugging, and testing. To tackle the difficulties of developing CS 1 and CS 2 courses that engage students in learning while addressing the numerous course objectives, we chose to challenge students to create virtual worlds in one large comprehensive two-quarter long programming project. Students were granted creative freedom within a framework that gradually introduced many programming skills and that required the mastery of object-oriented programming and some engaging algorithms. We present the curriculum, performance comparisons, and observations. Overall, we consider the experimental courses a success that will have an impact on our department's future curricular offerings.