Due to an insatiable desire to cause myself pain and discomfort I have gotten on the “let’s try and get a CS Ed program started at my local university” horse again. I am simply trying to get a way that Montana teachers can get a CS certification without getting a BA in CS. At the moment the only way to get qualified in Montana to teach CS is to get the CS degree and then get a degree in education or get a Business Ed degree which includes no CS, just business apps. The Business degree does not come with the CS certification. Since none of our colleges offered a CS Ed program I asked the Montana Office of Public Instruction (OPI) for what is required for a CS certification program. They do have such a document. The document was interesting to say the least. There were some requirements that just seemed a little out of place for a K-12 certification.
(vi) demonstrating knowledge of and the ability to construct multi-threaded client-server applications
Uh, right. I am not even sure what that is. Here are some others.
(vii) demonstrating knowledge of and the ability to construct web sites that utilize complex data bases;
(viii) demonstrating knowledge of and the ability to construct artificial intelligence and robotic applications; and
(ix) demonstrating knowledge of the principles of usability and human computer interaction and be able to apply these principles to the design and implementation of human-computer interfaces;
I passed this on to my friend that teaches CS at the university. He spends a semester teaching (vii) with his CS majors. His comment on (viii) was “Wow”. I kind of have an idea what (ix) is talking about but I am not sure I would want to do it at the high school level. Some of the other requirements were to be knowledgeable with at least one of the following languages; C++, Java, C# or Ada. Ada? Who in the heck uses Ada as a teaching language? How many people use Ada period? You would think that somewhere in that list would be something appropriate for middle school kids. A teacher knowledgeable in Scratch or Alice or Small Basic or half a dozen other possibilities would be so much more useful to a K-12 system than any of those in this list. The document goes on with needing be able to demonstrate familiarity with four high-level programming languages. Seriously? Four? Somebody needs a reality check. This is supposed to be for teaching CS K-12, not 13-16 and also not full time. After reading these standards I really understand why the Montana colleges are so reluctant to offer the program. There are just not enough CS teaching jobs to make building such a program worthwhile. No pre-service teacher in their right mind would do the program and no teacher wanting to get a CS certification would have the time to commit to the number of courses this would require.
I looked through the requirement for a mathematics program. It actually makes sense. The math requirements list is shorter. We are doomed by bureaucracy. I will continue to fight the good fight but it is not looking good. Must be a philosophical thing I have. I want to teach kids CS, not make CS professionals.