Teaching Computer Science
Teach programming well: diagnose novice misconceptions, use PRIMM, pair programming and Parsons problems, plan standards-aligned units, assess code fairly and navigate teacher certification.
Leads to: Computer Science Teacher
Before you start
This course builds on Instructional Design & How People Learn, Data Structures & Algorithms and JavaScript Essentials. Take them first if you are new to the topic.
About this course
This course is for people who want to teach computer science in middle school, high school, college or community settings. The first module covers CS pedagogy: the misconceptions novices really have about variables, loops and functions, structured approaches such as PRIMM and pair programming, and Parsons problems and worked examples that reduce overload for beginners. The second module turns that into curriculum: reading the CSTA standards and the AP Computer Science courses, planning a two-week unit around a project, and assessing code with autograded tests plus human feedback. The third module is about the classroom itself: inclusive and culturally responsive practice, setting up a class on a free platform, and an honest map of the qualifications you need. Teaching in a K-12 public school in the United States normally requires a bachelor's degree and a state teaching licence or computer science endorsement, and requirements vary by state; teaching at college level usually requires a master's or doctorate. The course links to official sources (CSTA, the College Board and state education departments) instead of copying rules that change.
Course content
Module 1
CS Pedagogy
3 lessons · 1h 44mDiagnose common novice misconceptions, plan lessons with PRIMM and pair programming, and use Parsons problems and worked examples.
- 20mCommon novice misconceptionsReading
Recognise the most common novice programming misconceptions and diagnose them from a student's code.
- 50mPRIMM and pair programmingReading
Plan a PRIMM lesson and run structured pair programming with clear roles.
- 34mParsons problems and worked examplesReading
Use worked examples, subgoal labels and Parsons problems to reduce cognitive load for novice programmers.
Module 2
Curriculum and Standards
3 lessons · 1h 36mMap units to the CSTA standards and AP Computer Science courses, plan a two-week project unit, and assess code with autograded tests and feedback.
- 20mCSTA standards and AP CSReading
Read the CSTA PK-12 standards and the AP Computer Science courses, and map a unit to them.
- 42mPlanning a unitReading
Plan a two-week CS unit backwards from a project, with lessons, checkpoints and differentiation.
- 34mAssessing codeReading
Assess programming work fairly with autograded tests, rubrics and useful feedback.
Module 3
Classroom Practice
3 lessons · 1h 51mBuild an inclusive CS classroom, set up a class on a free platform, and map the degree and certification routes for where you want to teach.
- 19mInclusive CS classroomsReading
Apply culturally responsive and inclusive practices so every student can belong and succeed in computing.
- 42mClassroom toolsReading
Choose free classroom platforms and set up a class section safely and practically.
- 50mTeaching licensure and degreesReading
Map the degree and certification routes to teaching computer science in K-12 or college in your state or country.