Every week, I make a visual map of my learning journey — I share what I learn, how I learned it, and how you can too.
This week, I read a note that really resonated with me:
If you show up to your workplace every day, you can show up for your passion project every day.
Today marks 49 days of writing this Substack and practicing Python consistently. Beyond improving my skills, the most special win has been connecting with kind internet friends who’ve cheered for me on my journey or helped me get unstuck with Python concepts.
I hope my small newsletter inspires you to commit to your own passion projects and maybe share your work with the world to meet some inspiring people on the internet.
🔨 WHAT I LEARNED
In the last 2 weeks, I learned about Object-Oriented Programming, which is a fancy way to categorize “objects” in your code.
✨ Analogy time ✨
Imagine you own an online plant shop 🪴. Each plant is different — they have different names, prices, and sizes. But in the context of your shop, they’re all just “products”.
In object-oriented programming, each plant is an object that becomes part of the Product category (also known as a class).
There’s two main functionalities to classes: storing object information and assigning specific behaviors to objects.
Storing object information: For your plant shop, the Product class can store description variables for each plant — like Plant Name, Price, and Size. These variables could then be visible on your plant shop website!
Assign specific behavior to all objects: The Product class can also have actions like “add to cart”, “purchase”, or “leave a review”. Instead of assigning those actions to each plant object individually, the Product class can assign that ability to any object within the class.
Again, object-oriented programming is just a way for you to categorize objects in your code and give them specific behaviors in a clean and structured way.
👩🏫 HOW I LEARNED
The reason it took me 2 weeks to learn OOP is because I struggled to find a course that explained the concept using real-world applications. After lots of trial and error, here are the 5 videos that helped me the most:
Introduction to Classes and Objects - Part 1 (Data Structures & Algorithms)
Introduction to Classes and Objects - Part 2 (Data Structures & Algorithms)
Object Oriented Programming with Python - Full Course for Beginners
After days of online courses and ChatGPT help, I eventually was able to write my first classes on my own with no major bugs.
🗺 MY LEARNING MAP
If you’re reading this, thank you for being part of my learning journey. All of your support from likes, comments, or reads have helped me almost reach 50 days of my Python challenge.
The way you understand the subject and explain it reminds me of Richard Feynman’s saying “There is a difference between knowing the name of something and knowing something” by the time you are done this journey you know python. I shared your journey to many young people starting learning programming. There are many people who follow your journey and find it very useful. You are paving the way for them as well. Keep going.
Hey! I’m learning some Python too! Loved the visualizations and excited to follow the journey