Thinking from a different perspective is a critical thinking skill that is essential for kids to learn computer coding. In fact, it is essential to many jobs. There are many ways to help kids develop the skill. Today we share a coding game we developed that can get you started on training kids the critical skill of thinking from a different perspective.
Today’s game is an extension of the Hot Dog Coding Game. The story behind the game is the restaurant runs out of hog dogs. Jacob is asked to go to the hot dog store to buy more hot dogs. Since he doesn’t know how to get there, he calls friends for directions. The players’ task is to be the friend and give a good direction that Jacob can follow to get to the store. There are 4 friends at 4 different locations. Depending on the friend’s location, you can get different directions. This is where the game starts.
To play, kids need to give a good driving direction going from the restaurant to the hot dog store. Depending on the location of the friend, you will give different directions.
1. Think from different perspectives
2. Anticipate all possible scenarios of a project
3. Learn Abstraction, a solution that is indifferent of factors of different scenarios, ie., a solution that can be used for all different scenarios
Questions to ask kids:
What caused the confusion and the different directions?
What can you do to avoid the differences?
Step 0. Download the coding game.
You can find the game at the bottom of this post. After you download the game, you can cut out the moving blocks for kids to use as code blocks to design their directions.
You are free to put the friend at any location on the game board. However, we have marked 4 locations on the game board to maximize the differences of the directions you can give.
Note: it is not just the location, the side you are facing also matters. When you are facing North, then West is your left; while you facing East, North is your left.
Step 1. Build direction as someone at Location 1, using the coding blocks
Ask kids to use the coding blocks (Left Right Up Down and Numbers) to lay out the directions, assuming they are at Location 1, marked on the game board as L1. Remember L1 is NOT the starting point of the trip. The trip always starts from the restaurant.
After kids finish giving directions with the coding blocks, you can ask them to follow the direction, from the restaurant to the hot dog store. Does the direction lead them to the store? Or somewhere else?
If the direction leads them to a different place, ask kids check the direction, identify mistakes, and make necessary changes on codes.
If you have more than one child, after the kids finish the direction, you can ask them to pass the direction to a different child to execute the direction.
Make sure to keep the Direction given by L1 for future comparisons.
Step 2. Build direction as someone at Location 2 with Coding Blocks
Before moving on to the direction building from Location 2 perspective, ask kids if they think the coding will be the same as L1. If they answer NO, ask them the difference they anticipate.
Now repeat the process in Step 1.
After finishing executing the direction codes, ask kids compare the direction codes from L1 and L2.
Step 3. Build direction as someone at Location 3 with Coding Blocks.
Repeat the process in Step 2, except this time, doing it from Location 3.
It is important to ask kids think about the differences they anticipate before they start building direction codes. It is also important to compare the 3 sets of direction codes at the end of Step 3.
Step 4. Find the Abstraction Solution
Ask kids if they can find a way to write codes so that no matter where you are, you always give the same code direction.
This is the process called Abstraction. It is the process to remove factors that differ the solutions based on different scenarios, so that one solution can work for all different scenarios.
When we write computer codes, we want to be able to see all different scenarios and cover all different perspectives. However, we also want to make our codes simple and short.
With this game, we can definitely write 4 sets of codes to cover all 4 scenarios, but it is much more efficient if we can find a way to use one set codes to cover all scenarios.
There are more than one ways for abstraction. One answer could be using South, North, East, West instead Left Right Up Down. Another answer could be to ask the friend to give directions like he/she is at the restaurant, instead of his/her own location.
Step 5. Design Code Direction Using the Abstraction Method.
Once kids pick one abstraction solution, ask them to put together the code direction with this new method. After they finish designing the codes, ask them execute the code direction from L4. If it doesn’t work, kids need find out which parts are wrong and correct the mistakes; If it works, test it on the other locations, one location at a time.
To conclude the activity,
1. It is important for a programmer or a coder to be able to anticipate all different scenarios and be able to think from all different perspectives for any project
2. A good coding project is one that covers all scenarios with the shortest possible code.
3. To achieve #2, programmers also need be good at Abstraction.
To Download the printable coding game:
Would you like to have more coding games and activities for kids? Join the DIY Coding Camp at Home. We have games specially designed for each of the essential skills, plus extension activity ideas. All games are printable at home, and you don’t need to know coding to help kids gain coding skills. You don’t even need a computer.