Last week, the Trump White House announced $200 million in federal funding to improve K–12 computer science education every year. The next day, tech leaders including Amazon,Facebook,Google,Microsoft, and Salesforce added another $300 million to the bag, spread over five years. The goal of that initiative is to support K–12 STEM education, focusing on computer science.
The need for basic computer science education has never been greater. Software and computers drive the economy, aiding mines and farms, as well as retail stores, banks, and healthcare. There are 500,000 computer science job openings in the U.S., spanning every industry and state. That’s more than 10 times the number of students who graduated with computer science degrees last year, according to the nonprofit Code.org, which has been working tirelessly to establish and expand CS access in schools.
The tech industry grumbles about the shortage of qualified workers. Yet fewer than half of American K–12 schools offer computer science classes, according to Code.org. That number goes up to around three-fourths of K–12 schools when you include CS exposure through after-school activities and clubs, according to a 2016 Google-Gallup report.
Newer data on high school Advanced Placement exams collected by College Board does show positive signs. The number of “AP Computer Science A” exam-takers more than doubled from 2012 to 2016, reaching more than 54,000 students. And another 40,000 students took the new “AP Computer Science Principles” exam introduced in 2017. But that’s still a small fraction of the 15.1 million students attending high school this year.
A vast majority of students, parents, and educators are interested in and highly value computer science, the Google-Gallup report found. But state policies and curricula are lagging. Ten states currently have K–12 computer science standards, and 10 others are working on them. Only 33 states count computer science courses toward high school graduation credit. Arkansas is the only state that has made K–12 CS education mandatory. Virginia and Rhode Island are on that path.
Getting to this point has taken three decades of tireless state-level advocacy from Code.org and the Association for Computing Machinery. And there’s still a long way to go. Many states treat CS as an elective rather than a core academic subject like math and chemistry. Plus, most state standards focus on basic computer skills, rather than understanding core computing concepts.
Ideal CS courses should teach computational thinking: logical thinking, abstraction, algorithmic expression, problem decomposition, stepwise fault isolation, and debugging. “Every 21st century citizen needs fluency in computational thinking,” says Ed Lazowska, a computer science professor at the University of Washington. “It is never too early to start learning this. Elementary school kids can and do learn it.”
In fact, it’s crucial to start early. Just like reading and math, starting in kindergarten and learning incrementally builds a foundation for logic, critical thinking, and creativity. These skills are difficult to catch-up on later. Plus, says Code.org’s Chief Academic Officer Pat Yongpradit, reaching students earlier helps get girls and minorities on board. “They build confidence and efficacy around their ability to do computer science,” he says. “You can avoid stereotypes or at least make them aware of them.”
Other countries are stepping up CS education efforts. Israel leads the world, according to a report by the Information Technology & Innovation Foundation (ITIF). Its curriculum emphasizes CS as a science instead of teaching only coding, and the nation has 16.2 times as many students on a per-capita basis as the U.S. taking rigorous high school computer science. The U.K. mandates CS for students aged 5 to 14, but is struggling to train all the teachers it needs. According to the ITIF, Australia, Finland, Denmark, and Singapore are reforming CS education by introducing it to primary school students, adding deep concepts to curricula, and training specialized teachers.
Addressing the teacher shortage should be the number one use for the new funds allocated by the Trump administration, says Mark Stehlik, a computer science professor at Carnegie Mellon University. A lack of qualified teachers is the biggest barrier to CS education in the U.S., he says, and he thinks the problem is going to get worse. An earlier generation of CS educators has started to retire, and he says younger CS graduates “aren’t going into education because they can make twice or more working in the software industry.”
One solution could be to expand the reach of each CS educator through online classes. But “online curricula aren’t going to save the day, especially for elementary and high school,” Stehlik says. “A motivated teacher who can inspire students and provide tailored feedback to them is the coin of the realm here.”
Where the money should not be spent? On hardware and equipment. Laptops, robots, and 3D printers are important, says Code.org’s Yongpradit, “but they don’t make a CS class. A trained teacher makes a CS class. So money should be focused on training teachers and offering robust curriculum.”
Corporations also need to take more seriously their responsibility to donate money and technology, and, perhaps more crucially, provide volunteers who can share their skills and knowledge with students. Some top tech firms like Microsoft already have programs that encourage employees to volunteer-teach high school courses, which typically means spending a couple hours a week delivering the class. But it would be more effective if those employees spent several days at the school, teaching students and also mentoring teachers.
This approach can be a win-win for everyone, Stehlik says: building community and social good in the short term, and in the long term, ensuring a workforce for the companies themselves.
Prachi Patel is a freelance journalist based in Pittsburgh. She writes about energy, biotechnology, materials science, nanotechnology, and computing.