Thursday, December 17, 2020

Musings on the Goals of High School Computer Science Education

Recent conversations on Twitter and Facebook have had me thinking about the goals of teaching computer science in high school. There is no single goal and it probably varies some by teacher, school, and student population. My goals were basically:

  • Give students a basic understanding of computing and computer science to better understand the world around them
  • Create an interest in computer science so students are willing to learn more.
  • Create in students the idea that they can “do computer science.”

I would rather not prioritize them. I think I did a pretty good job with the first goal. That’s probably the easy one though. But it is pretty important. Helping students better understand the world around them is at the heart of a lot of education. We don’t expect every student to be a novelist, a biologist, a chemist or a professional mathematician. So we are not (usually) expecting HS CS students to become professional programmers.

The second listed goal is pretty hard to measure objectively. I hope I made my classes interesting and the subject itself interesting. A number of students did go one to major or minor in CS so there is that. I hope I didn’t turn too many off.

The last listed goal is also hard to judge objectively but it’s really important. People don’t continue to invest time if they don’t thing they can succeed. Any one can learn computer science. Anyone can learn to program. Some may have to work harder at it than others and some will find it more interesting than others. Student have to know that they can do it if they choose to try.

If students choose to study more CS I want them to have a solid base to build on. I think that is a given. Right? Unless I succeed at the three listed goals above there is not much point in anything else though. So I made the course rigorous and I try to teach the concepts and ideas and good habits that I learned over the decades. I do it with a goal of building success, interest, and understanding of computers in the world today. I’m not just trying to teach the computer science nerds, no matter how much I love then, but all of the students in my class.

1 comment:

Anonymous said...

Great summary. I agree with all these. Thanks for posting.