200 likes | 296 Views
Game Design as an Engagement Strategy for Teaching Computer Science. Press A to Start!. What’s the Idea?. Imagine that you are a high school student who: Is intimidated by math Thinks that computers are for eggheads Has little personal experience with computers
E N D
Game Design as an Engagement Strategy for Teaching Computer Science Press A to Start!
What’s the Idea? • Imagine that you are a high school student who: • Is intimidated by math • Thinks that computers are for eggheads • Has little personal experience with computers • Thinks she “sucks at computer stuff” Which of the following assignments would interest you more?
A) Traditional CS 1 Assignment: • Write a program that adds up the squares and cubes of integers from 1 to N, where N is entered by the user: • Upper Limit: 5 • The sum of Squares is 55 • The sum of Cubes is 225 • Use just one loop that generates the integers. • Add these formulas to your program and print out their results as well as that of the explicit summations.
B) Game Design Project: • Create a video game or interactive story, alone or with one partner. • Your product must have: • Conditional logic and broadcast events • Variables and mathematical operators • Backgrounds, sprites, and sound effects • Movement and collision/obstacle detection • Originality and creativity!
Guiding Questions: • Can video game design be used to teach core computer science concepts effectively? • Can game design projects help attract and retain underrepresented students more effectively than traditional CS curricula?
Audience: • Teachers of high school computer science: • Developing curricula for newly created CS programs • Wanting to expand diversity of students in current programs • Interested in new engagement strategies for teaching core CS concepts
Challenge: • Traditional computer science programs attract a limited demographic audience • Computer fluency is becoming an entry requirement for many professions! • Lack of computer science skills disenfranchises underrepresented groups from lucrative and expanding job markets, higher education tracks
Research Shows: • Even students who don’t like to play video games often enjoy actually making games, especially if it’s a partner project. • Students can learn core programming concepts through exploratory projects such as digital interactive story-telling and game design. • Introducing CS through syntax-light languages such as Scratch is less intimidating and builds confidence.
Project: • Introduction to Computer Science lesson plan: • Video game design project requirements and rubric • Training assignments in Scratch with demos • Block lesson plan including suggested interventions, pacing, and weekly reflections • Exemplar games demonstrating concepts and requirements • Examples of student work
Piloting the Project: • The “alpha group”-- 18 boys, 50% ELL (two moved to continuation school during project) • Started with small, instructional assignments to familiarize them with coding environment • Surveyed classic arcade games as a “hook” and to manage expectations • Threw them into the game project quickly
Results of Pilot: • Most students were very engaged and enthusiastic about project and results. • Students effectively applied core computer science concepts to their designs. • Students are carrying the experience forward into easier understanding of more complex programming languages.
Lessons Learned: • Provide rubric, exemplars, and demo code earlier in project cycle • Formalize development process and higher accountability for weekly progress • More structure is needed to support lower level students through the development process
Desired Outcomes & Future Goals: • Sequence, rubrics, requirements prepared and fine-tuned for next year’s “beta” group • Effective introduction of CS concepts • Increase and sustain interest and enrollment of previously under-represented students • Develop a culture of inclusion, cooperation, and creativity in a new CS program
Demonstrations: Scratch Development Environment: Intro to Scratch Practice project 2. Student Work Samples
Student Response 1: “I had fun working with scratch. I found it really easy once you understand what everything you’re doing. I was easy enough that my 7 year old brother could understand scratch’s syntax. Even though scratch was easy it really helped me understand the logic and syntax of programming. While I was making my game I had fun trying to find how to do different stuff in scratch. It was not too hard to find and fix bugs. In my opinion scratch was a good use of time.” -Emmanuel
Student Response 2: “I think this project should definitely be repeated next year or presented to sophomores and push the whole curriculum back a year so that when they are seniors they are pros. This project was definitely lots of fun and I enjoyed it because there was lots of freedom in our project ideas. I think for being the first year that this unit has taken place; it went very smoothly. It was definitely better than last year. I learned not just how to code but more of how to do computer logic and plan different things.” -George
Student Response 3: “I had really fun with this project. I learn a lot of stuff of programing a game. When Gustavo and I were programing the game but it really suck so I started out fresh making the game. Michael Jackson was going to be in the game but there were a lot of problems of cropping him so I change the character to evil Ryu. I learn a lot from scratch and I think I’m going to make another game. Our game is so fun that im going to play it right now.” -Marcos
Student Response 4: “I really enjoyed this project. I didn't learn a lot but what I did learn is useful. This was a very productive project. It was a bit challenging and frustrating but in the end I am proud of what we accomplished.” -Fernando