Janice L. Bowen
As of April 2018, “Quebec [had] no formal integration of CT or coding within its curriculum.” (Gannon & Buteau, 2018). Computational thinking and coding are important skills for children and young adults to learn as a preparation for their post education lives. According to a report from Burning Glass Technologies “Coding jobs are growing faster than the job market.” (2016). The nature of that statement was the impetus for John Rennie High School in Pointe Claire to offer more opportunities to improve the computational thinking skills of its student body and also to introduce them to coding. One initiative is an option course for grade 9 students called Introduction to Robotics and Coding.
Term 1 of the course included a project to create a video game using Scratch and building a controller for that game. One of the principal goals of the project was to introduce block coding to students in an enjoyable and engaging way. This was chosen to be the first assignment of the year because it allowed students to learn block coding and the hands on component of building a game controller is appealing to students. It allowed for an assessment of the students current coding abilities and their computational thinking skills. Furthermore, the project began the school year with a task intended to inspire students through one or both of its parts.
The video game that the students were tasked to develop could be a straightforward pong game or it could take on a more complex form, like a story based game. The project had a basic set of requirements that needed to be included, but there was plenty of opportunity to create more elaborate games. The requirements were as follows:
- Be designed using Scratch
- Include instructions
- Be controlled by a Makey Makey controller
- Keep score
- Have a minimum of two sprites that move
- Have a “reset” or “play again” button
- Have an ending e.g. “game over”
- Include five comments to explain your code to other coders
Other than meeting the minimum requirements, there was lots of flexibility in developing their video game. This flexibility gave the students the range to explore Scratch and code the game they envisioned. During the development phase of both the video game and controller the students had multiple opportunities to reflect on their project and make improvements. One of these opportunities came before the final project was due. The class did peer assessments and played each other’s games. Classmates completed a Google form to evaluate various aspects of the game, including visuals, ease of play, and so on. This assessment method allowed the individual project groups time to work together and troubleshoot identified issues.
This project encouraged the students to explore multiple coding concepts. The students used looping, if/then thinking, Boolean operators in scoring, logic and computational thinking, and so on to program their games.
The students were paired to complete the assignment. This task can be difficult. The pairing method poses its own challenges. Which pairing method is optimal? Should students of similar abilities be paired or should a strong student be paired with a student who is still developing their coding skills? Both choices have their advantages and disadvantages. If students are not of the same proficiency level for coding, the more capable coder will tend to do all the coding leaving the student who is still developing their coding and computational thinking skills minimal chance to code and learn. However, when students of the same ability are paired, if they are both still improving their skills they may have a tough time working through the more challenging aspects of the game creation to be able to code a video game. In the end, it was decided that it was best to have the students paired by similar ability with teachers available to help and guide those who required it.
Once the project was completed the students did a self-assessment of their video game and controller. It was important for the students to identify where they had done well and where they could improve. It is frequently a challenge for students to clearly examine and evaluate their own performance. Most of the students were more critical of themselves and their game and controller than the teachers.
Upon completion of the assignment the class spent one period playing each other’s games. The students very much enjoyed playing the finalized games. Their hope was to have to have students from outside their option class play their created games. However this was not possible as the students recognized the controllers were quite fragile and would need to be improved before additional use.
As preparation for the project, teachers developed a number of intermediate activities that would allow the class to practice some of the skills required for video game creation. Teachers established an inventory of skills deemed necessary for a simple video game. The students commenced with developing the more basic Scratch skills, for example making a sprite move. They moved on to more advanced abilities, such as adding sound and visual effects. Once the students’ skills using Scratch had been developed sufficiently to begin creating a game, teachers fostered a positive environment of independent game creation. Teachers were always available to guide the students but they encouraged the groups to preserve through coding challenges.
For the Makey Makey game controller, the teachers introduced the class to circuits and electricity. These concepts are normally taught in grade 10 science classes in Quebec, so this gave the students an introduction to some concepts that would be taught next year. The students saw examples of Makey Makey controllers. Additionally game controllers for older systems like Nintendo 64 and X-Box were opened up for examination. This examination demonstrated to the class that they can build a simple Makey Makey controller that can do many of the same things that a mass marketed controller can. The pairs did plenty of hands on experimenting to build the controller that functioned with their game. The students began to discover which project materials would conduct electricity, for example many students were surprised to learn that Play Doh is a conductor.
One of the wonderful aspects of this option course is that it allows the students to learn coding and computational thinking through fun and engaging projects. The students can then take their expertise from the course and apply it more easily to other subjects. When the students are exploring new topics in other subjects that are being taught through coding and computational thinking practices, they will have already developed an understanding of the coding required. The class can then focus on new material and concepts being taught through a computational thinking viewpoint.
The skills the students have developed through coding will benefit them in other courses, like math. “Coding makes children think and encourages them to be creators and innovators. It teaches them to problem solve, to think.” (So, 2016). In mathematics, problem solving is an essential skill to acquire and apply. As Papert (1993) said of turtle geometry, “it is an aid to learning other things because it encourages the conscious, deliberate use of problem-solving and mathetic strategies.” (pp.63-64). Turtle geometry is a way of making math more comprehensible through the use of computers and coding. This has developed into the various forms of computational thinking and coding seen today in classrooms.
This video game creation and controller project taught the students to follow through when encountering difficulties. If students are willing to face challenges head on without much teacher guidance in the coding option course, then this ability can transfer to a math class. Integrating more coding into a mathematics class would assist students to persevere with challenging topics. The other significant aspect of this assignment is that it gave the students immediate feedback as to whether their game or controller was functional. Integrating coding in a math class would give students immediate feedback on their work. They would know without delay if their code works or not and furthermore if they understood the lesson or not. The teacher could discern the students’ comprehension prior to any type of formal evaluation and implement adjustments as needed. “The programmer is encouraged to study the bug rather than forget the error.” (Papert, 1993, p.61).
The video game creation and building a Makey Makey controller project began the course on a positive note and motivated the class. The students were excited to work on this project and also to discover other new skills they would continue to develop throughout the course. The video game allowed the students to use their knowledge from other courses, such as English Language Arts, Mathematics, and Science. The students did not realize it in the moment, but the process of completing the project had strengthened their computational thinking skills. They also learned to scrutinize their own work and effort. The students also pushed through challenges to code their game and build their controller. This differs from other course situations where students frequently give up when faced with difficulties and turn to their teacher for the answers. With the creation of a video game and controller, the students were open to being challenged and persevered because they were having fun while learning. Taking that experience and applying to other subjects would be beneficial and coding would support that process. The instant feedback that coding provides, to both the student and the teacher, will facilitate learning in other subjects, like mathematics. This project allowed the students to develop or improve their 21st century competencies. To successfully complete this project the students were required to be creative, to think critically and problem solve, to collaborate both in their own grouping as well as with their peers in the class, to communicate, to persevere and develop their character, and to be creative. The coding and computational thinking skills that were developed during the initial project of this option course will serve the students well in their continued education and also life outside a classroom.
Burning Glass Technologies. (June 2016). Beyond Point and Click. The Expanding Demand for Coding Skills. https://www.burningglass.com/wpcontent/uploads/Beyond_Point_Click_ final.pdf
Education, Loisir et Sport Quebec. (2010, August 20). Progression of Learning in Secondary School Science and Technology Cycle One, Science and Technology Cycle Two, Environmental Scienceand Technology. http://www.education.gouv.qc.ca/fileadmin/site_web/documents/education/jeunes/pfeq/P DA_PFEQ_science-technologie-secondaire_2011_EN.pdf
Gannon, S. & Buteau, C. (2018). Integration of Computational Thinking in Canadian Provinces. Computational Thinking in Mathematics Education Symposium. http://ctmath.ca/wp- content/uploads/2018/10/Symposium_CanadaMap_Gannon-Buteau.pdf
Papert, S. (1993). Mindstorms: children, computers, and powerful Ideas. Basic Books Inc.
So, J. (February, 2016). To code or not to code. Math + Code ‘Zine. http://researchideas.ca/mc/ to-code-or-not-to-code/
Janice Bowen is a high school teacher at an English school in a suburb of Montreal.