Take the time to encourage girls and students of color and tell them that academic abilities can expand and improve, as they often internalize cultural expectations that they have little innate CS ability. Share Take the time to encourage girls and students of color and tell them that academic abilities can expand and improve, as they often internalize cultural expectations that they have little innate CS ability. with FacebookShare Take the time to encourage girls and students of color and tell them that academic abilities can expand and improve, as they often internalize cultural expectations that they have little innate CS ability. with Twitter
Encourage students by reminding them that they can become great at computer science through hard work, even if they’ve gotten a 1 or a score lower than they’re comfortable with on the AP test, or if they are not currently a star student. Share Encourage students by reminding them that they can become great at computer science through hard work, even if they’ve gotten a 1 or a score lower than they’re comfortable with on the AP test, or if they are not currently a star student. with FacebookShare Encourage students by reminding them that they can become great at computer science through hard work, even if they’ve gotten a 1 or a score lower than they’re comfortable with on the AP test, or if they are not currently a star student. with Twitter
Before moving onto arrays, make sure students feel really confident about loops. Share Before moving onto arrays, make sure students feel really confident about loops. with FacebookShare Before moving onto arrays, make sure students feel really confident about loops. with Twitter
Introduce “base-case” and “smaller-caller” as a helpful way for students to remember the different parts of recursion. Share Introduce “base-case” and “smaller-caller” as a helpful way for students to remember the different parts of recursion. with FacebookShare Introduce “base-case” and “smaller-caller” as a helpful way for students to remember the different parts of recursion. with Twitter
When tracing through code in Java, use different colors for code that is executed in a main method versus in a class method. Share When tracing through code in Java, use different colors for code that is executed in a main method versus in a class method. with FacebookShare When tracing through code in Java, use different colors for code that is executed in a main method versus in a class method. with Twitter
When you write a function, like (foo x), students don’t realize you can put a variable with a name OTHER than x in there, or an actual number. Share When you write a function, like (foo x), students don’t realize you can put a variable with a name OTHER than x in there, or an actual number. with FacebookShare When you write a function, like (foo x), students don’t realize you can put a variable with a name OTHER than x in there, or an actual number. with Twitter
Have students write end-of-unit reflections to review material, monitor their learning, and integrate writing into your CS course. Share Have students write end-of-unit reflections to review material, monitor their learning, and integrate writing into your CS course. with FacebookShare Have students write end-of-unit reflections to review material, monitor their learning, and integrate writing into your CS course. with Twitter
If students are expected to compile portfolios of their work, make sure to begin this process early in the course. Share If students are expected to compile portfolios of their work, make sure to begin this process early in the course. with FacebookShare If students are expected to compile portfolios of their work, make sure to begin this process early in the course. with Twitter
To avoid frustrating students, give them definitions of common terms and ways of fixing common error messages in advance. Share To avoid frustrating students, give them definitions of common terms and ways of fixing common error messages in advance. with FacebookShare To avoid frustrating students, give them definitions of common terms and ways of fixing common error messages in advance. with Twitter
Remind students how important creating proposals and design documents is for efficiently writing good code in less time. Share Remind students how important creating proposals and design documents is for efficiently writing good code in less time. with FacebookShare Remind students how important creating proposals and design documents is for efficiently writing good code in less time. with Twitter
Demonstrate swapping variables' values by swapping the contents of two cups full of liquid; you need a third cup to swap the liquids just like you need a third, temporary, variable to swap the values. Share Demonstrate swapping variables' values by swapping the contents of two cups full of liquid; you need a third cup to swap the liquids just like you need a third, temporary, variable to swap the values. with FacebookShare Demonstrate swapping variables' values by swapping the contents of two cups full of liquid; you need a third cup to swap the liquids just like you need a third, temporary, variable to swap the values. with Twitter
DrJava, the Java interpreter, gives students an interactive environment to practice testing strategies in. Share DrJava, the Java interpreter, gives students an interactive environment to practice testing strategies in. with FacebookShare DrJava, the Java interpreter, gives students an interactive environment to practice testing strategies in. with Twitter
Use examples that have nothing to do with computers to introduce new CS concepts in an accessible way. Share Use examples that have nothing to do with computers to introduce new CS concepts in an accessible way. with FacebookShare Use examples that have nothing to do with computers to introduce new CS concepts in an accessible way. with Twitter
To integrate CS with other disciplines, have students write algorithms for activities they’re already doing for other classes. Share To integrate CS with other disciplines, have students write algorithms for activities they’re already doing for other classes. with FacebookShare To integrate CS with other disciplines, have students write algorithms for activities they’re already doing for other classes. with Twitter
Have some students pretend to be robots while other students program them to complete simple tasks to practice debugging and to emphasize the importance of coding precisely. Share Have some students pretend to be robots while other students program them to complete simple tasks to practice debugging and to emphasize the importance of coding precisely. with FacebookShare Have some students pretend to be robots while other students program them to complete simple tasks to practice debugging and to emphasize the importance of coding precisely. with Twitter
When learning in a playful context, students are less likely to be frustrated by difficulty or failure. Share When learning in a playful context, students are less likely to be frustrated by difficulty or failure. with FacebookShare When learning in a playful context, students are less likely to be frustrated by difficulty or failure. with Twitter
Give students, especially younger kids, “movement breaks” so that they don’t have to sit still and stare at a computer for too long. Share Give students, especially younger kids, “movement breaks” so that they don’t have to sit still and stare at a computer for too long. with FacebookShare Give students, especially younger kids, “movement breaks” so that they don’t have to sit still and stare at a computer for too long. with Twitter
Create environments for beginning students where the prospect of making a mistake is not intimidating. That way, they’re less likely to get discouraged. Share Create environments for beginning students where the prospect of making a mistake is not intimidating. That way, they’re less likely to get discouraged. with FacebookShare Create environments for beginning students where the prospect of making a mistake is not intimidating. That way, they’re less likely to get discouraged. with Twitter
Remind students that it’s better for time management and project outcomes to get code reviewed after each small change is made. Share Remind students that it’s better for time management and project outcomes to get code reviewed after each small change is made. with FacebookShare Remind students that it’s better for time management and project outcomes to get code reviewed after each small change is made. with Twitter
Have a prepared response for questions you don’t know the answer to, that way students don’t perceive their teachers as the only, or an infallible, source of knowledge. Share Have a prepared response for questions you don’t know the answer to, that way students don’t perceive their teachers as the only, or an infallible, source of knowledge. with FacebookShare Have a prepared response for questions you don’t know the answer to, that way students don’t perceive their teachers as the only, or an infallible, source of knowledge. with Twitter