EducationFEATURED

Teaching the Principles of Computer Science Early in K–12 Schools

While coding is a good start, school districts need to develop broader computer science initiatives to grow 21st century–ready learners.

Are we adequately preparing students for the 21st century digital world they will inherit? This question looms large among policymakers, educators and parents when assessing the state of computer science curriculum in K–12 schools.

Among U.S. high schools, only 51 percent offer computer science coursework, according to the 2021 State of Computer Science Education report by Code.org, the Computer Science Teachers Association and the Expanding Computing Education Pathways Alliance. To address this disparity, schools need to start building students’ foundational knowledge and skills early and have curricula and resources in place to expand their learning throughout their K–12 education.

When Should Schools Begin Computer Science Education?

Many experts believe that computer science should be introduced as soon as students enter school. “Kindergarten provides a good opportunity to expose students to computational thinking and problem-solving,” explains Victor Hicks, a 2022 K–12 IT influencer and the director of Coding with Culture. “I look at coding like a language; the earlier kids are exposed to it, in an age-appropriate way, the better.”

In the earlier grades, coding is seen as a starting point to a wider engagement with computer science. Coding is a good place to start, but schools then need to look beyond it.

“Most elementary-level options are too focused on games and building online safety skills, not truly harnessing the power of technology,” says Charu Chaturvedi, co-founder and president of CodeAdvantage. “We need more options — specific materials and resources — to help kids learn to code and then create cool projects using what they have learned.”

Cultivating student interest and engagement with computer science also requires more dedicated classroom time, an educational resource always in short supply.

“It’s a Catch-22: We want to give exposure, but we also need repetition, and that requires more time commitment for students to really get into it,” says Hicks.

Introducing Elementary Students to Coding and Computer Science

When elementary-aged students engage in coding and other programming activities, they become familiar with problem-solving, computational thinking and sequencing — core critical-thinking skills that will support not only computer science learning but learning across all school subjects. This early engagement provides the tools kids need to interact with the digital world.

“To understand what’s going on in the world around them, students need foundational knowledge about computer science,” says Jake Baskin, executive director of the Computer Science Teachers Association. “It’s everything from understanding the apps running on their phones to how colleges use AI to screen applicants.”

It also prepares children for a job market that is only growing more digital. “Computer science now touches most career paths,” says Chaturvedi. “With technology, the intimidation factor for people can be high, so being able to get students comfortable and confident with it from an early age is a great benefit.”

K–12 Schools Need Early-Grade Standards and Staff for Computer Science Classes

There is little government guidance or policy on comprehensive K–12 standards for computer science. Many states are moving forward and adopting policies such as the Code.org Advocacy Coalition’s nine computer science policy recommendations. Elementary schools seeking guidance can start by looking beyond introductory coding apps.

Charu Chaturvedi
With technology, the intimidation factor for people can be high, so being able to get students comfortable and confident with it from an early age is a great benefit.”

Charu Chaturvedi Co-Founder and President, CodeAdvantage

“Coding is a good gateway, but elementary students need to engage in more project-based activities to develop problem-solving skills,” says Hicks. “We need to provide opportunities for a broader application of skills with real situations and applications.”

“At CodeAdvantage, our K–12 curriculum focuses on fundamental concepts, hands-on activities, integrating arts and crafts,” says Chaturvedi. “These kids learn the if/then principle, basic drag-and-drop, and building code. You want students to reach a point where they understand the line of code and the logic behind it — and make it fun in the process.”

Along with a lack of standards and established curriculum, schools struggle to retain staff who possess a computer science background. “There are not a lot of computer science teachers around,” explains Baskin. “The field has been doing outreach to other subject matter teachers to train them, so they can come in and teach computer science as well as their focus subject.”

Tech Support for Learning Computer Science

Despite these challenges, many schools are well positioned following the pandemic with the technology they need to support and enhance computer science for their students. Students require input devices, which can include Lenovo ChromebooksMicrosoft Surface tablets or even smartphones. Internet access and wireless network connectivity are also key.

For younger students, most coding and programming apps — such as Roblox, Minecraft: Education Edition and MIT App Inventor ­– offer free or low-cost access.

There’s no specialized technology needed for middle school grades to learn programming languages such as Python, JavaScript or HTML5. If schools want to get more advanced or specialized, they can explore different areas, such as robotics, using Arduino, Sphero or Raspberry Pi.

Outside the classroom, schools will want to make sure that kids at home or involved in after-school activities have access to the same input devices and connectivity they have at school to continue growing their computer science skills.