10) Capstone Project Lesson

Python 301: Capstone Project

6 min to complete · By Martin Breuss

In Python 301, you learned more advanced software development concepts, such as exception handling and testing. You also spent a good amount of time learning about object-oriented programming and applying it in practice, for example, in your web scraping project.

If you've followed through the whole course diligently and put in the necessary concentration and hours of training, then you've come a long way, and learned a great deal of programming in Python. Congratulations on your success :D

From here on out, the best way to continue to learn is to build more projects. You've covered all the basics and many intermediate programming concepts. There's always more to learn, but learning in a vacuum doesn't make much sense and is less likely to stick.

Your Capstone Challenge

To put a crown on your coursework, your next task will be to build a capstone project. Your capstone will be a larger-scale Python project that you'll build independently from scratch.

Suggestions

Here are a few suggestions of what you could do:

  • Build A Game: You can use Python for game development beyond just command-line games. Build on top of the CLI RPG idea you've worked on during this course, and implement a 2D adventure game using pygame.
  • Recipe Generator: Combine the code you wrote throughout this course to build a recipe generator that requests input from your users and finds recipes online that they might want to cook. You can combine API calls or web scraping code with a user-friendly CLI interface click or rich, or even take it a step further and build a GUI for your program using Tkinter, PyQT, or PySimpleGUI.

Both of these project ideas build on top of topics that you've already worked on during this course. They both also require you to expand your knowledge beyond the scope of this course and learn to work with a new package that you haven't worked with so far.

Colorful illustration of a light bulb

Info: As a developer, you'll always need to learn how to work with new packages that you haven't worked with before. One of the most important skills that you'll train by working through your capstone project is the ability to read the documentation of your package and find other learning resources online that can help you get ahead.

Both pygame and PyQT are also written in a highly object-oriented manner, which will give you the chance to keep training your OOP skills while working on your capstone project.

Choose Your Own Adventure

If something else interests you more, then by all means, pick that project idea instead. For your capstone, and moving beyond this course content to keep improving your skills, the most important aspect is that you're interested in what you're building.

The more motivation you have to create an idea that's in your head or that you found on a list of project ideas, the more likely you'll be to stick through the tough parts that always come for each project you'll work on.

Colorful illustration of a light bulb

Info: If you're enrolled in a bootcamp program, then make sure to discuss your capstone idea with them. If you're working through the content by yourself, then use the shared knowledge on Discord to brainstorm project ideas and get feedback from other learners.

Practice Makes Perfect

The harder you train and the more projects you build, the better you'll get as a software developer.

Are you ready for your capstone task? Then, it's time to get started! Make sure to post about your progress on Discord.