So I went to a meeting yesterday with several local schools and the local university CS department heads to discuss the state of CS education in the high schools and the direction of the university in regards to HS CS. It was interesting not only for the discussion but for who was actually there. Of the 20 or so high school teachers there were only 2, me being one, who actually teach CS. The rest taught various apps classes or were Office teachers. All the teachers, except for me, were part of the school business departments and that was their expertise. The other CS teacher had just been made part of the business department even though he also teaches math. I am confused. How business and CS relate is sort of out there for me but whatever.
The discussion was led by the university, it was their meeting after all. We discussed dual-credit CS courses that are already in place and some directions for the future. Perhaps the most interesting aspect was the focus the university representatives had during the discussion. They were mostly concerned with getting course work out to the students. I have no problem with this, they have some very good ideas that I plan to look into in more detail. The problem I had with the discussion was there was very little thought as to who was going to teach these courses. It should have been obvious just looking at the teachers in the room that this was a huge issue. All of the business teachers in the room talked about how ill-prepared they were to teach a CS course that included a major segment of programming.
All sorts of interesting things came to light during the meeting. The university people were unaware that in order to teach CS a teacher has to have a CS certification for the State Office of Public Instruction. The minor glitch is there are no institutions in Montana that award a CS certification without getting a degree in CS. Those with a Business degree can teach CS but most business teachers have zero CS coursework or experience which makes them less than enthusiastic to teach the course.
The course the university people were excited about was “The Joy and Beauty of Computing”. This course was designed at Berkley as an intro to CS/programming course. Montana State University in Bozeman has been piloting their version of the course in the Bozeman high school with excellent results. Students want in the course which is how I measure “excellent results”. In order to pilot this course the first year MSU had advisors in the classroom from MSU to help the teachers learn and teach the material. Outstanding! Now the state university system is talking about making this program available state-wide, but without the advisors or any training. Not so outstanding.
So the discussion started looking at some teacher training for the program. The university wants to offer a one week summer course on how to teach this particular course. There are inherent problems with on-site one week crash courses. The biggest issue is cost. Either the university has to find lodging for the teachers or they have to find their own. Find their own immediately kills the course due to teachers being poor. The university finding lodging means the teachers being in a dorm for a week during the summer. Makes the course expensive for the university. Better but still not good. Teachers are somewhat resistant to losing a week of summer for something that does not result in a monetary return. There is also the retention issue with cramming for a week. Maybe the teachers would walk away with enough knowledge to teach this one course by being able to follow a cookbook but I am just not convinced there would be much carryover to other course needs.
In my State the need is for Programming I teachers and courses, intro level more in the direction of Scratch and Small Basic type programming. The “The Joy and Beauty of Computing” curriculum, at least the one offered through MSU, looks like a Programming II/III course, it is a Python programming course. Making a Programming I course out of this is almost guaranteed to trim down the number of students interested in Programming II.
In the very back of my brain are the old memory cells that remember the first year I started teaching. I had just gotten done with a rigorous program of calculus, linear algebra, abstract algebra, statistics, and so on, all with 200, 300, and 400 level course numbers. I was absolutely unprepared to teach freshman high school math, especially to the “regular” kids. Some kid had to show me what FOIL was. Factoring trinomials was not in the program for math ed majors. Lots of learning took place that first couple of years, the most difficult of which was pedagogy. I foresee the same problem with CS/programming. If universities lead the way they are thinking of the needs of students entering the university. Java, Python and the like will be what they see as a primary need for students. The university will see the need for high school teachers at that level. There is a very strong need for high school teachers at that level, no doubt about it. The problem with that is that most high school students need the first level just to get started. They need teachers that familiar with Scratch, Small Basic, Gamemaker, Blocky, Greenfoot, programming languages and CS concepts for the first timer. In my experience the teaching pedagogy from Programming I to Programming II is completely different. The PII kids are there because they want to be and they are into CS/programming. You can just throw an idea at them and get out of the way. Programming I is a very different animal. They need to be coaxed, entertained, given regular reasons “why”, and do things that are fun. Otherwise this will be their first and last programming course. (Remember, CS/programming is an elective.) The teacher training needs to be different. A one week seminar on Python will not be a winner.
From this meeting I can see there is a lot of work to be done to get the high schools and the university thinking in sort of the same direction. The need for certification was an eye opener for the university people. It is the details like this that keep things interesting. The panic in the eyes of some of the business teachers that are going to be teaching programming next year for the first time was awe inspiring. Now if we can just get some results out of meeting like this I would be a happy camper.