Computational Thinking (noun): a form of thinking/processing that allows people and students to attack problems using core ideas from computer science.
This week in ECI 201, we’ve learned a lot about a way of thinking that I had never applied or even been taught in school before; we learned about computational thinking. While I’ve been taught to practice critical thinking in middle and high school to tackle passages in English or word problems in Math class, I had never heard of computational thinking. Immediately I thought to myself, “I know nothing about computer science or computation, and I will never be able to use computational thinking correctly if its core ideas are derived from those things!”. However, we quickly learned that the 4 steps that this type of thinking entails are easy to understand and helpful in understanding complex ideas.
There are 4 elements/steps to computational thinking: decomposition, pattern recognition, abstraction, and algorithm design. The video linked below from Paxton/Patterson is a great resource that explains the 4 parts of computational thinking with simple examples and explanations.
Click here for a helpful video on Computational Thinking and its 4 elements!Each of these steps, if used together, can make any problem or intimidating task easy to approach. We put this to the test in ECI 201 when we were told that we were going to be building computers… if that task isn’t daunting for someone who knows nothing about computers, I don’t know what is! However, I had faith that if my partner and I could just try out computational thinking, we could make it work.
I quickly realized that as we were pulling out the pieces of the computer from the PIPER computer kits and organizing them into piles, our decomposition step was pretty much already done. Thinking of a whole computer was a bit scary, but seeing it broken down into smaller pieces made the task at hand seem a lot more manageable; that’s exactly what the decomposition step is supposed to do.
We then began to recognize patterns within the building process, such as parts that tend to go together and patterns in wooden pieces; we were beginning to become familiar with the nuts and bolts (no pun intended) of the project, and this pattern recognition made the process a lot more efficient.
By the time we had gotten to part 4 of the instructions and had built a good amount of our computer, we were able to apply abstraction and ignore the pieces of information on the blue print for the computer that we didn’t need, or that made things more complicated. The funny thing is, we started doing this unintentionally, and realized later that doing this simple step made the project a lot quicker and a lot easier. I also realized when writing about this step that it is something that I have been taught many times in middle school and high school, but it was never called “abstraction” specifically. I remember in many math classes we would work on word problems, and our teacher told us to “mark out” the pieces of information that weren’t useful towards finding a solution. In English class, when asked to analyze a passage for certain themes/rhetorical devices, I was taught to find specific examples and ignore the rest of the passage. In these instances, I was practicing abstraction, and never even knew it! It is an important step that I believe can be applied to any subject.
The algorithm design, in this instance of building computers, came into play with our step-by-step instructions that were followed to come up with a final product. We followed an algorithm design, but, if given similar pieces, I feel as though I could create my own algorithm design and step-by-step instructions and recreate the same product. Doing this allows me to fully understand how to complete the task, and that’s exactly what we did!
By the time we finished our computer, it felt as though we had done the impossible. By applying 4 simple steps, two girls who had never done anything with building, or much with computers, tackled, and conquered, a crazy task. I went from thinking that I could never appropriately apply computational thinking, to realizing how simple yet effective its steps really are!
After learning it and putting it into practice, I can’t wait to utilize computational thinking in my future classroom, as I think it would be a great tool for kids to break down big, scary, problems- maybe we’ll even make computers of our own! I feel like introducing computational thinking to my future students will be important because the larger their toolbox for approaching problems, the better. Whether they choose to utilize this form of thinking regularly or not, having the ability to break down a daunting task, analyze it for patterns, and solve those patterns while showing that they have genuinely learned how to solve similar problems, is something that every student should be able to do. Aside from making computers as we did, I want to ask my students to apply computational thinking when approaching word problems in Math class and when annotating texts in English to make them aware that it can be applicable in situations across the board. While computational thinking may be seen as something that is only useful in computing and coding, I hope that my students will be flexible in how to apply all types of thinking, making them more well-rounded thinkers.
This blog elaborates on the best ways to incorporate computational thinking in a more literal, coding, sense: CODING COMP. THINKING
As well as a website for great computational thinking technological resources: TECHNOLOGICAL RESOURCES FOR IMPLEMENTING COMP. THINKING
But this post offers more clarification on what computational thinking is, as well as ten ways to encourage students to expand their view of computational thinking, that do not require technology/coding platforms: COMP. THINKING 10 WAYS
This project allowed me to feel creative, handy, and intelligent, and that’s the exact atmosphere I hope to foster in my future classroom. This is just one example of computational thinking being put into practice, but I truly think that many of us use it without even realizing, and, if successfully taught, can be applicable in almost all scenarios.
Pictures 1, 3, and 4 are my own. Pictures 2 and 5 from Pixabay.
Comments by oafrost