Or more importantly how do students know that they are NOT interested in computer science? As I mentioned recently I had a conversation with Mike Zamansky from New York’s Stuyvesant High School about his program there. One of the key pieces of that program is a required computer science course for sophomores. As Mike explained to me programs that are completely elective tend to attract mostly students who already know (or think they know) that they are interested in computer science. Generally that seems to be the case most places. Oh sure teachers in other schools tell me that their first computer courses are also used as dumping grounds for students with “holes” in the schedule and I know that is true from my own experience. The problem with this is that there is little opportunity to expose students who don’t know what computer science is to the wonders it can be.
There are issues with required courses for everyone. But let’s face it most of what students take fit that category. Teachers adjust to it and do just fine. In fact many a student in many subjects gets excited by a topic because of an experience in a required course. I know it is one thing to use an example from a top school like Stuyvesant but there are many more examples from other programs. For example a recent article (Summer Camps Get Their STEM On from US News and World Reports) about summer STEM Camps talks about how students in these programs get a chance to be exposed to and perhaps develop an interest in new things.
Enrolling your teen in intro-level sessions gives them an opportunity to realize their aptitude in areas they hadn't otherwise considered, says Barbara Ericson, director of computing outreach at the institute, recalling one former summer camper who went on to study computer science at Georgia Tech after his mother signed him up for camp. "He didn't even want to come," Ericson says. "That's who we want to reach, kids who don't think they'll be interested."
That last line is such a critical piece that it is worth repeating "That's who we want to reach, kids who don't think they'll be interested." Arguably high school is late I in the process. We should start in middle school. Tools like Kodu, Alice and Scratch among others are ideal for introducing computer science to middle school students. As with so many things that ideally students would learn before high school there is often not room or interest or the right teachers to introduce computer science in middle schools. So it makes sense to have a required course in CS in high school.
I hear all the time that there is no demand for computer science teachers. Or that there is no demand for computer science courses from students. To some extend this is true but it is a solvable problem. If there were more required computer science courses there would obviously be more demand for computer science teachers. I seriously believe that if we had a required first computer science course in more high schools we would soon develop a lot of student (and parent) demand for more and more advanced computer science courses. This would be wonderful!
It’s a hard row to hoe though as many people who control policy don’t understand the importance of computer science. Can we get Computing into the Common Core? Only if we work hard at it. And by “we” I mean teachers, industry, parents and yes even students. In the mean time forward thinking schools (administrators, teachers, school boards) are going to give some students a big edge into the future if they start creating required courses in computer science and building up real sustainable computer science curricula that attracts and educates students to Be What’s Next!