If you refer to sample people to explain concepts (such as Eve the Eavesdropper), select names and personas that are diverse in gender, race, and nationality or are gender-, race-, and nationality-neutral
Compare AND/OR gates to series and parallel circuits, respectively, to connect electrical engineering and computer programming.
Incorporate time in each lesson for students to deliberately practice concepts and puzzle out problems to ensure your students are effectively learning.
Have students create their own free & open-source software as a project to increase motivation and meet learning objectives.
Have parents and peers also encourage students’ interest in Computer Science and problem solving to help influence their pursuit of it.
Students tend to make assumptions about computer science based on the experiences they’ve already had with computers.
When designing CS courses for total novices, integrate activities based on students’ pre-existing interests to engage them.
Beginning students are used to viewing computers from a user’s perspective, and they subsequently have habits that may conflict with using the computer as a programmer.
Encourage new CS students to break away from the habit of using an interface to solve computer problems.
When designing early CS courses, use tools with familiar interfaces, like programs with drag and drop components.
Gradually increase the grading strictness about styling to help students become more meticulous about naming and documentation.
When students consider a function that produces incorrect outputs to be working, assign problems that provide clear on-screen feedback when a function is incorrect.
Have students experiment with technology they use in class to “test its accuracy and uncover its limitations.”
Have students summarize what they’ve learned in addition to answering quiz questions and solving small problems.