Course Description
In the Wizard Level I Capstone, the final course of Wizard Level 1 in our middle school curriculum, students show off what they’ve learned about Python and HTML/CSS by building a series of larger projects. Capstone courses challenge students to be more creative and allow them more freedom to explore and engage with the concepts they’ve learned. As part of the capstone, they’ll build two Python games: one using our custom Wizardlib libraries and one using standard text-based Python. In addition to the two Python programs, they’ll create an “About Me” website that will allow them to showcase their HTML/CSS skills while building something they can share with friends and family. After finishing this course, students graduate to Wizard Level 2 and are ready to enter our Responsive Web Development course.
Learning Objectives
When students complete the Wizard Level I Capstone course, they will be able to:
- Internalize what they’ve learned in this Wizard Level by translating ideas into code while following programming best-practices
- Unlock their creative potential by creating websites from start to finish using HTML and CSS
- Gain independence through building larger personal projects with less direction from our curriculum and instructors
Prerequisites
These courses must be completed before Wizard Level I Capstone:
- Wizard Level 1, Course 1 : Intro to Programming with Python
- Wizard Level 1, Course 2 : Beyond Basics with Python
- Wizard Level 1, Course 3 : Webpages with HTML & CSS
- 1. Wizard Game Part 1
In the first lesson of this capstone, students begin a 2D Python game that reinforces concepts learned from Introduction to Programming with Python. They cover topics such as variables, conditional statements, and functions. Primarily, they develop enemy characters to move in a loop and the ability of their main character to move upon key press.
- 2. Wizard Game Part 2
In this lesson, students review more important Python programming concepts such as global variables, string interpolation, arithmetic operators, and conditional statements with relational operators. In doing so, they create a player health point system where health points are reduced when taking damage from enemy characters.
- 3. Wizard Game Part 3
In this lesson, students revisit multiple important programming concepts which include obtaining user input, using f-strings, and writing special functions. With this primarily being a text lesson, they will create a start menu for the player which can be turned on and off.
- 4. Wizard Game Part 4
In this lesson, students finish the Wizard Game they’ve been working on by creating the logic for multiple game levels. They use functions, global variables, and random number generators to create more enemies for every new level the player gets to.
- 5. About Me Website Part 1
In this lesson, students begin their own “About Me” website, which they will work on over the next four lessons. This allows them to have a refresher on Webpages with HTML & CSS while giving them more room for creativity. This lesson primarily focuses on HTML by revisiting file structure, basic HTML tags, and properly structuring the webpage layout into sections.
- 6. About Me Website Part 2
In this lesson, students focus on creating a basic design for their website by using CSS. They style multiple sections of their website which include the heading, navigation links, and the “about me” section. Therefore, they are able to review important HTML and CSS concepts such as using IDs, editing margins and padding, and setting the size of each element.
- 7. About Me Website Part 3
In this lesson, students finish the main design of their website alongside a webpage that describes their favorite hobbies. This lesson focuses on both HTML and CSS where students use classes, borders, and hover effects. Therefore, this lesson allows students to demonstrate their ability to design visually appealing multi-page websites.
- 8. About Me Website Part 4
In this lesson, students finish their “About Me” website by creating a page that showcases their favorite video games. They use CSS to position each game inside of their page correctly alongside adding multiple classes to a single element. Additionally, they added a video to their webpage.
- 9. Wizard Quest Part 1
In this lesson, students begin a pure Python text-based game called Wizard Quest which primarily covers concepts learned from Beyond Basic with Python. They use foundational data structures, including lists and dictionaries, which store and retrieve player data and game information.
- 10. Wizard Quest Part 2
In this lesson, students continue to update their Wizard Quest game while focusing on the creation of a random room generator. This creates a description of a room by randomly selecting from a list of premade words. Primarily, this lesson revisits important Python concepts such as creating and importing modules and selecting random values from lists.
- 11. Wizard Quest Part 3
In this lesson, students use multiple important programming concepts to add luck, gold, and potions to their game. They use a random number generator which allows them to assign probabilities to different outcomes in the game. This allows them to cover topics such as conditional statements with comparison operators, f-strings, updating dictionary values, etc.
- 12. Wizard Quest Part 4
In the final lesson of this course, students finish their Wizard Quest, a text-based Python game. They do so by implementing a combat system that allows the player to battle monsters. This requires multiple components such as creating a list of monsters, setting up their health, and generating random attacks upon each round of battle.
Class Schedule
All students start in Introduction to Programming at Wizard Level I. If you have previous coding experience, take the Advanced Placement test. Returning students can continue with the class where they left off.
#1 Most Comprehensive Program for Your Student’s Success!
The CodeWizardsHQ program comes with everything your child needs to be successful in learning to code.
All of the below are included at no extra cost.