Sign In

Communications of the ACM


Why Isn't There More Computer Science in U.S. High Schools?

Mark Guzdial

 A colleague that I hadn't seen in awhile asked me, "How's your work going?  Why isn't there more computer science in high schools?"  I paused for a minute wondering, "Where do I start?"

First, my colleague is right:  there is very little computer science in US high schools.  Depending on how you count, there are between 24-30K high schools in the US (e.g., do you count K-12 schools, or just 9-12 or 10-12 schools?  Private vs. public? Charter?).  There are approximately 2K teachers of Advanced Placement Computer Science (AP CS) in the United States, and they are not distributed evenly.  The "Running on Empty" report describes how many states have no computer science in their curricula at all. I would estimate that less than 10% of US high schools offer computer science.

So why is that?

  • Getting CS into the high school curriculum is hard, because curricula are hard to change.  There is no national curriculum in the US -- the Department of Education is prohibited from ever establishing a national curriculum.  Where educational decisions are made varies from state to state.  In Georgia, the state defines the curriculum, but that doesn't mean that any district has to offer the defined curriculum.  Each district can pick-and-choose which classes they offer.  Still, by defining a statewide CS curriculum for Georgia high schools, we created an opportunity to teach CS and got districts to think about it.  In Massachusetts, each district can define its own curriculum, so getting CS into the curriculum requires many small battles.
  • CS doesn't count for much in high schools.  CS isn't part of the Common Core that the US governors are promoting, though there is an organized effort aimed at changing that.  Only nine states allow CS classes to count towards high school graduation requirements. It was hard to get AP CS to count towards high school graduation in Georgia, and it keeps un-happening.
  • If few states have CS classes, and CS doesn't count towards graduation or core requirements, schools aren't hiring a lot of CS teachers, and there is little demand from teachers to learn CS.  We have more capacity to provide professional development in CS than we have teachers interested in taking it.
  • CS is battling issues of perception and access.  Stuck in the Shallow End tells this story in the Los Angeles Unified School District.  Jane Margolis and her colleagues studied three LA high schools and found these awful feedback cycles.  They found principals saying that their kids didn't really want CS so there was no reason to offer it.  They found kids saying that they weren't really interested in CS -- since they couldn't get access to it. 
  • Why don't we ask mathematics and science teachers to teach CS?  Isn't it easier to teach them CS?  Doesn't this get around the problem of having to squeeze another class into the curriculum?  In most states, CS is classified in the business department, as a vocational education subject.  To involve math and science teachers means that you are crossing departmental boundaries. We would be asking teachers who are certified to teach in core, valued subjects (math and science) to teach a subject (CS) that doesn't count for much and that is based in another department. While we have more capacity for CS professional development than we have prospective high school CS teachers, it's not clear that we have enough capacity to teach all math and science teachers about CS nationwide.

If it helps at all, the US isn't alone in these problems.  The UK's Computing at Schools effort is tackling many of the same issues of developing a CS curriculum and helping teachers to learn CS. New Zealand and Denmark have both just launched new national CS curricula and are struggling with issues of professional development.  Worldwide, there is growing recognition that we need more computer science in secondary schools.  That's an important first step, but making it happen is challenging.



Michael Robbeloth

There are also local funding issues to contend with in the United States. For example, in Ohio, school districts are funded through property taxes, income taxes, or both. In my school district they primarily use a school district income tax (1%, separate from other local or state income taxes) supplemented by a small property tax (relative to most other districts). Needless to say during these hard economic times, there is very little stomach to advanced curriculum subjects. There are many districts in Ohio teaching at the state mandated minimums in light of the public's inability/unwillingness to pay higher taxes.

Robert Macartney

Many years ago, I was one of the first to teach the Advanced Placement Computer Science curriculum. In those days, students were excited about the possibilities and future of CS. I can't see how they could be less excited today. CS is a field which offers a variety of career paths that provide excellent financial as well as intellectual opportunities.

District involvement and support and passion on the part of the students and teachers are critical. In my case, all three were there for a while. While my passion did not wane, the district began losing enthusiasm and student interest dropped to the point where it was possible for the program to be allowed to fade away.

Today, there are many more AP courses available in the science and math departments which gives potential students more choice than they may be able to handle. Nevertheless, my high school still has many students who finish AP Calculus BC as juniors. These are people for whom CS might be very attractive. At present the only AP math option is statistics.

The financial aspect is where I see many problems. If I were graduating today with any kind of CS background, it would be hard to see teaching high school as attractive. Of course, there must be some math, physics, or CS graduates with a passion for teaching regardless of the sacrifices in the areas of remuneration and professional respect.

I am retired now. One thing that has caught my attention is the NAND to Tetris program ( I wonder if this sort of work could not be introduced as an after school club with students working independently and getting together formally once a week to share ideas, problems and solutions.

I have always been enthusiastic about computers and computing. I hope there is way to expand interest in CS at the high school level. Such involvement on the part of our high school students has a multitude of of potential benefits for everyone.

Benjamin Kuykendall

I'm lucky to go to one of the few high schools (The Charter School of Wilmington) where computer science is taught well.

It is neither a science class or a vocational elective, but a whole department with a half dozen courses, included a required "Introduction to Computer Science" for freshman. Although not everyone in my school is interested in the subject, it really helped me to be exposed to computer science so early.

Displaying all 3 comments

Comment on this article

Signed comments submitted to this site are moderated and will appear if they are relevant to the topic and not abusive. Your comment will appear with your username if published. View our policy on comments

(Please sign in or create an ACM Web Account to access this feature.)

Create an Account

Log in to Submit a Signed Comment

Sign In »

Sign In

Signed comments submitted to this site are moderated and will appear if they are relevant to the topic and not abusive. Your comment will appear with your username if published. View our policy on comments
Forgot Password?

Create a Web Account

An email verification has been sent to
ACM veriŞes that you are the owner of the email address you've provided by sending you a veriŞcation message. The email message will contain a link that you must click to validate this account.
You must click the link within the message in order to complete the process of creating your account. You may click on the link embedded in the message, or copy the link and paste it into your browser.
Sign In for Full Access
» Forgot Password? » Create an ACM Web Account