Demand for computer science programs is higher than ever, but challenges, ranging from lack of qualified instructors, poor funding and disagreements over course work, stand in the way.
It’s well known that there’s a serious shortage of workers with the computer science (CS) skills needed to fill the growing number of vacant U.S. tech sector jobs. Nationally, in 2015 (the last year the data was collected) there were over 500,000 unfilled jobs in CS fields, while only 60,000 students graduated college that year with CS degrees. To help prepare students who want to move into these positions, a growing number of states have enacted policies, with varying degrees of substance, for their schools to offer CS courses.
While not expecting students who complete introductory high school CS classes to be ready to move directly into coding jobs, state leaders are hoping the introduction to CS will help students decide if they want to pursue related coursework in college, and perhaps move on to a science, technology, engineering and math (STEM)-related career. CS advocates (count me among them) also contend that knowing how to code is a new basic skill that all students should acquire to better understand and participate in our increasingly digital world, regardless of the students’ eventual career paths.
A new report, “2019 State of Computer Science Education: Equity and Diversity,” from Code.org and the Computer Science Teachers Association (CSTA), shows a marked uptick over the past year of states that are getting behind CS in their schools. However, though support for CS is high among parents — 90 percent want their students to take CS classes — only 45 percent of high schools offer these courses. The new report defines the current CS status for each state and outlines what’s needed to address the overall nationwide CS shortfall, as well as the field’s equity and diversity issues. But fixing these problems won’t be easy or fast, because schools face many challenges.
Lack of Qualified CS Instructors
It's no surprise that people who have CS skills required to teach the subject typically choose to work in higher paying tech sector jobs rather than in education. But there are many committed teachers who have the aptitude and interest to be trained as CS instructors, and various states and districts are helping develop training and certification programs.
There are also talented people working in tech sector positions who would like to exit their cubicles, make a career change, and enter K-12 education. Additionally, a handful of tech sector companies are partnering with schools and freeing up their staff to teach high school CS courses, either in-person or remotely.
For some provocative ideas on how to address the CS teacher shortage, I recommend a recent Christensen Institute article by a former high school CS teacher who suggests how we might rethink this problem.
Funding and Grad Requirements
Unfortunately, many states with CS legislation are providing little or no funding to support teacher training, which also contributes to the low rate of schools offering CS courses. However, other states, like Arkansas, have put adequate funding behind their CS initiatives and are seeing some noteworthy success.
States that support high school CS courses have learned that course credit changes are needed to encourage and enable students to take CS classes. So far, 47 states (up from 28 in 2017), now allow CS courses to count towards students’ science and/or math graduation requirements, albeit to the chagrin of many science and math advocates.
What to Teach in CS Courses?
After finding qualified teachers and accommodating graduation requirements, schools must then decide what curriculum they should offer in their CS classes. Some states have developed curriculum standards that outline, in varying degrees of specificity and rigor, the focus areas for CS instruction. And in support of schools’ CS course needs, organizations like Code.org have developed curriculums that schools can adopt and use in their classes.
Unlike teaching Spanish or French, which probably won’t have dramatic linguistic changes for many years, schools are discovering that teaching a specific CS coding language like Python, Java or other current tech industry standards is problematic, since these languages will eventually be outdated and replaced. So, some experts say, schools should consider focusing less on teaching specific text-based computer programming languages and more on teaching computational thinking and problem solving while integrating CS across all high school curricular areas.
But other supporters suggest block-coding programs be taught, since they’re easier to learn and less tedious than text-based languages, and also better support the acquisition of general computational skills. Free block coding programs such as Scratch (developed by MIT for children from ages eight to 16) and Google’s Blockly (favored by Code.org) are widely used in schools.
Robotics classes and clubs are also becoming a popular way to introduce students to coding, with both fun and practical outcomes. The opportunities that robotics provides students to collaborate on projects is a big plus, and robotics competitions offer new ways for student teams to collaborate towards a common goal.
Begin CS Instruction in Elementary Schools
Many CS supporters also believe coding and computational thinking should be introduced much earlier than high school. Whether it’s teaching programs such as Scratch or Blockly to elementary and middle school kids, computational thinking and problem solving should, CS advocates agree, be a greater focus throughout students’ school years.
But, as is true for CS instruction at all levels, training teachers to take on this responsibility remains a challenge. Some states and districts are focusing their CS teacher professional development not just at the high school level, but also with elementary and middle school teachers. And a number of states now require that CS be included in all subject areas of their state’s pre-service teacher education programs.
Address Underrepresented Students
CS remains a white male dominated field. So, as states and school districts develop and expand their CS offerings, they must ensure the active engagement of all students by providing targeted support to females, students of color, and low-income and rural students. If coding is to become a basic skill, it can’t be an exclusive domain. The equity and diversity focus of this year’s State of Computer Science Education report clearly identifies the field’s continued shortcomings in these areas.
The progress being made at the state level in support of CS is encouraging, as are the states and school districts highlighted in the new State of Computer Science Education report. Though, as with all things in U.S. education, the wheels of progress turn very slowly, and there are many competing demands for how students spend their school hours and how districts allocate their funds. But if 90 percent of parents want their students to have real opportunities to learn computer science in schools, one hopes their voices will be heard.