CodeCombat is an adventure game and curriculum that teaches kids coding fundamentals. Whether they're stuck in a dungeon surrounded by enemies or racing across a battlefield prepared to conquer a foe, CodeCombat puts players into the action. There are hundreds of levels throughout 11 courses including Computer Science 1-6, Game Development 1-3, and Web Development 1-2. Through a robust dashboard, teachers select courses and monitor progress, as well as access comprehensive curriculum guides, lesson plans, cheat sheets, and more. The AP CSP Curriculum & Professional Development Hub is designed to support teachers preparing students for the AP Computer Science Principles exam.
CodeCombat's "play first" approach gets kids gaming long before it occurs to them they might want to learn computer programming. Fundamentally a game played by writing code, the site never feels like code school. Instead, the code works like a magical language, where properly formatted incantations animate the on-screen characters.
The CodeCombat community has extensive resources for teachers and learners. The teacher dashboard, curriculum guides, progress journals, and "unplugged" activities go a long way to scaffolding learning. The open-source community has also provided a number of translations to meet student needs. An authentic example of game-based learning, CodeCombat is an educational game done the right way.
Key Standards Supported
Follow precisely a complex multistep procedure when carrying out experiments, taking measurements, or performing technical tasks, attending to special cases or exceptions defined in the text.
Follow precisely a complex multistep procedure when carrying out experiments, taking measurements, or performing technical tasks; analyze the specific results based on explanations in the text.
Key Standards Supported
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.