Use Class Responsibility Collaboration (CRC) cards to consistently introduce ideas like objects throughout an AP CS course. Share Use Class Responsibility Collaboration (CRC) cards to consistently introduce ideas like objects throughout an AP CS course. with FacebookShare Use Class Responsibility Collaboration (CRC) cards to consistently introduce ideas like objects throughout an AP CS course. with Twitter
Teach nested loops using ASCII art, building from triangles to diamonds through iteration. Share Teach nested loops using ASCII art, building from triangles to diamonds through iteration. with FacebookShare Teach nested loops using ASCII art, building from triangles to diamonds through iteration. with Twitter
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. Share 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. with FacebookShare 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. with Twitter
Have students reason about optimization by creating a program that’ll make an 80 minute playlist for a party. Share Have students reason about optimization by creating a program that’ll make an 80 minute playlist for a party. with FacebookShare Have students reason about optimization by creating a program that’ll make an 80 minute playlist for a party. with Twitter
When teaching arrays, have students complete the Four Rotations problems in pairs. Share When teaching arrays, have students complete the Four Rotations problems in pairs. with FacebookShare When teaching arrays, have students complete the Four Rotations problems in pairs. with Twitter
Remind students that all programmers make mistakes—constructive criticism isn’t personal. Share Remind students that all programmers make mistakes—constructive criticism isn’t personal. with FacebookShare Remind students that all programmers make mistakes—constructive criticism isn’t personal. with Twitter
Teach ArrayLists for the AP CS A exam by having students uncover interesting information from your past students’ grades. Share Teach ArrayLists for the AP CS A exam by having students uncover interesting information from your past students’ grades. with FacebookShare Teach ArrayLists for the AP CS A exam by having students uncover interesting information from your past students’ grades. with Twitter
Because high-school students are interested in driving, transportation is a great model for introducing class hierarchies and interfaces. Share Because high-school students are interested in driving, transportation is a great model for introducing class hierarchies and interfaces. with FacebookShare Because high-school students are interested in driving, transportation is a great model for introducing class hierarchies and interfaces. with Twitter
Tie the importance of searching and sorting to internet search engines, then encourage students to create search mechanisms for data they want to analyze. Share Tie the importance of searching and sorting to internet search engines, then encourage students to create search mechanisms for data they want to analyze. with FacebookShare Tie the importance of searching and sorting to internet search engines, then encourage students to create search mechanisms for data they want to analyze. with Twitter
Create engrossing assignments by taking into account the age groups and interests of your students! Share Create engrossing assignments by taking into account the age groups and interests of your students! with FacebookShare Create engrossing assignments by taking into account the age groups and interests of your students! with Twitter
Build a paper airplane instead of the PB&J exercise for a less messy, more extensible algorithms introduction activity. Share Build a paper airplane instead of the PB&J exercise for a less messy, more extensible algorithms introduction activity. with FacebookShare Build a paper airplane instead of the PB&J exercise for a less messy, more extensible algorithms introduction activity. with Twitter
Teach hierarchical task analysis using Requirement Cards to sort through 100 requirements engineers have created for a robot cleaning up a nuclear disaster. Share Teach hierarchical task analysis using Requirement Cards to sort through 100 requirements engineers have created for a robot cleaning up a nuclear disaster. with FacebookShare Teach hierarchical task analysis using Requirement Cards to sort through 100 requirements engineers have created for a robot cleaning up a nuclear disaster. with Twitter
When preparing students for industry jobs, create chaos in team projects so they can learn to handle the environment. Share When preparing students for industry jobs, create chaos in team projects so they can learn to handle the environment. with FacebookShare When preparing students for industry jobs, create chaos in team projects so they can learn to handle the environment. with Twitter
When introducing version control, set students up for failure to facilitate group discussions; it’s crucial that students develop good modes of communicating. Share When introducing version control, set students up for failure to facilitate group discussions; it’s crucial that students develop good modes of communicating. with FacebookShare When introducing version control, set students up for failure to facilitate group discussions; it’s crucial that students develop good modes of communicating. with Twitter
Standard tutorials have too much information to be appropriate in introductory courses; try using excerpts from them or creating your own. Share Standard tutorials have too much information to be appropriate in introductory courses; try using excerpts from them or creating your own. with FacebookShare Standard tutorials have too much information to be appropriate in introductory courses; try using excerpts from them or creating your own. with Twitter
Make sure screenshots use the same Operating System (and version) as the environments your students are working in so you don’t overwhelm them. Share Make sure screenshots use the same Operating System (and version) as the environments your students are working in so you don’t overwhelm them. with FacebookShare Make sure screenshots use the same Operating System (and version) as the environments your students are working in so you don’t overwhelm them. with Twitter
Use http://flukeout.github.io/ to introduce CSS selectors in an engaging and interactive way. Share Use http://flukeout.github.io/ to introduce CSS selectors in an engaging and interactive way. with FacebookShare Use http://flukeout.github.io/ to introduce CSS selectors in an engaging and interactive way. with Twitter
Gamify Command-line learning through Terminus, a text-based adventure game. Share Gamify Command-line learning through Terminus, a text-based adventure game. with FacebookShare Gamify Command-line learning through Terminus, a text-based adventure game. with Twitter
Gamifying things can be super useful, but beware of over-gamifying! Share Gamifying things can be super useful, but beware of over-gamifying! with FacebookShare Gamifying things can be super useful, but beware of over-gamifying! with Twitter
Walk students through the flow of information once you hit submit on a website to build fluency with web development. Share Walk students through the flow of information once you hit submit on a website to build fluency with web development. with FacebookShare Walk students through the flow of information once you hit submit on a website to build fluency with web development. with Twitter