DEV Community

Discussion on: What are the skills that a public school Computer Science teacher should possess?

Collapse
 
codeforcashbook profile image
Zack Burt

I sent this to my high school computer science teacher, Josh Paley, and he sent this:

There is a big difference between teaching CS and being a professional programmer. There is also a difference between teaching CS at the high school level and teaching it at the university level. Some issues include:

  • Bottom line: The job of the high school CS teacher is all about getting students to learn big ideas and to generate enthusiasm.

  • A fun classroom environment cures many ills. (I don't think any of the commenters addressed that.)

  • Building relationships with students so they like the teacher is enormous at the high school level. If they like you at least a little bit, odds are they will try hard. (This can be more difficult to do with larger class sizes.)

  • Minimize take-home homework. Students can do plenty in class.

  • Things like testing and debugging methodologies are critically important to learn, but I worry that they are a fantastic way to get high school students to fall asleep. There is no reason that I can see for such things to be dwelled upon in detail in high school. Much better to delegate that to the university level or industry.

  • There is a difference between choosing a language for learning purposes and choosing a language for professional work. Teachers need the former. What are the big ideas that high school students should be taught? What barriers are there to learning big ideas?

After all these years, we still use Scheme for a first language at Gunn. Given the feedback I've received, I wouldn't change that at all.

Regards,

Josh

PS: We now have about 330 students taking CS classes and next week there will be a presentation to the PAUSD Board to make CS mandatory for graduation. Times have changed. :-)