I’m volunteering a couple mornings a week at a local high school, helping out with computer science classes.
It’s a mixed class . . . most of the students are taking AP Computer Science Principles, and about 10 kids just recently started a second-semester Visual Basic class.
The VB kids were pretty inquisitive at first but started to get discouraged . . . in my opinion because of the way the material is presented to them via an online curriculum.
The current approach to teaching computer science in American schools, because of the shortage of (I almost said “lack of”) qualified teachers is to use packaged courses delivered to students online.
My observation is students assume that because they’ve been put in front of a computer full of lessons, they’re expected to be able to read and understand the material and complete the assignments on their own with no help.
This is a fatal misconception. The material is too difficult for most people who are not already programmers, so the kids decide pretty quickly that they just don’t have what it takes to learn the stuff.
“Tragedy” is probably too strong a word for what is happening in computer science education, but programming is what I do, I think programming and computational thinking are important and valuable skills, and it makes me sad to see them taught in a way that crushes students’ enthusiasm.
Brief digression: I take piano lessons. My teacher is a musician, a pianist. Music is part of her life, it’s part of who she is, part of how she thinks. How could someone who’s not a musician teach music?
How can someone who’s not a programmer teach computer science?
Because of everything I’ve said above, along with offering technical assistance, I try to encourage kids to stay engaged . . .
“I’m going to tell you a story,” I said this morning. “First I’ll tell you the moral of the story, then I’ll tell you the story. The moral is: When you need help, ask for help.
“That may seem obvious but I feel like some of you are thinking that you should be working through online lessons with a lot of independence.
“I worked with a class a couple years ago at another school. One of the students there was very quiet but she always asked for help when she needed help. She asked quietly, but she asked.
“And when I gave her an answer, she almost always asked ‘why?’ I don’t mean ‘why why why’ like a 5-year-old, but if she didn’t understand why something was important or why you’d want to do something one way and not another way, she asked why.
“It’s a good question because if the only reason for doing something is because I said to do it, what is she going to do if I’m not there?
“What happened to this girl? She’s now a computer science major at UC Santa Barbara. She was able to do that because she didn’t give up on herself when she didn’t understand something and because, even though she wasn’t the most naturally outgoing person she decided to own her own results and use the resources that were available.”
“You’ve got to own it, kids. When you need help, ask for help. Don’t give up on yourself.”
Thus spoke The Programmer.