One of my blogging goals is to share more often about coding to learn experiences of the students I am working with at various schools. Case in point, on Friday, some grade 5 students were hard at work during their fourth session (our first was October 3) of game design using Scratch. In January, they will be challenged with a larger game-design project but, for now, they control all parameters of their game.
One student was starting to program a new game inspired by the slither.io growing snake game. He had the user interface complete (arrows controlled the movement of the snake) and was starting to work on how to make the snake grow longer after bits of food were consumed. (A copy of his project as it was on Friday is here.)
During the 60 minute session, I checked in with him four times. I was well aware of what he was trying to accomplish and sometimes we discussed new ideas or how certain blocks might work within the context of his goal. I recorded some video during the final conversation we had.
He is still in the early stages of designing and coding his game but he figured out a number of conditions needed to make the snake grow in size and have the body follow along in the direction the head was going. In so doing, he talked about variables, Cartesian coordinates, decimal magnitudes, and various problem solving strategies.
The reflections he shares in the video below illustrate quite well what I often see when coding is used by students in a meaningful and powerful way, over the long term, and used as a means to learn concepts and visualize ideas. You can hear various mathematical concepts and processes that were applied simultaneously and all within the context of a single goal, which he set for himself, during this session.