Projects
Each project describes a scenario and an outcome, not a prescribed implementation. You decide how to build it; the acceptance checks tell you when it's working.
Number Guessing Game
Build a program that picks a secret number and helps the player narrow it down through repeated guesses.
Practices: Conditions, Loops, Variables and state, Input and output
Text Analyzer
Given a block of text, report word counts, the most frequent words, and simple statistics.
Practices: Strings, Dictionaries, Functions
Task Manager
A small command-line tool for adding, completing, and listing tasks.
Practices: Lists, Functions, Decomposition
Maze or Route Finder
Find a path through a grid or map using a search strategy.
Practices: Graphs, Search strategies, Queues
Library Lending Model
Model books, members, and loans as objects with clear responsibilities.
Practices: Classes, Encapsulation, Composition