Misconception: Students have trouble understanding that when the value of a variable is reassigned its previous value is irrelevant. Share Misconception: Students have trouble understanding that when the value of a variable is reassigned its previous value is irrelevant. with FacebookShare Misconception: Students have trouble understanding that when the value of a variable is reassigned its previous value is irrelevant. with Twitter
Misconception: Students often have off by 1 errors when working with loops, which can result from mixing up > and >= as well as forgetting that arrays start at index 0. Share Misconception: Students often have off by 1 errors when working with loops, which can result from mixing up > and >= as well as forgetting that arrays start at index 0. with FacebookShare Misconception: Students often have off by 1 errors when working with loops, which can result from mixing up > and >= as well as forgetting that arrays start at index 0. with Twitter
Show students examples of unreachable code to help them reason about how conditionals are executed. Share Show students examples of unreachable code to help them reason about how conditionals are executed. with FacebookShare Show students examples of unreachable code to help them reason about how conditionals are executed. with Twitter
As a debugging technique, have students write out their programs in their spoken language and compare their description to the code in order to find bugs. Share As a debugging technique, have students write out their programs in their spoken language and compare their description to the code in order to find bugs. with FacebookShare As a debugging technique, have students write out their programs in their spoken language and compare their description to the code in order to find bugs. with Twitter
Have students break their code into smaller pieces to find out where the bug might be. Share Have students break their code into smaller pieces to find out where the bug might be. with FacebookShare Have students break their code into smaller pieces to find out where the bug might be. with Twitter
Have students keep a “bug collection” in a journal so they can more easily recognize and eliminate bugs in the future. Share Have students keep a “bug collection” in a journal so they can more easily recognize and eliminate bugs in the future. with FacebookShare Have students keep a “bug collection” in a journal so they can more easily recognize and eliminate bugs in the future. with Twitter
Have students follow the 3-Steps Method to simplify the task of designing a deterministic finite automaton in order to further develop their problem solving skills. Share Have students follow the 3-Steps Method to simplify the task of designing a deterministic finite automaton in order to further develop their problem solving skills. with FacebookShare Have students follow the 3-Steps Method to simplify the task of designing a deterministic finite automaton in order to further develop their problem solving skills. with Twitter
Have students create a game of Tetris in Java to work on object-oriented programming and decomposing complex programs. Share Have students create a game of Tetris in Java to work on object-oriented programming and decomposing complex programs. with FacebookShare Have students create a game of Tetris in Java to work on object-oriented programming and decomposing complex programs. with Twitter
Run a pair programming contest in Python to motivate, challenge, and boost students’ self-confidence. Share Run a pair programming contest in Python to motivate, challenge, and boost students’ self-confidence. with FacebookShare Run a pair programming contest in Python to motivate, challenge, and boost students’ self-confidence. with Twitter
Have students write many small, simple classes in Java to scaffold their learning of the basics of object-oriented programming. Share Have students write many small, simple classes in Java to scaffold their learning of the basics of object-oriented programming. with FacebookShare Have students write many small, simple classes in Java to scaffold their learning of the basics of object-oriented programming. with Twitter
Have students create a Burrito class in Java to practice object-oriented programming using an object they are familiar with. Share Have students create a Burrito class in Java to practice object-oriented programming using an object they are familiar with. with FacebookShare Have students create a Burrito class in Java to practice object-oriented programming using an object they are familiar with. with Twitter
Have students write a program that constructs an n x n Magic Square in Java so they gain practice working with bounds in 2D arrays. Share Have students write a program that constructs an n x n Magic Square in Java so they gain practice working with bounds in 2D arrays. with FacebookShare Have students write a program that constructs an n x n Magic Square in Java so they gain practice working with bounds in 2D arrays. with Twitter
Misconception: Students don’t understand that the right side of an assignment statement is executed before the assignment. They think that variables store unresolved equations. Share Misconception: Students don’t understand that the right side of an assignment statement is executed before the assignment. They think that variables store unresolved equations. with FacebookShare Misconception: Students don’t understand that the right side of an assignment statement is executed before the assignment. They think that variables store unresolved equations. with Twitter
Use constructive and well-formed examples, like Quicksort, to teach recursion so that students have a strong model for building their own solutions. Share Use constructive and well-formed examples, like Quicksort, to teach recursion so that students have a strong model for building their own solutions. with FacebookShare Use constructive and well-formed examples, like Quicksort, to teach recursion so that students have a strong model for building their own solutions. with Twitter
Misconception: Students confuse static and final variables in Java. Share Misconception: Students confuse static and final variables in Java. with FacebookShare Misconception: Students confuse static and final variables in Java. with Twitter
Use LightBot, Picobot, and Manufactoria as introductory exercises to figure out what types of problems might arise in the classroom. Share Use LightBot, Picobot, and Manufactoria as introductory exercises to figure out what types of problems might arise in the classroom. with FacebookShare Use LightBot, Picobot, and Manufactoria as introductory exercises to figure out what types of problems might arise in the classroom. with Twitter
Have students think about a reference to an object as a numeric memory address to help them understand how passing references works. Share Have students think about a reference to an object as a numeric memory address to help them understand how passing references works. with FacebookShare Have students think about a reference to an object as a numeric memory address to help them understand how passing references works. with Twitter
Demonstrate manipulating primitives with operators before manipulating them with methods so students can understand the basics of primitives before using them in a more complicated way. Share Demonstrate manipulating primitives with operators before manipulating them with methods so students can understand the basics of primitives before using them in a more complicated way. with FacebookShare Demonstrate manipulating primitives with operators before manipulating them with methods so students can understand the basics of primitives before using them in a more complicated way. with Twitter
Misconception: Students think that arrays start at 1 instead of 0. Share Misconception: Students think that arrays start at 1 instead of 0. with FacebookShare Misconception: Students think that arrays start at 1 instead of 0. with Twitter
Send students on an online scavenger hunt to find pieces of information on the internet so they learn different ways of retrieving data. Share Send students on an online scavenger hunt to find pieces of information on the internet so they learn different ways of retrieving data. with FacebookShare Send students on an online scavenger hunt to find pieces of information on the internet so they learn different ways of retrieving data. with Twitter