Wednesday, December 6, 2017

Coding: Developing Critical Thinking and Perseverance

Sarah has taught elementary for 12 years in Kindergarten, second, fourth, and fifth grade. Across grade levels and subjects, she has noticed that students continually struggle with problem solving, perseverance with challenging tasks, and logical thinking. Sarah decided to look into this problem further. Reading various articles comparing student success in math across the US, China, and Singapore, revealed a few stark differences. Most notably, Sarah found that both China and Singapore focus on computer science programs starting at an early age.

After some serious reflection this past summer, Sarah decided to set a challenging teaching goal for herself:

My goal is to create and pass on students who are overall better thinkers. Through the use of STEM, coding, and Makerspace, students will be able to transfer and grow in key life skills and use them in all parts of their education and careers.

This week is Computer Science Education Week, highlighted by the Hour of Code. Computer science skills are critical for our 21st century learners, and the Hour of Code encourages teachers to ensure that every student gets the opportunity to experience programming.

I visited Sarah’s classroom this week to see how her students have developed their coding skills. Students have the freedom to apply their coding skills to a variety of tasks based on interest. I saw two boys using coding to produce music through Code DJ, while their neighbor used code to control her digital robot to perform tasks in Robot Rattle. Nearby, another young lady created her own dragon with Dragon Blast and developed code to make that dragon perform different tasks in a game setting.
Coding with Flappy at

Students write code by dragging and dropping code blocks. Beginners start with simple coding sequences while more advanced games allow for multiple variables to be adjusted.

Every student was working on challenging tasks. After only 20 minutes of engaging with Sarah’s learners, it was easy to see the benefits that coding has had on student learning. Here’s what I noticed:

Students were applying the critical thinking skills of logic and reasoning.
While working with a young lady, I noticed that she had to anticipate each action that she wanted her dragon to make, visualize the move, and then create code to match. When part of her code didn’t work, she analyzed her work, determined the glitch, and went about fixing it. Look at all of those higher order thinking skills she was using!

Coding through game-based learning made failure nonthreatening.
Students were continually writing bits of code and testing to see if it worked, receiving immediate feedback on their work. Every student encountered problems with their code, so every student experienced failure. They learned through a process of trial and error, learning from their mistakes in order to complete their task and reach their goal- just like they learn to play video games. Students weren’t discouraged by mistakes to the point of shutdown; they viewed their struggles as a positive challenge. If you’re interested in learning more about video games and the learning process, hear what expert James Paul Gee has to say.

Struggling readers were motivated to read print and interpret visual information.
I noticed a handful of students who don’t particularly love reading willingly decode and strive for comprehension when reading coding tutorials. They were motivated to read because they had a need for the skill that was relevant and interesting.

Students were engaged in productive struggle, demonstrating perseverance with challenging tasks.
An ongoing conversation that I’ve had with teachers revolves around the question, “How can we teach students to care about persevering when problems are difficult?” It is so common to see students disinterested in completing challenging problem solving during math. Designing tasks that require these skills is easy to do, but teaching students to willingly struggle through a problem is a different story. The trial and error process of writing code is a great way to develop these skills in students. Since the beginning of the school year, Sarah has seen a decrease in students shutting down in math when problems are difficult. They are willing to take risks, try various strategies, and persevere when the work is tough. They are transferring their learning behaviors from coding to math. I think Sarah is making excellent progress toward her goal of developing better thinkers!

How to Get Started with Coding

Sara is using, a free resource for teachers. She started only two months ago and has seen great progress. Not only does have a K-12 curriculum with lesson plans, resources, and online coding practice/games for students, but the organization also offers free workshops for teachers to learn about teaching coding. It has all the tools a teacher would need to get started. As a teacher, you do not need extensive training or a deep understanding of coding to help your students develop their computer science skills.

Need proof? Sarah and her students explored the first lesson designed by for fifth graders- Algorithms Unplugged: Tangrams. Student pairs used tangrams to learn that algorithms are simply a series of commands. One partner viewed a simple tangram design and attempted to give directions to their teammate who had to recreate the image. Students learned that directions (algorithms) need to be detailed in order to produce the desired outcome. This is a foundational principle of computer science and coding. Once students had a basic understanding of this concept, they were ready to see how algorithms work in actual codes. After exploring tangrams with her class, Sarah encouraged her students to play a quick coding game from to see algorithms in action.

It’s not too late to join in the Hour of Code and encourage your students to experience programming this week. All the resources on are available for teachers at anytime, so if you’re like me, you might take some more time to plan. Either way, computer science skills are important for today’s students, and they can develop the critical thinking skills and learning behaviors necessary for success! See the great resources for planning your Hour of Code here.

No comments:

Post a Comment