Code.org has people across the United States thinking about the question, "Does my state count CS?" Making computer science count means that some CS class helps towards a student’s high school graduation requirements, and that counting creates greater incentive for students to take computer science. Code.org and ECEP are two of the organizations helping people change their states to make CS count.
The new concern is how does CS count. In the Computing At School effort in the UK, computer science itself is the requirement. That’s rare in the US. Most states count CS as a mathematics or a science course, towards some number of courses in the category required for graduation.
At the recent 2014 NCWIT Summit, I heard concerns about counting CS as math or science. If we want to broaden participation and increase the diversity of computer science, math and science is not where women and members of under-represented groups are likely to be, so the argument goes. Are mathematics and science teachers the ones who are most likely going to know how to attract and engage a more diverse student body? According to the ACM Running on Empty report, most states classify computer science as a vocational/business topic, so by default (if we don’t re-classify it), it will be business teachers who will teach CS. Business classes tend to be more diverse than mathematics, science, or computer science classes.
At a technical level, this isn’t a show-stopper. We want mathematics and science teachers to learn how to attract and engage a diverse audience. In the meantime, we can teach CS as business even if it counts as math or science. In Georgia, the AP CS course counts as a science, but only business and mathematics teachers can teach it. Strange, but true. We should teach CS with whatever teachers can best serve the students — just as long as we teach CS.
Taking the long view, the critical part is not whether computer science counts as mathematics, science, or business. (It is a particularly bad idea to count a "programming language" as a "foreign language," which removes something useful from the curriculum rather than augmenting it.) The point is to get it into schools, so that we develop teachers and expertise in teaching computer science. I do believe that eventually we will be teaching everyone computer science.
I was inspired to work in the field of computing education when I first read Alan Kay and Adele Goldberg’s 1977 paper, "Personal Dynamic Media". Kay and Goldberg paint a compelling vision of computing as a medium, as a way of expressing and communicating thought. They explain that computing goes beyond other media — it’s a meta-medium, in that a computer can replicate and combine all other media, plus it’s active and can respond to the reader.
In Kay and Goldberg’s view, we shouldn’t be teaching computing to everyone in order to give them vocational skills. We are teaching them computing to give them a voice, to let them say things and communicate ideas and in so doing, think and problem-solve in ways that they would not otherwise be able to. Andrea diSessa called this use of the computer as a communication/thinking tool "computational literacy" many years ago, decades before we started talking about computational thinking.
Eventually, we can expect computational literacy to appear in schools like textual literacy (reading and writing text) and numeracy (mathematical literacy). We use these existing media literacies across the curriculum. We read and write language, and use mathematics in every science, engineering, and business course, and in many other disciplines. We also take courses explicitly in the medium (e.g., in language, composition, and mathematics), because we want to develop our understanding and facility with the medium, not just use the medium.
We are passing the point where only the computing specialist reads and writes the computing medium. Some estimates suggest that for every professional software developer, there may be as many as nine other end-user programmers who use computing as a medium for problem-solving and expression. But the computing medium is still written by a minority, by those privileged to have access.
Universal literacy is always hard to achieve. Illiteracy rates are still high in many parts of the world. Many wish that mathematical literacy (numeracy) was higher in the US, because better understanding of mathematics might avoid some of our economic crises.
We’re still at the early stages of making computing available to everyone. To achieve universal computational literacy, we need teachers, curriculum, research into effective ways of teaching, research into how students learn computing, and more experience with providing computing education to a broad range of students. I’m not particularly concerned what category computer science is placed when entering schools. The critical part is that it enters the schools, so that we start learning the lessons that move us toward universal computational literacy.