Should we be teaching coding in elementary schools?

The answer is a profound YES!!  The idea of teaching coding in school has generated unprecedented interest around the globe, with studies indicating that it is critically important, both educationally and socially, for students to learn how to code or program starting as early as Kindergarten.

You may think coding is just for the future software engineers and computer programmers, but it’s actually a skill that can be beneficial to everyone, even at a young age.  The goal is not simply to create a pool of skilled programmers to meet the needs of future job markets.  In fact, learning to code enables children to use digital technology to develop a plethora of crucial skill sets. Furthermore, it helps students in our technology-based society to move from the role of ‘consumer’ to that of a ‘creator.’  The younger you begin teaching coding, the better.

Scratch in Use

If you want to incorporate coding into the curriculum but your school is now online and you don’t have access to  materials, there are plenty of low- and no-cost tools you can turn to. Scratch is one of the most versatile resources for this because it boosts student engagement and provides an easy way to infuse coding into your existing curriculum  — even in fully online or remote settings.

Here are five ways students benefit from coding in the classroom:

1. Coding Teaches Career Readiness Skills

Career Readiness

According to Technokids, the reasons for teaching robotics and coding in the classroom are practical and compelling.  Students need to be prepared for the workplace of tomorrow with career readiness skills such as innovative and critical thinking, planning, problem solving, perseverance, and teamwork.  They also need specific skills that will be in high demand in the future: facility with computer skills, logical reasoning, and a basic understanding of coding.

Creating games is fun, and using programs such as Scratch makes this activity accessible even to the youngest learners.  Using simple intuitive and easy to learn, drag and drop type coding programs makes coding easy to do and understand for any beginner, no matter how young.  This makes activities engaging for students and motivates them to learn.

Many younger students shy away from programming because the syntax is confusing and frustrating.  Drag-and-drop block structure programs get rid of the syntax problems while reinforcing the logic and intuition behind programming. Understanding how programs like these work, also makes it easier to learn new computer programming languages.

Students are able to better understand the world around them with programming knowledge. It can change the way they interact with the technologies used daily and can introduce them to new possibilities.  The key to future jobs is to embrace change and new possibilities.

2. Coding Teaches the Use of Communication Skills to Demonstrate Learning

Coding is another language.  We have all heard the research that children should be exposed to different languages at an early age.  Language is how children learn to communicate and develop logical thinking. 

According to Emily Turner and Active Robots, communication is an absolutely essential skill throughout school, work, and life. People who can clearly communicate complex ideas in simple terms tend to be successful in different industries and walks of life.  When kids learn how to code, they learn how to communicate with the most simple-minded audience imaginable: computers. As mentioned, coding teaches kids how to break down complex ideas and arrange them in a way that computers can understand.

Demonstrate Understanding by Replacing Traditional Artifacts

In addition to helping students learn programming, coding projects can replace artifacts like dioramas, brochures, displays or slide presentations.  In fact, I’ve found that after they become familiar with coding programs, students will ask to use their new-found knowledge to create learning opportunities for their core academic classes. For example, two students I know created an interactive flipbook on sound. Rather than completing the traditional children’s sound book for eighth grade science, the students asked if they could put their computer programming skills to work and create an animation instead.  Another student created a project for social studies that not only involved learning about the Mayan ballgame, but also gave users the opportunity to play the game.

The usual methods of presentation, like slideshows and poster boards, are static and one-way. When students present complex material using text or diagrams, viewers can become confused because they are simply viewing the work and not interacting with it.  But when students create moving diagrams it’s easier to demonstrate complex relationships and show their grasp of the subject. Interactivity also improves comprehension for the viewer.

When students decide which tool to use, they are addressing one of the key components of ISTE Standards for Students. The Empowered Learner standard expects students to leverage technology to take an active role in choosing, achieving and demonstrating competency in their learning goals.

Demonstrate Understanding of Math Applications

Scratch coding math skills

Coding allows students to see the real-world application of math. No matter the concept, when students ask, “Why are we learning this? How will it help us?” Chances are, you can show them a relevant programming application. For example, after learning about four-quadrant graphing, my students were able to program the arrow keys in Scratch to simulate video-game-like movement of characters.  In this No Fear Coding Blog you can find examples of  math skills clearly being demonstrated in the code.

According to Learning Resources, coding helps children to be able to  visualize abstract concepts, lets them apply math to real-world situations, and makes math fun and creative.  Coding is present in many of today’s STEM programs. Having children learn coding at a young age prepares them for the future.  Coding helps children with communication, creativity, math, writing, and confidence.

Demonstrate Writing Performance

Scratch Story telling

Coding improves writing academic performance.  Research shows that children who learn to code understand how to plan and organize thoughts.  When coding students are forced to plan out where they are going and recognize where they have been.  This is often the trickiest part of writing for children, the planning and organization.  This can lead to better writing skills that can be built upon, as coding skills develop over time.

The Tech Advocate points out that good writers use their words wisely. They know how to say something in as few words as possible. This helps keep writing concise, readable, and to the point.  When writing code, good programmers know how to do a lot with just a few lines of code. Excess code can make a program confusing if other programmers need to make changes. Too much unnecessary code can also confuse the computer and lead to unexpected and unwanted outcomes.

When kids practice coding, they get into the habit of eliminating excess. This will make them better communicators and writers. They’ll know how to say a lot in just a few words—an increasingly important skill in a world where attention spans are shrinking.

3. Coding Boosts Critical and Computational Thinking Skills

By learning to code, early learners will also learn computational thinking which enables them to develop cognitive skills and learn logical and sequential thought processes.  Coding offers multiple ways for students to complete the same task, such as making characters move in Scratch. Students get to decide the method that works best for them.

They also build thinking skills – and perseverance – when they make mistakes and their program does not work. In the words of a fifth grade student, “When you become really invested with something that you have programmed, it just makes you want to go through all of the scripts over and over until every little bug has been worked out of the system. And when you finally get a program that works exactly like you want it to, the feeling is so great that it makes you want to make another one.”

Critical and computational thinking are always two difficult skills to teach and they are even more challenging to get students excited about.  Teaching coding skills satisfies both of these.

4. Coding Teaches Perseverance

The Engineering Design Process teaches perseverance.  This is where children identify a problem, imagine and plan a solution, build and test their creation, and share their work with peers.  Creating code requires using the Engineering Design Process.  Learning to code is a challenge for younger students, as tackling complex problems can be frustrating. Through coding, early learners are able to, through persistence, complete the task at hand.

The National After School Association states, “we teach children to read and write because it opens new doors for them, gives them new ways to think about the world, and offers new ways to express themselves. The same is true for coding. When we learn to code, we learn to think sequentially, to think logically, to solve problems. And most important: We gain the ability to create anything we can dream of.”

Children cannot create, solve problems, or do much of anything if they lack perseverance.  In the day and age of instant gratification, this skill may be more important than any others that we teach.  In order for their code to work or their creation to come to life, students must pursue it to the end, teaching them to persevere.

5. Coding Fosters Creativity

Coding empowers young children to consume digital technology but also be the producers of it. Instead of just playing a game, they can create one themselves.  Learning Resources  says, by experimenting, children learn and strengthen their brains. Even when they make a mistake they learn. Children can be creative and creativity is encouraged. Creativity is part of the process and not always the product.

This is very true when it comes to coding new ideas.  Creativity is the process and may or may not be the outcome or the product.  There is more than one way to code something.  Allowing students to see that they can be creative in their thinking and their coding.  Coding empowers young children to consume digital technology but also be the producers of it. Instead of just playing a game, they can create one themselves.

What does the research say about teaching coding?Research Photo

A study (The Effect of Coding Teaching on Students’ Self-Efficacy Perceptions of Technology and Design Courses, 2018) was conducted in North Cypress on seventh grade students during the 2016-2017 school year.  The results of this study showed a significant difference between the students, taking coding courses compared to the control groups.  It was noted that students taking coding courses exhibited a positive attitude towards the course, and they practiced their metacognitive thinking and social skills at top levels. Based on the students’ views, it is obvious that coding has a positive effect on their self-efficacy perceptions.

As you can see, being exposed to computer programming and computational thinking skills can have a significant impact on student learning.  Our task now is to find ways to expose and implement more opportunities for educators to infuse these skills into their curricular repertoire.  Teachers must get outside of their own comfort zone and let students jump into coding.  They will see measurable results.  Students are immersed in technology everywhere they go, why not at school also?

How Do I Get Started?

If you are a teacher looking to purchase a robotics kit and want some guidance, check out Technokids’ 10 Point Checklist for Choosing a Robotics Kit.  It will give you some great points to consider and help you make a more informed decision.  In addition, be sure to look into our recommendations on our products page and the ideas found in Heidi’s book, No Fear Coding.

If you liked this post and want to stay on the cutting EDGE of education, sign up for our newsletter and check out our YouTube channel.

Have Fun Coding!!

About the Authors:

Heidi Williams

This article was co-written with Heidi Williams

Heidi Williams is a passionate coding and computational thinking advocate. Her over 25 years of experience in education include serving as language, science and mathematics teacher for grades 6-8, as well as roles as a differentiation specialist, technology integration specialist, instructional coach, gifted and talented coordinator, elementary principal and K-8 director of curriculum. Williams has shared her passion for integrating coding into the curriculum at local, state, regional and national conferences, and many have leveraged her expertise for conference presentations, coding coaching, professional development and K-12 scope and sequence alignment of computer science skills throughout the curriculum.  She maintains a blog, Stretch Instructor.