Join us and get access to thousands of tutorials and a community of expert Pythonistas.

Unlock This Lesson

This lesson is for members only. Join us and get access to thousands of tutorials and a community of expert Pythonistas.

Unlock This Lesson

Hint: You can adjust the default video playback speed in your account settings.
Hint: You can set your subtitle preferences in your account settings.
Sorry! Looks like there’s an issue with video playback 🙁 This might be due to a temporary outage or because of a configuration issue with your browser. Please refer to our video player troubleshooting guide for assistance.

Build Something, Anything

For beginners, there are many small exercises that will really help you become confident with Python and develop the muscle memory that we spoke about before. Once you have a solid grasp on basic data structures (strings, lists, dictionaries, sets), object-oriented programming, and writing classes, it’s time to start building!

What you build is not as important as how you build it. The journey of building is truly what will teach you the most. You can only learn so much from reading Real Python articles and courses. Most of your learning will come from using Python to build something. The problems you will solve will teach you a lot.

There are many lists out there with ideas for beginner Python projects. Here are some ideas to get you started:

If you find it difficult to come up with Python practice projects to work on, then watch this video. It lays out a strategy you can use to generate thousands of project ideas whenever you feel stuck.

00:00 Build Something, Anything.

00:05 So, building something, anything, is a really, really important tip. The scope of what you build doesn’t really matter. It’s much more important that you’re building anything at all.

00:16 You have to be realistic about what you’re going to write, so the first program you create is probably going to be fairly simple, something like a number guessing game that uses binary search—that kind of thing. But importantly, this gets you in the habit of starting and finishing a project.

00:33 If you look around on sites such as GitHub, you’ll see many a project which has been started and then left abandoned for whatever reason. This is a really, really bad thing to do.

00:42 What you need to do is get in the habit of starting a project, writing it, and then finishing it, even if they start out being really simple. As your skills improve, you’ll be able to create much more complicated programs than you ever thought possible, but only by practicing this. Building things is incredibly important, because you learn much more in practice and avoid glossing over difficult areas. A quick aside: one of the first things I created, which has been used in production, was a people tracking database. Now, if I was going to write it again today, I would write it in a completely different manner, but the reason I would do that is because of the lessons that I learned as I wrote it. It’s definitely completely functional, and the people in question are really happy with it, but I would create it in a totally different way, as now I understand much more about data structures and efficient methods for changing that data than I did when I started.

Charlie Clemmer on April 6, 2020

Thank you for this! Sometimes it’s hard to start using new skills because it doesn’t seem useful enough, but this advice gets me to jump in and do anything, and then take it to something more useful over time.

Become a Member to join the conversation.