Analogies are a great way to check for understanding of concepts. We've been looking closely at all kinds of analogies in English Language Arts, so I thought to myself, "What a great way to see how deeply my students understand and view coding." I wanted to see if they could apply coding principles outside of coding (decontextualize) to see how well they really "get" the thinking and process of coding itself. In a nutshell, students were to come up with an analogy for coding along with three supporting examples.
"Coding: A baby learning to take steps because when a baby learns to walk, it starts slow and small. If it goes too fast or big, it will fall down. The same with coding - if you start going fast, your program will fall apart because you're going too fast. Also, if you take big steps, you will miss a step and starting big can you mess up. Once a baby falls down and with programming, once your program falls, you can get up and try again."
"Coding:Building. This is because with coding, if you are not exact, it will "wonkify." With building, you need to be exact or the building will fall. Another way is that if you don't like your Scratch program, you can delete it and try again. With building, you can knock down your building. Lastly, you can remix someone else's code. In building, you can sort of copy someone else's, but make changes, and call it your own. Though quite different, building and coding are very alike."
"Coding is like doing crossword puzzles because one word in the wrong place affects the word that is going down or across that word. That relates to coding because if you do Scratch and put the wrong block, when you want to do something else, it turns into a disaster. When you do a crossword puzzle, at first it might be just experimenting and trying to fit the words in the squares. Same with coding. You have to experiment if the cat moves the way you want or not. At first, the crossword puzzle might look different or weird, but it turns out cool. With coding, it might look weird at first, but when it is finished, it is awesome!"