We’ve all been there. I was standing in front of my 30 fourth graders, modeling a multi-step equation involving fractions and decimals. Talking through the problem, I didn’t even catch myself misplacing my decimal point in the solution. “A kid mistake,” as one of my students pointed out.
A “kid mistake” or a learning opportunity? Talk about a teachable moment! Thinking about our thought process, formally known as metacognition, is not just a math, reading, or computer science skill- it’s a life skill.
How does computer science activate metacognition?
- Thinking critically. In computer science, there are so many ways to solve problems, execute an idea, or complete a task. Like math, multiple paths can get us to the same answer and everyone may solve the same problem a little differently. Exercising metacognition allows students to think about different ways to solve a problem and choose the best possible solution.
- Problem-solving mindset. Overcoming failure leads to success in computer science. You fail and you fail often. Having a problem-solving mindset allows you to get to the best path forward and overcome failures.
- Debugging: "Did I make a mistake?" "What was my plan?" "Where is the mistake and how did it happen?" "What can I do next?"
- Comprehension: Think reading comprehension! Teaching computer science concepts off-screen allows students to think about what concepts and skills are being applied as they work in coding apps or games. Always encourage students to think about what skills to use, what potential next moves could be, and to self-monitor their process as they go; just as they would when reading.
Four ways to encourage Metacognition through Computer Science
- Ask questions. Whether you know anything about computer science or not (you’ll learn a lot by doing this), you can still ask your students questions while they’re on coding apps and prompt them to think about their thought process. This isn’t any different from how you would develop reading comprehension, by the way!
- “What problem are you trying to solve?”
- “What are your options?”
- “How will you decide what the best solution is?”
- “What is your next move?”
- “How will you fix your mistakes?”
- “What are you making?” “How will you do that?”
- “Tell more more about that.”
- “How is your idea different than your peers’?”
- “How did you decide that was the best option?”
- “Have you considered ___?”
- Organize and facilitate classroom discussions. Giving students a space to talk about their thinking allows them to think deeper about their thought process and put it into words- taking metacognition a step farther. You don’t have to be a computer science expert to set the stage for students to talk about their ideas and strategies. Head here for some great classroom discussion activities that require minimum planning and are easily transferable to STEM.
- Give students choice and ownership (across content areas). When students are invested and responsible for what they’re doing, they are more likely to be intentional about their work. Mindlessly breezing through coding apps or programs is far less of an issue when students are curious and want to engage with their work- commence debugging!
- Model it! Talk through your thought processes, what you're thinking as you're doing a read aloud, and capitalize on your own mistakes. Find (or make) opportunities where you can audibly go back through your thought process and correct mistakes. This will benefit students in a few ways: they’ll see a real life example of metacognition, they’ll remember it and try it on their own, and they’ll realize everyone makes mistakes and can correct or catch them by thinking about their thought process as they go.
Opportunities are endless to model thinking strategies for students across academic standards and real-life situations. Not being afraid to take a leap with computer science and trusting your own strategies for developing students in other areas is key, and that is certainly something worth thinking about.