Start by having students transpose code from one loop type to the other when teaching all the different conditionals for the AP CS A exam.
Tie the importance of searching and sorting to internet search engines, then encourage students to create search mechanisms for data they want to analyze.
Because high-school students are interested in driving, transportation is a great model for introducing class hierarchies and interfaces.
Teach ArrayLists for the AP CS A exam by having students uncover interesting information from your past students’ grades.
Have students reason about optimization by creating a program that’ll make an 80 minute playlist for a party.
Introduce memory and efficiency a few months into the AP CS course. Do so in a hands-on way by demonstrating how a computer cannot compute a slow problem.
Use Class Responsibility Collaboration (CRC) cards to consistently introduce ideas like objects throughout an AP CS course.