Unit 2 — Guided Project
You'll design, build, test and share your first complete program — start to finish, your idea.
What You're Building
Everyone picks one type of program from this menu. It runs in the terminal, takes input, and gives the user something useful back.
Calculator-type tool
- Unit converter
- Tip or bill splitter
- Grade calculator
Quiz engine
- Asks questions
- Checks the answers
- Reports a score
Simple tracker
- Habit tracker
- Reading log
- Workout log
These are just examples. You decide exactly what your program does and who it's for, and that goes in your pitch.
The Design Cycle
Back in Unit 0 you met the design cycle. This unit is your first time going all the way around it on one project:
Understanding Context → Defining → Ideating → Prototyping → Testing → Making → Sharing
You don't need a separate journal for it. Your commit history is your design log. Every commit shows what you did and when, and your project README holds the thinking behind it.
Start Here: Reorganize Your Repo
Everyone does this first, before touching your project. Your repo is about to get a lot bigger, so you'll sort it into unit folders and set up your Unit 2 project folder. It takes about 20 minutes.
Go to 2.1 — Repo ReorganizationCheckpoints
There are three checkpoints.
| Checkpoint | What's in your repo |
|---|---|
| CP1 — Pitch + plan | Project README: pitch and pseudocode (2D adds a class sketch; 2C names the language) |
| CP2 — Working prototype | Code that runs; test plan table written |
| CP3 — Tested build + share | Tests run and recorded, bugs fixed, shown to one peer, AI log complete |
CP1: Pitch and pseudocode done. That's how your teacher finds it in your history.
Find Your Level
Everyone builds from the same menu and hits the same three checkpoints. Your level sets how high the technical bar is and how much support you get along the way.
2A — Build It
You're newer to programming and want to put Unit 1's skills together into a real program.
Go to 2A2B — Structure It
You're comfortable with Unit 1's skills and ready to write code that's organized and hard to break.
Go to 2B2C — Switch Languages
You finished Unit 1 in Python and want to build your Unit 2 program in one of the approved languages.
Go to 2C2D — Engineer It
You're confident with Unit 1's skills and want to build the way professional developers do.
Go to 2DLevels are about the program, not the language: you can build in Python or in any approved language (the list is on the 2C page). Your teacher will recommend a level based on Unit 1. Think you're ready for a different one? Bring evidence from your Unit 1 work and pitch it.
How You're Assessed
Same course rubric as every project, with the same 5 criteria. Your level sets the bar for the technical part.
At each checkpoint, your teacher will call you up to go over your work one-on-one, so commit and push before each one. There are no whole-class presentations.