« Real World Learning in a Web Design Class | Main | Teaching CS to Middle School Students »

Addressing the Crisis in Computer Science Certification

We can all agree that it is essential that computer science teachers have adequate preparation and professional development to teach computer science successfully. We can probably also agree that there is currently a crisis in computer science teacher certification.

Within most educational systems internationally, the task of ensuring that teachers are adequately prepared to teach a given discipline at a specified level rests with the bodies responsible for teacher certification. Unfortunately, as it relates to computer science teacher certification, there is a lack of clarity, understanding, and consistency with regard to current requirements. Where certification or endorsement requirements do exist, they often have no connection to computer science content.

As a result, there are exemplary computer science teachers whose state provides no certification in their chosen discipline. There are individuals who have knowledge of the discipline who want to teach computer science but lack the pedagogical training to survive and foster learning in a classroom environment and they have no place to get it. And, most disturbingly, there are teachers who have no computer science background being assigned teaching positions that require substantial knowledge of the discipline.

The result of this current situation is that students, teachers, and the discipline itself suffer. It is absolutely essential therefore, that all computer science teachers, new and veteran, have appropriate training. It is equally important that a model for teacher certification in computer science be instituted.

The challenge then, is how do we construct a sensible system of teacher certification that makes sure that everyone has the knowledge they require and yet does not drive skilled and dedicated teachers away from the discipline or the classroom.

In an extensive new report on the current state of computer science teacher certification, CSTA proposes a certification model that addresses individuals from four constituencies: 1) new teachers; 2) veteran teachers with no computer science teaching experience; 3) veteran teachers with computer science teaching experience; and 4) individuals coming from business with a computer science background.

Ensuring Exemplary Teaching in an Essential Discipline: Addressing the Crisis in Computer Science Teacher Certification provides a comprehensive examination of the complex issues of certification. It looks at the research is available and provides a detailed look at what is needed to meet the needs of teachers in each of these constituencies. The report is available online at http://csta.acm.org.

We believe that this is a critical discussion for our professional community right now, so tell us:

* What are your experiences with certification/endorsement in computer science?
* What were the qualifications required of you when you were assigned to teach your first computer science class?
* Were you adequately prepared?

Fran Trees
CSTA Chapter Liaison


Arizona has an endorsement for "Computer Science". You need around 30 semester hours of "computer classes" from an accredited university. However there is no test for this, and from what I can tell, the decision of what constitutes a CS class is vague.

You can also get the endorsement by simply having three years industry experience; however there's no real due diligence performed by the state to make sure that the applicant actually coded software in the job.

I preface my remarks by saying that I am no longer a high school computer science teacher. My program was discontinued and I am back to work as a developer.

During the time I *was* a teacher, I attended a variety of workshops that were intended to either train non-CS people to become programming teachers, or to upgrade the skills of CS teachers. University of Massachusetts Lowell and Boston, Cape Cod Community College, Bristol Community College all offered courses and workshops I attended. There is no dearth of such workshops around the country.

However, when you look at hiring practices, you see that schools are still hiring math, business, and science teachers to teach programming. Some of these folks are adequate, but many are not. Schools in the U.S., unlike India and Israel where CS is taught as a science, still don't know what to make of CS. They want to teach it -- not with "highly qualified" CS professionals -- but with people who have attended a community college seminar or two -- whose other job is teaching math or graphics or science.

In addition, schools often have unrealistic notions of what "relevant" CS education actually is, or they have been sucked into specific technologies by "eduvangelists" -- former teachers who now work for VERY LARGE software companies eager to gain a foothold in the schools. As I read the educational computing blogs, I see fads, games, blogging, graphics, computer literacy -- but I see little computer science. Computer literacy is often conflated with Computer science.

The real problem, then, is not computer science, computer scientists, computer professionals, or the availability of computer equipment in the schools. Many schools already have way more computer technology than they know what to do with. NCLB has assured this, with "excellence" in schools being partly determined by how many networked computers there are.

The real problem is that school administrators and school boards know nothing about computer science. Educating these educators is our challenge.

I believe that Fran Trees has posed some interesting questions here. The core issue, as I see it, is one of perceptions. The Public School System is no different than any large bureaucracy, embedded in an even larger bureaucracy, the Federal Government. Nietzsche observed (and I paraphrase) that insanity is rare in individuals but common in large organizations. But, to characterize this problem as systemic, etc., is irresponsible because it fails to also locate the blame with the Computer Science community, which has done little to define itself ...

Computer science has traditionally resisted definition, as definitions were perceived as too narrow or exclusive. That's normal for a field of knowledge that potentially encompasses and impacts so many other areas. But that's also counterproductive because it has allowed politicians (or shall we say anyone but computer scientists) to define computer science with the results we see today.

Face it: we cannot have it both ways. Either we, as a community, come together and create a set of standards, protocols, and formal justifications for what constitutes Computer Science from K through 12, or we're likely to be marginalized out of the classroom. Remember: you're dealing with a bureaucracy here.

We're all aware that the CSTA/ACM has proposed such a curriculum, and I'd be remiss not to address those documents. I think that they are fine ---as works in progress. The "problem" (as I have seen it, anyway) is that we have never justified the core curriculum (some would argue, and I'd agree, that we haven't identified the core curriculum either), and identified that curriculum as belonging to Computer Science.

I've seen (and have tried) several justifications. For instance: appealing to the pervasiveness of technology, or the the success of a particular application, such as Games, only convinces the audience that you're teaching a "Tech" or business course. I don't think that you want to create that impression---trust me, it doesn't take us where we need to go. Taking the opposite approach, appealing to the mathematical or logical underpinnings is difficult because your audience thinks that mathematics is only Calculus, and we already have that one covered, don't we? Any "scientists" in your audience (remember, this is secondary school district personnel) are physical scientists who's knowledge and expectations are 19th or maybe 20th century in scope and breath. They see no relationship whatsoever between algorithms and evolution, etc. (They MIGHT have read Darwin, but certainly haven't read John Holland, et al.)

Finally, at the end of the day, neither of these groups are entrusted with the decisions that impact us. No, that task falls to the bureaucrats. But, the bureaucrats who make those decisions will defer to the consensus opinion, which comprises the groups I've just described, to confirm their already formed opinion that you're just trying to protect your job.

So, at the end of the day, what is to be done?

Assuming that we could enumerate the core concepts and justify these as belonging to computer science, we would have established the "necessary" conditions for our place at the table. Next, we need to provide sufficient cause, and perhaps here we can use current events, etc. to work for us. Next, we would need to codify those into a "certifiable" area (look up the root of the word "certify" and tell me once again that Americans are a people of "faith"). Coincident with this, we would need support from above: that is, someone from the new Administration needs to confirm the perception that Computer Science belongs in the American Public Schools.

Now, are you a betting person?


Montana has a CS certification but there are no course requirements. I just learned this little detail today. The State has a list of skills for CS teachers to know but that is it. A teacher with a degree in Underwater Basket Weaving can apparently get certified in CS in Montana. Carrol College, a Catholic College in Helena, offers a minor in CS Ed but the State schools offer nothing.

I was a Cisco tutor and having its Certification like 642-845 this and others. I really enjoyed the teaching and I am happy with my current job too.

I have been teaching CS in NH for 26 years. I am trained as a Math teacher and just last November go my CTE (Computer Technology Educator) license. NH does not have a CS Ed certification, the CTE is as close as it gets. My colleagues also with a CTE are often business teachers and Graphic designers and teachers who teach Carpentry, Electric, Small engines and Plumbing from Industry who have found their way to teaching.

I have recently been looking at other states. NC also has a CTE and I was told that I would be invaluable last Spring if I had a CTE. Again they are looking trades men/woman.

I have not found anything dealing with CS in TN at all and very few districts that teach CS courses. VA seems to have CTE which is more specific to programming.

As a CS teacher in a world where such a thing did not exist for a long time, I had a certain amount of freedom to change curriculum, update courses and even add courses when appropriate. of late, however, the APCS enrollment is down, the programming courses are down and even Web Page Design which has been extremely popular in the last 6 years is down. As a result my district and many districts are dropping the courses and don't really see a need for creating a CS certification. This coming year I will be teaching less Java and web page and add Consumer Math and Graphic Design courses to my schedule.

I am of a differing opinion, of course. I think the problem is that Universities do not offer CS Ed. How can we be taken as a serious occupation when so many schools do not recognize it as such and there are so many paths with the same outcome?

The other teachers that have joined me in teaching CS, I have trained myself and that is basically how teacher get into teaching CS at the High School level.

thats one of the best articles i have read recently on this problem thank you

I have been teaching these certification courses of cisco at schools but could not get a better job like in universities.

Post a comment

(If you haven't left a comment here before, you may need to be approved by the site owner before your comment will appear. Until then, it won't appear on the entry. Thanks for waiting.)