Organize a game in which students in a circle need to obtain their assigned item by passing the items between empty-handed neighbors to interactively demonstrate deadlock. Share Organize a game in which students in a circle need to obtain their assigned item by passing the items between empty-handed neighbors to interactively demonstrate deadlock. with FacebookShare Organize a game in which students in a circle need to obtain their assigned item by passing the items between empty-handed neighbors to interactively demonstrate deadlock. with Twitter

Use physical activities to demonstrate sorting algorithms and help students build intuition about how these algorithms work. Share Use physical activities to demonstrate sorting algorithms and help students build intuition about how these algorithms work. with FacebookShare Use physical activities to demonstrate sorting algorithms and help students build intuition about how these algorithms work. with Twitter

Have students act as elements walking through a network to sort themselves to teach students about how Sorting Networks function. Share Have students act as elements walking through a network to sort themselves to teach students about how Sorting Networks function. with FacebookShare Have students act as elements walking through a network to sort themselves to teach students about how Sorting Networks function. with Twitter

Misconception: Students believe that in a primitive assignment, x = y could be the equivalent of y = x; they think that the computer science “=” sign is the same as the mathematical “=” sign. Share Misconception: Students believe that in a primitive assignment, x = y could be the equivalent of y = x; they think that the computer science “=” sign is the same as the mathematical “=” sign. with FacebookShare Misconception: Students believe that in a primitive assignment, x = y could be the equivalent of y = x; they think that the computer science “=” sign is the same as the mathematical “=” sign. with Twitter

Misconception: Students think that both the IF and the ELSE cases of a conditional are executed every single time a conditional runs. Share Misconception: Students think that both the IF and the ELSE cases of a conditional are executed every single time a conditional runs. with FacebookShare Misconception: Students think that both the IF and the ELSE cases of a conditional are executed every single time a conditional runs. with Twitter

Misconception: Students believe that a method can only be called once on a given object. Share Misconception: Students believe that a method can only be called once on a given object. with FacebookShare Misconception: Students believe that a method can only be called once on a given object. with Twitter

Trace through example code in class to show and encourage students to debug effectively Share Trace through example code in class to show and encourage students to debug effectively with FacebookShare Trace through example code in class to show and encourage students to debug effectively with Twitter

Misconception: Students think that two different variables cannot refer to the same object. Share Misconception: Students think that two different variables cannot refer to the same object. with FacebookShare Misconception: Students think that two different variables cannot refer to the same object. with Twitter

Misconception: Students believe that boolean values can only be used in conditionals. Share Misconception: Students believe that boolean values can only be used in conditionals. with FacebookShare Misconception: Students believe that boolean values can only be used in conditionals. with Twitter

Have students play the Gidget debugging game for practice debugging in an engaging environment. Share Have students play the Gidget debugging game for practice debugging in an engaging environment. with FacebookShare Have students play the Gidget debugging game for practice debugging in an engaging environment. with Twitter

Use the model of Towers of Hanoi in order to help students understand recursion. To demonstrate Towers of Hanoi, use three baby ring-stacking toys and the programming language Alice. Share Use the model of Towers of Hanoi in order to help students understand recursion. To demonstrate Towers of Hanoi, use three baby ring-stacking toys and the programming language Alice. with FacebookShare Use the model of Towers of Hanoi in order to help students understand recursion. To demonstrate Towers of Hanoi, use three baby ring-stacking toys and the programming language Alice. with Twitter

Show students examples of infinite loops in Alice using Do-together and Do-in-order blocks with the goal of furthering students’ understanding and recognition of for loops. Share Show students examples of infinite loops in Alice using Do-together and Do-in-order blocks with the goal of furthering students’ understanding and recognition of for loops. with FacebookShare Show students examples of infinite loops in Alice using Do-together and Do-in-order blocks with the goal of furthering students’ understanding and recognition of for loops. with Twitter

Organize an activity where students make phone calls to their classmates with the goal of summing the numbers 1 through 6 in order to demonstrate recursion. Share Organize an activity where students make phone calls to their classmates with the goal of summing the numbers 1 through 6 in order to demonstrate recursion. with FacebookShare Organize an activity where students make phone calls to their classmates with the goal of summing the numbers 1 through 6 in order to demonstrate recursion. with Twitter

Use SRec, a recursion visualization tool, in your introductory Java courses to help students conceptualize the recursive algorithms they write. Share Use SRec, a recursion visualization tool, in your introductory Java courses to help students conceptualize the recursive algorithms they write. with FacebookShare Use SRec, a recursion visualization tool, in your introductory Java courses to help students conceptualize the recursive algorithms they write. with Twitter

Have students draw a scalable smiley face through programming to motivate the importance of using variables. Share Have students draw a scalable smiley face through programming to motivate the importance of using variables. with FacebookShare Have students draw a scalable smiley face through programming to motivate the importance of using variables. with Twitter

Have students translate between Java Array and ArrayList to highlight the differences between the two. Share Have students translate between Java Array and ArrayList to highlight the differences between the two. with FacebookShare Have students translate between Java Array and ArrayList to highlight the differences between the two. with Twitter

Use different methods of counting the stairs of the Eiffel Tower to explain how different algorithms affect Big-O runtime. Share Use different methods of counting the stairs of the Eiffel Tower to explain how different algorithms affect Big-O runtime. with FacebookShare Use different methods of counting the stairs of the Eiffel Tower to explain how different algorithms affect Big-O runtime. with Twitter

Introduce Big-O using iteration rather than recursion to make this important concept easier for students to understand. Share Introduce Big-O using iteration rather than recursion to make this important concept easier for students to understand. with FacebookShare Introduce Big-O using iteration rather than recursion to make this important concept easier for students to understand. with Twitter

Assign content as homework that students can learn from reading (like FOR loop syntax) so you can spend class time on more difficult topics where teacher guidance is the most needed (like what code goes inside of a loop). Share Assign content as homework that students can learn from reading (like FOR loop syntax) so you can spend class time on more difficult topics where teacher guidance is the most needed (like what code goes inside of a loop). with FacebookShare Assign content as homework that students can learn from reading (like FOR loop syntax) so you can spend class time on more difficult topics where teacher guidance is the most needed (like what code goes inside of a loop). with Twitter

Misconception: When students use the division operator during declaration or assignment of a Double in Java, like double x = a/b, they forget about integer division, which can result in rounding errors. Share Misconception: When students use the division operator during declaration or assignment of a Double in Java, like double x = a/b, they forget about integer division, which can result in rounding errors. with FacebookShare Misconception: When students use the division operator during declaration or assignment of a Double in Java, like double x = a/b, they forget about integer division, which can result in rounding errors. with Twitter