Over the years I have been put into situations where I have had to teach programming. I started with Basic then Pascal, Karrell, AP C++ and on to Java mainly at the High School level. I’ve always enjoyed programming and have also thought that Middle School students would enjoy making the computer do something instead of just doing something with the computer. So when I came to SSIS I also introduced students in Middle School to Scratch. Over my time using Scratch at SSIS I have moved towards having students create games. After seeing the interest kids had in creating games I added an introductory course at the High School level dealing with game programming using Game Salad.
For many years I would teach in a style that might be familiar to some math teachers. Present a lesson on a topic then have students do some problems related to the topic. Assessment was based on problem sets, small programming assignments and online tests. After a while I realized that I could use our Moodle installation to allow students to watch the presentation at home and we could spend more time in class working on the actual problems. This changed the way the lessons were delivered but not the design.
Over the past few years I have been changing the design. I started using multiple tutorials so that students had choice of the direction they could take in creating their projects. This allowed me to more easily differentiate instruction. My instruction was “just in time” where I would bring things up group by group dependent on the direction and the needs that each group had. I am still struggling with delivering my units this way as it requires a lot more planning as I need to look at the possibilities and the different directions that groups can take.
With my grade nine students using Game Salad I have continued with this but the course has become even more self exploratory in design. I start with a structured exploration where the students worked individually but free to get help from one another. They are given a game and asked to change game physics, attributes, variables, and then make add a new component to the game. I have been using reflective blog posts for the student to describe what they learned. From that project we moved on to another small group project and on to a final project. The final project the students again had choice, they could modify a game, work from an existing template or create their own game from beginning to end. They could work in pairs, larger groups or by themselves. As they progressed the conversations student were having and the work they were doing indicated that they were creating, learning and collaborating. So far I am mainly using reflective blog posts and a game rubric for assessment and wonder if I need to look at this more closely and come up with some ways to better assess learning.