Friday, January 10, 2014

Exploring Computational Thinking with Pegman

Now that my students have had some hands-on practice with computational thinking (CT), I wanted them to see how it is used in real-life to solve real problems in the computing world.  I showed them this great video about how Google uses CT with Google Earth.



We talked about how all the aspects of CT were used to solve the problem with pegman, or in the words of one of my third graders, "Pegman is so dumb that he can only land in fields."  I wanted to see my students apply CT vocabulary to a new situation, not just one that they did themselves hands-on.  In other words, I am looking for transfer of learning to novel situations to be sure that 'they really know what they are talking about.'

Here are some student responses:

"In Google, they use CT like decomposition which is breaking down big problems and making them smaller.  Another aspect of CT is algorithms which is a step by step strategy.  Another is pattern recognition which is identifying patterns and similarities.  In Google, they had a troubling situation with pegman.  When you dropped pegman into a place, he tends to land in random places like an alley. Google struggled for a little bit until the Google Street View Engineer asked himself this question:  "What do people do when they physically go places?"  He said that they take pictures and sometimes people post them.  So he put those photos in places so that when you went to Washington, you would see the White House etc.  In the end, we realize that computational thinking is more like painting and when we complete this painting, it turns out to be something beautiful!"

"These are aspects of CT  - decomposition, pattern recognition and algorithm.  Google once had a problem with pegman.  Whenever he was placed in the center of a city, he lands somewhere random!  Not something good.  So they basically got a ton of pictures and made pegman land where there is a majority of pictures.  So coding is more like art than math because you can create things other than numbers.  It's kind of like thinking of "code" to solve things."

"At Google Earth when the yellow pegman landed in random places, I thought, "Hey!  Maybe we can label the landmarks!"  But that was a lot of labeling.  So I kept the thought to myself.  But they found a good solution to their problem.  They found pics online!  Now that's what I call computational thinking!"

Computational Thinking in 4 Parts

This starts a series of blogs on computational thinking (CT) and how I have been integrating it into my third/fourth grade class.  I started with a hands-on, "unplugged" activity from learn.code.org.  The video from learn.code.org provides background on CT as well as lesson ideas on teaching it in the classroom.


Through decomposing, looking for patterns, abstraction, and algorithmic thinking (hence the CT in 4 parts), my students learned the terminology as well as the concepts behind CT in a hands-on and engaging manner.  They were able to label what they were doing with the monsters using the CT terminology.  It provided a great introduction in order to delve deeper into CT and all its applications.



Here are some student responses:
"Computational thinking requires problem-solving.  Look for patterns.  When we were working on the monster thing, each monster had its own parts.  We had to find new parts for each monster.  We had to take apart the monsters and make a set of directions to give to someone and ask them to put it together."

"We created monsters by giving one another instructions.  We decomposed and made algorithms when we broke all the monsters apart and created an algorithm of instructions for a friend to draw it.  Decompose, make patterns, and use algorithms in your life."

"When I did CT with my classmates, I was given 3 monsters and there was a set of steps to make up the monsters.  Our assignment was to recreate a new monster with an algorithm.  When we were in progress, we were decomposing the steps to make a new monster.  When we were done, we shared our steps with the teacher and she tried to draw the monster with our algorithm.  When our teacher drew the next monster another group made, we realized we were doing pattern recognition - identifying patterns, similarities, and differences.  We also realize CT can be done in everyday life.  I think CT is fun and good for thinking!"