This thread brings up a whole new topic; teacher training. I have a fairly broad based university in my town, the University of Montana. It prides itself on its Dept of Education. It is possible to get a Doctorate in Ed Tech from UofM. After having looked at the curriculum and talked to the guy in charge of the program (he is an old friend) the program is for business teachers and teachers that have an unlimited budget to buy all the cool technology toys (he is into iPods, blogs and webpages).
The curriculum for Ed Tech has no programming, no computer hardware/how to fix the @#$% things (one of my main jobs as a school IT guy), and no networking. The Computer Science dept at UofM has awarded two Computers in Education minors. Another teacher and I wrote our own curriculum and did all the course work independently.
Certified teachers qualified to teach high school programming, basic networking, trouble shooting of hardware, computer purchasing and the other basic skills that a high school CS teacher should be able to present to a class of HS students do not appear to coming out of my local University. Is this the same nation wide?
During the school year I have a monthly meeting (BS session) with most of the local techs from the other local schools (5 to 10 people), they all learned their skills on-the-job. The programming teachers I know have taken one or two college level programming courses then had to write their own curriculum for their kids.
The way programming is taught at the University has nothing to do with the way it is taught at the high school. University education departments (at least UofM) do not seem to be looking at what is being taught in the high schools and junior highs today. Is this typical for state Universities? I would like to improve my ability to teach programming and the other basic HS CS curriculum elements but without traveling around the nation it does not seem possible.
There are degrees in teaching math, in teaching reading, in teaching all sorts of things but I don’t hear much about a degree in teaching computer science. Like Garth most of the Ed Tech programs I have found are about everything but computer science. I’ve actually seen search engine traffic to this blog from the search string “how to teach computer science in high school” so I know there are people looking to learn.
I’ve done some workshops at Southern New Hampshire University to participants in their teacher training program so I know they are interested and at least including some courses in the right direction. Kennesaw State University is, I believe, developing a CS teacher education program to align with a proposed certification program in Georgia. Certification is of course a whole other problem.
I think that a big part of the problem is that there isn’t enough solid research on what it takes to teach computer science at the high school (and lower) level. Of sure a lot of people are doing interesting things (Alice, Scratch, TeachScheme, and on and on) but there hasn’t been enough research to know what works best. [Yes there has been some research with Alice especially Storytelling Alice and also some on Scheme but I maintain that there hasn’t been enough and there hasn’t been enough to compare it to other innovative programs.
And then it comes back to the lack of reasonable high school computer science teaching certifications at the state level. CSTA is working on this and if you are a high school computer science teacher you really should join CSTA. But we have a ways to go.
[EDIT} Interesting reading on the shortage of computer science teachers. There are some quotes by Chris Stephenson the Executive Director of the CSTA there.