Physical play is part of human nature. It's something that everyone experiences and something that makes for fond childhood memories. It also a great vehicle for learning. Not only do children learn about coordination and motor skills, they also learn about spatial awareness. We can also use physical play to teach computer science!
My first preschool experiment (2013)
It all started back when my eldest daughter was in preschool and we received an announcement for "Career Day" (where the parents would come in and talk about what they do for a living). My first thought was "You've got to be kidding me? Career Day for three year-olds? Isn't that a little overboard?" Well after I got over the initial shock, I sat on the sidelines to see what other parents did. It actually turned out to be a great idea. Two of the parents happened to be co-workers and talked about saving money. One mom who worked with Wounded Warriors brought in a wheelchair (How cool is that!?). It allowed the kids to "mix it up", and the kids were ecstatic to see their parents. Also, it allowed the teachers a small reprieve from their normal routine. And then came the questioning from my daughter...."Mom, why aren't you coming into school?". It was then that I jumped in and volunteered to come in and talk to the kids.
My first step was to figure out what I was going to talk about. I knew I didn't want to show a bunch of three-year-olds a computer screen. I also knew that I didn't want to talk over their heads and needed to talk about things they could grasp. So I invented a game that I called "Bunny Hop". The goal is for the bunny to hop on squares until he reaches the carrot. I took a bunch of these interlocking foam mats and used them as squares in the game. I then told the kids that one person would pretend to be the bunny and the rest of us would give step-by-step instructions on how to get to the carrot. The game teaches kids to break down their actions into a sequence of commands, which is what a computer program is.
Well, it ended up being a hot mess
Nonetheless, I learned a tremendous amount and it began my journey to incorporate computer science into early childhood learning. The first thing the kids did was start to join the mats together like pieces of a puzzle.
Then they hopped around all over the board without instruction or knowing why they were hopping. They just loved hopping. The teacher immediately understood what I was trying to accomplish and tried to pitch in. We slogged our way through it and ended up with some semblance of a computer program that looked like this:
Hop 2 spaces forward
Hop 2 spaces forward
The reality of it is, I probably ended up learning more than the kids did that day. Here's what I learned (in no specific order):
- Don't decide if something is good, bad, difficult or easy until you've given it a shot. If I weren't open to the idea of Career Day, I would have never stumbled across this idea of teaching code through play.
- This version of the game was a little too advanced for 3 year-olds, particularly since they don't know the difference between left and right at this age.
- Children LOVE physical movement, especially hopping. It really didn't matter if they learned anything that day, they just enjoyed hopping. I'm just glad I was able to grab their attention and have them participate.
- Children of this age need very clear and explicit direction and you have to be extremely organized and prepared to give any type of lesson plan.
- A preschool teacher without any prior coding experience immediately understood what I was trying to convey.
- What's more interesting is what happened after this day. For the next 1-2 years, my daughter asked me to play this game. It took her several times before she understood how to play, but she eventually got it. She never once got frustrated, she just wanted to spend time with me and have me play a game with her. I bought her the board game Robot Turtles that year. This board game teaches coding concepts, but instead of a bunny trying to get a carrot, it's a turtle that is trying to reach a jewel. At around age 5, she really started to grasp the concepts in the game.
Fast forward to 2017
Four years later, I bought Osmo Coding Awbie. Little did I know that in 2013, two other programmers had the same idea....teach coding in ways that involve kinesthetic learning. They created Coding Awbie, which allows children to build physical blocks of code in front of an iPad, and it doesn't require them to even know the difference between right and left. When my eldest daughter, now 6 years old, tried it out, she knew exactly what to do. I also tried it out with my 3-year-old daughter, and she wasn't quite ready. So I created another physical game around Coding Awbie. I laid out the game pieces on the floor and had them pretend to be Awbie, the main character of the Coding Awbie game. Here's a picture of my first prototype of the game (Bonus points for anyone that can figure out which coding concept I'm teaching in this picture):
My 3 year old began to understand the basics of the game. She began to translate the symbols in the game (walk, jump, grab) into action, but she's still a little young to fully grasp everything. She enjoyed herself nonetheless so we'll just continue to play these games whenever she wants. That's the joy of working with very young children; they are such eager learners!
In summary, incorporating physical play into learning is more effective than going straight to the screen. This will help children understand the most rudimentary concepts of coding even before they can read or write or type. Think of it like the "ABC's of Coding". We would never expect a child to learn how to read without learning their ABC's. So why do we expect children to learn how to code without any prior exposure? When we introduce these concepts at a young age, the children are better prepared when they take the more advanced classes later on in life. Please re-share the knowledge!
Here's a picture of the final version for our class today!