Module Overview
Capstone Challenges
Every module so far has taught one topic in isolation, with its own small exercises, and a few have had a mini project along the way. This final module is different: three big challenges, each pulling together a different slice of the whole course.
Why This Matters
Real programs don’t stay inside a single topic. A real project mixes classes, file persistence, error handling, and more, all in service of one goal. These challenges are where those separate skills stop being separate, at a bigger scale than anything earlier in the course.
What You’ll Build
Three challenges, each with its own lesson (Challenge 1 spans two):
- Challenge 1: Contact Book, a class-based program that persists contacts to JSON, exports to CSV, and (in a second lesson) gets extended with a custom exception, a decorator, and a generator.
- Challenge 2: Command-Line Inventory Manager, with nested categories processed recursively, abstract base classes, logging, and a real
argparse-driven command-line interface. - Challenge 3: Web Data Collector, a full scrape-filter-extract-save pipeline combining BeautifulSoup, a lazy generator, regular expressions, and a custom context manager.
Together, the three challenges touch nearly every tool from the entire course. Work through them in order, or jump to whichever sounds most interesting: each one stands on its own.
Outcome
By the end of this module, and this course, you’ll have three complete, working programs that demonstrate what you’ve learned, rather than a folder of disconnected exercises.
Let’s build them.