Have students design a game of Asteroid in Java to introduce developing an object and class hierarchy. Share Have students design a game of Asteroid in Java to introduce developing an object and class hierarchy. with FacebookShare Have students design a game of Asteroid in Java to introduce developing an object and class hierarchy. with Twitter
Emphasize the importance of developing a consistent naming schema, especially for booleans, as a part of good style. Share Emphasize the importance of developing a consistent naming schema, especially for booleans, as a part of good style. with FacebookShare Emphasize the importance of developing a consistent naming schema, especially for booleans, as a part of good style. with Twitter
Introduce recursion using the example of opening a present wrapped in several layers of wrapping paper. Share Introduce recursion using the example of opening a present wrapped in several layers of wrapping paper. with FacebookShare Introduce recursion using the example of opening a present wrapped in several layers of wrapping paper. with Twitter
Compare classes in Java to the drawers of a file cabinet to model object oriented programming through an easy to recognize analogy. Share Compare classes in Java to the drawers of a file cabinet to model object oriented programming through an easy to recognize analogy. with FacebookShare Compare classes in Java to the drawers of a file cabinet to model object oriented programming through an easy to recognize analogy. with Twitter
Have students create a Python program that implements an automated authorship detection algorithm, which gives them an opportunity to practice working with strings, lists, and loops. Share Have students create a Python program that implements an automated authorship detection algorithm, which gives them an opportunity to practice working with strings, lists, and loops. with FacebookShare Have students create a Python program that implements an automated authorship detection algorithm, which gives them an opportunity to practice working with strings, lists, and loops. with Twitter
Have students use Python’s Turtle graphics to draw fractals using a Lindenmayer system, instead of recursion, to give students experience with string manipulation. Share Have students use Python’s Turtle graphics to draw fractals using a Lindenmayer system, instead of recursion, to give students experience with string manipulation. with FacebookShare Have students use Python’s Turtle graphics to draw fractals using a Lindenmayer system, instead of recursion, to give students experience with string manipulation. with Twitter
Have students implement a web-based driving game in JavaScript to pick up classmates, who appear as 2D avatars, within Google Earth and drop them off at their homes to show students that arrays and objects are applicable to real-world problems. Share Have students implement a web-based driving game in JavaScript to pick up classmates, who appear as 2D avatars, within Google Earth and drop them off at their homes to show students that arrays and objects are applicable to real-world problems. with FacebookShare Have students implement a web-based driving game in JavaScript to pick up classmates, who appear as 2D avatars, within Google Earth and drop them off at their homes to show students that arrays and objects are applicable to real-world problems. with Twitter
Have students design a program in Python that performs various sound-processing tasks to give them a fun way to practice using variables, assignments, if-statements, and functions. Share Have students design a program in Python that performs various sound-processing tasks to give them a fun way to practice using variables, assignments, if-statements, and functions. with FacebookShare Have students design a program in Python that performs various sound-processing tasks to give them a fun way to practice using variables, assignments, if-statements, and functions. with Twitter
Emphasize the importance of documentation when working with spreadsheets or any programming language for future reference. Share Emphasize the importance of documentation when working with spreadsheets or any programming language for future reference. with FacebookShare Emphasize the importance of documentation when working with spreadsheets or any programming language for future reference. with Twitter
Have students write a genetic algorithm in Java to solve instances of the Traveling Salesman Problem so that they can practice object-oriented programming and responsibility-driven design. Share Have students write a genetic algorithm in Java to solve instances of the Traveling Salesman Problem so that they can practice object-oriented programming and responsibility-driven design. with FacebookShare Have students write a genetic algorithm in Java to solve instances of the Traveling Salesman Problem so that they can practice object-oriented programming and responsibility-driven design. with Twitter
Have students design a Java program that detects plagiarism within a set of documents so that they gain practice designing and applying data structures in a relevant context. Share Have students design a Java program that detects plagiarism within a set of documents so that they gain practice designing and applying data structures in a relevant context. with FacebookShare Have students design a Java program that detects plagiarism within a set of documents so that they gain practice designing and applying data structures in a relevant context. with Twitter
Have students create a program in Python that draws a map of the stars in order to gain practice using dictionaries to manipulate real data. Share Have students create a program in Python that draws a map of the stars in order to gain practice using dictionaries to manipulate real data. with FacebookShare Have students create a program in Python that draws a map of the stars in order to gain practice using dictionaries to manipulate real data. with Twitter
As a final project, have students create a generic side-scrolling game in Java so they can creatively showcase their object-oriented programming abilities. Share As a final project, have students create a generic side-scrolling game in Java so they can creatively showcase their object-oriented programming abilities. with FacebookShare As a final project, have students create a generic side-scrolling game in Java so they can creatively showcase their object-oriented programming abilities. with Twitter
Have students implement simple filters on sound objects so they can parse strings of notes into recognizable melodies to get practice manipulating strings. Share Have students implement simple filters on sound objects so they can parse strings of notes into recognizable melodies to get practice manipulating strings. with FacebookShare Have students implement simple filters on sound objects so they can parse strings of notes into recognizable melodies to get practice manipulating strings. with Twitter
Ask student teams to design a controller for a coffee machine in Java to practice design modification. Share Ask student teams to design a controller for a coffee machine in Java to practice design modification. with FacebookShare Ask student teams to design a controller for a coffee machine in Java to practice design modification. with Twitter
Use Monopoly, explaining that the game is a class, to demonstrate Java classes and objects in a familiar and interactive way. Share Use Monopoly, explaining that the game is a class, to demonstrate Java classes and objects in a familiar and interactive way. with FacebookShare Use Monopoly, explaining that the game is a class, to demonstrate Java classes and objects in a familiar and interactive way. with Twitter
Challenge students to place the fewest number of ice cream vans on a map of a town while maximizing ice cream availability to introduce the brute-force method in an accessible way. Share Challenge students to place the fewest number of ice cream vans on a map of a town while maximizing ice cream availability to introduce the brute-force method in an accessible way. with FacebookShare Challenge students to place the fewest number of ice cream vans on a map of a town while maximizing ice cream availability to introduce the brute-force method in an accessible way. with Twitter
Have students color maps using the fewest number of colors while ensuring that bordering countries are different colors to expose them to optimization problems. Share Have students color maps using the fewest number of colors while ensuring that bordering countries are different colors to expose them to optimization problems. with FacebookShare Have students color maps using the fewest number of colors while ensuring that bordering countries are different colors to expose them to optimization problems. with Twitter
Have some students act as robots while their peers give them instructions to teach students how to interact with and think like machines. Share Have some students act as robots while their peers give them instructions to teach students how to interact with and think like machines. with FacebookShare Have some students act as robots while their peers give them instructions to teach students how to interact with and think like machines. with Twitter
Organize an activity in which one student gives other students precise instructions for how to draw a certain picture to teach students how a computer executes code. Share Organize an activity in which one student gives other students precise instructions for how to draw a certain picture to teach students how a computer executes code. with FacebookShare Organize an activity in which one student gives other students precise instructions for how to draw a certain picture to teach students how a computer executes code. with Twitter