While Kodu would be great for programming classrooms, it can also be used by teachers of any subject interested in cultivating 21st-century literacy skills and using game-based learning approaches. Think of Kodu less as a way to teach programming and more as a tool to demonstrate content knowledge. Students can work in project teams to design and develop games inspired by something covered in class or games that teach content to other students.
As easy as Kodu makes things, however, it's still possibly a bit too obtuse for the uninitiated who might begin more successfully with something 2D, like Scratch or Hopscotch. But once students get the hang of it, and add in more objects and actions, they'll be building 3D games that are sure to get them excited and engaged in a way other platforms can't match.Continue reading Show less
Kodu Game Lab is a tool for making 3D video games without all the toil and complexity of real coding. Kodu's visual menus let students act as game designers, pointing and clicking to create objects (and worlds) and defining their behaviors in the game through visual, Lego-like "if this, then that" statements. When finished, students can share their worlds and games online for others to play.
Kodu provides some tutorials and a curriculum, which includes basic introductory lessons to the platform as well as math-focused lessons where kids learn core concepts like area and probability while making games. The user community also has created many other tutorials and guides for various subjects.
When teaching programming, it can be hard to keep students engaged, since it takes a long time before they can code anything interesting. Kodu tries to avoid boredom and frustration by letting new programmers do the fun stuff first -- building a colorful 3D world, and adding characters and objects, only takes minutes. Once the world is in place, the real work begins as students add programmatic behaviors using a simple “if this, then that” visual language rather than writing actual code.
As an introduction to programming, Kodu does a great job of showing how designing a game (or other piece of software) requires breaking the problem down into individual parts. The colorful block-based code encourages discovery-based learning by toying with a core foundation of computer science: procedural logic.
Key Standards Supported
Define a simple design problem reflecting a need or a want that includes specified criteria for success and constraints on materials, time, or cost.
Generate and compare multiple possible solutions to a problem based on how well each is likely to meet the criteria and constraints of the problem.
Plan and carry out fair tests in which variables are controlled and failure points are considered to identify aspects of a model or prototype that can be improved.
Design a solution to a complex real-world problem by breaking it down into smaller, more manageable problems that can be solved through engineering.
Use a computer simulation to model the impact of proposed solutions to a complex real-world problem with numerous criteria and constraints on interactions within and between systems relevant to the problem.
Define the criteria and constraints of a design problem with sufficient precision to ensure a successful solution, taking into account relevant scientific principles and potential impacts on people and the natural environment that may limit possible solutions.
Evaluate competing design solutions using a systematic process to determine how well they meet the criteria and constraints of the problem.
Analyze data from tests to determine similarities and differences among several design solutions to identify the best characteristics of each that can be combined into a new solution to better meet the criteria for success.
Develop a model to generate data for iterative testing and modification of a proposed object, tool, or process such that an optimal design can be achieved.