Experts say that teaching children to read is essential to cultivate an early interest in computer science. The earlier students are exposed to the subject, the more likely they will want to take it in middle school and beyond.
But some proponents of the subject worry that a focus on coding can be misleading. They argue that CS should be taught alongside or integrated into core classes.
What is CS?
Computer science is the study of algorithms and computational thinking. It is the basis of all technology, from web browsers to social media to autonomous vehicles. But unlike traditional subjects like math and science, there is no one-size-fits-all CS curriculum. Many educators use a variety of methods to teach CS, from very scripted lessons to open-ended creative computing.
Research shows that students with positive attitudes toward STEM (science, technology, engineering, and mathematics) careers are more likely to pursue those fields in college. The best time to cultivate those attitudes is early in elementary school. But few approaches have been developed to bring CS to elementary school students.
For teachers, finding a way to make CS more accessible in elementary school means addressing misconceptions about what it is and who can learn it. Some parents believe that coding is only for “geeks,” while others think students are inherently good or bad at it. CS advocates hope to dispel these myths by showing that CS is more than simply learning how to move instruction blocks around in a programming language and that anyone can develop computational thinking skills.
The CSforAll initiative is working with districts to map out their visions for bringing CS to their classrooms and integrating it into other subject areas. These visions reflect a range of values, such as equity, civic engagement, and innovation. Some states are also using a new tool called CSPMap to help teachers identify the CS content they should focus on and how it connects to other subject areas.
Some curricula use a transdisciplinary problem-based approach that addresses both the CS and the content of other subjects, such as a unit on water pollution. These modules include lessons to address content area standards in science and social studies and CS concepts (e.g., data collection, recursion, and modeling). Students also apply English Language Arts (ELA) standards to research, read, write, and present their findings.
Other programs, such as Bootstrap and Project GUTS, incorporate computer science curriculum into other subjects by aligning it with mathematics, algebra, history and social studies, or business and physics. These approaches allow students to build CS competencies while developing other important skills like collaboration and persistence. PS/IS 217 is one such school in the City of New York’s CS for All pilot. It uses SEP Jr, a high-quality CS curriculum that balances teacher-directed, direct instruction with open-ended creative computing platforms.
Why is CS Important?
Students should be exposed to coding at an early age, advocates say because it is a skill that they need for the future. As the world becomes increasingly digital, knowledge of computer science can help prepare young people for careers and everyday activities, like creating a document or finding information online. It can also help them become informed digital citizens who understand how technology impacts their lives and the way that they use it.
But despite the need to learn CS skills, there are still significant barriers to getting kids into the classroom. Many schools don’t offer the class and those that do often only have it as an elective. And even when it’s offered, students from low-income families are more likely to miss out on the opportunity due to limited school resources.
The lack of access to CS education is particularly concerning because children’s attitudes toward STEM subjects start in elementary school and are strongly influenced by their experiences with the discipline, according to research (George, 2000). Studies show that students who report interest in STEM fields in eighth grade are three times more likely to pursue them as their career path.
Teachers have a critical role in bringing CS to more students. But most don’t feel comfortable teaching it because they lack the training and support needed to teach the subject well. Some have reported that they have been asked to teach CS without formal training, and others say they don’t have enough time to provide their students with quality instruction.
To make CS more accessible, states and districts need to create programs that put equity at the forefront. They must find ways to ensure that all students have the opportunity to participate in the class and that teachers receive adequate training and support. They should also focus on expanding CS initiatives to reach as many students as possible, including those in low-income communities.
Finally, they need to partner with community organizations, philanthropists, creative media, and tech professionals to help raise awareness about the importance of teaching CS to K-5 students. This includes leveraging new tools to scale the impact of existing commitments.
How Can I Teach CS?
Computer science (CS) requires a new way of thinking that is not taught in traditional subject-matter classes. While policymakers have made great strides in promoting the importance of CS, there is still much work to do in making sure that students have access to quality CS education. This is particularly important given that students who are interested in STEM subjects by eighth grade are more likely to graduate with a degree.
Teachers need support to make sure that students receive high-quality CS instruction. This is especially true for elementary school educators who may not have a background in the discipline and are often unfamiliar with teaching CS to young children. Several studies have investigated the effectiveness of various approaches to providing CS to elementary school students. These include teacher professional development (PD) and learning progressions that introduce CS concepts to elementary students.
While teachers and administrators have been supportive of efforts to bring CS to the classroom, parents are more skeptical. More than 80 percent of parents surveyed in a Google/Gallup study believe that CS is just as important as other disciplines like math and reading, but many also hold misconceptions about who can or cannot learn CS. Specifically, many believe that one needs to be “very smart” or have a “geek gene” to be good at CS.
This is a major obstacle to the broader adoption of CS in schools. The best way to overcome this barrier is to provide high-quality CS education that is culturally relevant and engaging. Coding puzzles, tutorial progressions, and unplugged activities that teach CS concepts without computers are all great onramps to the field.
Additionally, teachers can incorporate CS into cross-curricular lessons that connect it to other content areas. For example, in a recent study, a team of NYC educators created lesson collections that combine CS with science and social studies. These lessons are framed as transdisciplinary problem-based modules that allow students to apply science and social studies content standards while gaining skills in CS and CT.
What Can I Use to Teach CS?
Computer science is more than coding, and a variety of teaching methods are available. Educators can use kinesthetic, visual, or interactive lesson plans to engage students and introduce CS concepts. Some educators even incorporate CS into other subjects, like math and language arts, to teach problem-solving skills that are transferable to other disciplines.
One way to teach coding is through the programming tool Scratch, which allows teachers and students to create their own video games and animations. This allows students to experience the process of breaking down complex problems and solving them with code while also developing the computational thinking needed for CS. Another popular curriculum is MIT’s Software Engineering Program, which provides teachers with yearlong implementation guides that balance teacher-directed lessons with open-ended creative computing platforms.
Other curricular resources focus on computational thinking, an essential skill for CS but can be difficult to teach without access to computers. For example, some of Kodable’s free coding lessons and games are offline, so students can learn the basics of coding even if they don’t have access to a device or an internet connection.
Ultimately, a quality CS education aims to prepare students to be proactive learners and citizens in a world increasingly shaped by digital information. This can only be done if students understand how information is stored, processed, and transmitted—and that requires an understanding of the basics of computer science.
Research shows that students who take a CS course in high school are three times more likely to major in STEM fields in college than those who don’t. Yet only about half of schools offer a CS course. Schools need a comprehensive approach to implementing and sustaining CS to address this gap. This includes building a culture of inquiry and collaboration, creating equitable access to computers, providing support for teachers, and expanding opportunities for students to develop their own interests in CS. Fortunately, many efforts are underway to do just that. FOR EXAMPLE, the NYC Department of Education’s CS for All initiative is helping schools like PS/IS 217 develop their own CS programs.