Give students an accurate sense of their own understanding by requiring them to revise and elaborate answers or work that are nearly—but not entirely—correct.
When talking through your thought process with students, check in with them to ensure they’re following along, adapt to their needs, and show that you care.
Introduce a new concept by having students modify existing, well-defined programs before writing programs from scratch.
When advertising your course, make it clear that any students “willing to do the work” are “wanted in the course,” and use titles like “Be a software engineer” or “Be an innovator” for your course or course modules.
Take extra time to encourage beginner students to learn more about CS, by (1) promoting AP CS and (2) using a final project for students already taking AP CS
Emphasize that students’ personal interest in CS is more important than just getting good grades in CS classes for determining their success in CS.
Even if students are developing useful strategies for problem solving, they can be easily discouraged if they don’t see immediate, good results.
Tell students that a lower grade can be better than a higher one when you are developing better learning and study habits.