Pedagogical Content Knowledge

Doing is not teaching and teaching is not doing. That's nice to say, but what does it mean?
Performing a skill and teaching a skill are related, they both involve the same skill. Beyond that shared connection, doing and teaching require different skill sets and background knowledge.
When performing a skill (ie. being a developer) you need to know the deep ins-and-outs of the technologies and workflows you encounter. Without this knowledge you won't be able to deliver and deliverables are the main objective.
When teaching a student to become a developer, you need to know how students understand the technologies and workflows you are trying to teach.Without knowing how your students understand a topic it's impossible to correct their understanding and set them on the right learning path. And learning is the main deliverable of teaching.
Understanding how your students understand is Pedagogical Content Knowledge. A simple way to start thinking about PCK is to ask these two simple questions:
  • If you were to complete the students' homework assignments, would you be able to intentionally make the same mistakes your students will make?
  • When you find a mistake in a student's assignment, are you able to infer how they understand the code to work?


See also: Misconceptions​