Last updated: May 3, 2026
I’m really excited that you're starting your journey into machine learning! Since machine learning is primarily done using Python, getting comfortable with Python will be a great first step-and the good news is, you’ve started early, which gives you plenty of time to learn and grow. Depending on your background, it usually takes anywhere from 5 to 50 hours to get a solid grasp of Python. The best part? You can achieve this easily by dedicating just about an hour each day.
Here’s a plan to help you get started smoothly:
A. While there are tons of great YouTube tutorials out there, I highly recommend spending the first 1-2 hours with someone who knows Python well. They can help you set up your environment and clear up any initial questions, making your learning process much smoother.
B) Once you have that foundation, open this Google Colab file and run it cell by cell:
Google Colab Python Introduction. This hands-on approach will help you see Python in action. If you have a Chromebook, it will run on that to as the only thing it needs is the Chrome browser. Hence Windows, Mac, Linux, Chromebooks, and cell phones / tablets of all types can be used and if it works, you are all set! Note that smaller devices like iPads maybe showing you a reduced version of the site. In the settings of that page, there is an option called "Desktop site" or "Show Desktop site". Click on it to see the various options like File, Run, etc.
C) If you’re not sure what “executing cells” means, no worries - just go back to step A and get some guidance. It’s all part of the learning process!
D) Next, search for YouTube videos with titles like “Introduction to Python for Data Science using Google Colab.” Find an instructor whose teaching style resonates with you and follow their lectures. This will deepen your understanding and keep you motivated.
E) Finally, don’t hesitate to use tools like Perplexity.AI or Copilot. Ask them for beginner-friendly Python introductions with code examples, and once you’re comfortable, ask for more advanced topics. These tools can be fantastic learning companions.
A note on Google Colab notebooks: When you will click on any file below, it will open and you will be able to make changes. However, you will NOT be able to save those changes as these are my files and you are only a viewer. To get full access, make a 'copy' by clicking on File -> 'Save a Copy in Drive'. That way, you will have a copy of the file in YOUR google drive, under the folder 'Colab Notebooks' (generally a yellow colored folder symbol). You can edit that version as much as you want and it will be saved on your drive. In case you mess up, go back to the original link to the file in my Google Drive and make another fresh copy!
Google Colab Notebooks. Each notebook is different and gives you a glimpse of the real power of the Python programming language.
QR Code Generator.ipynb (3 lines of code)
UnZip and Zip Files.ipynb (3 lines of code)
Youtube audio downloader.ipynb (5 lines of code)
Cartoonify your photos.ipynb (10 lines of code)
Youtube video downloader.ipynb ((5 lines of code)
Color Matching.ipynb (Convert your photos to a different color scheme or shade, in 4 lines of code)
Find your GPS cordinates.ipynb (Find your GPS coordinates - works best via jupyter notebooks. 5+ lines of code)
Animate a Sine curve.ipynb (Difficult and long coding, just for fun)
Markup.ipynb (How to change fonts, colors, etc., or write equations, display images, in a jupyter notebook)
Widgets.ipynb (open the file to see what widget means)
How NOT to write code.ipynb (and rather use Generative AI)
GIS Census Data.ipynb (plot the data on the map of Baltimore, in 7 lines of code)
Remove Image Background.ipynb (5 lines of code)
Face Detection in Photos.ipynb (10 lines of code)
Your own spell checker.ipynb (5 lines of code)
Your very own simple Notepad.ipynb
A free-hand writing tool (coming soon)
UMBC's Data Science Program once offered an online Python Workshop. You can find the material here https://userpages.cs.umbc.edu/simsek/PW/
If you want to learn Scientific Python, here is a good complete course: https://lectures.scientific-python.org/
Teach Yourself Data Science, a lecture by Ergun Simsek: https://www.youtube.com/watch?v=Mrhzi5OmjpQ
If you want to learn Scientific Python, here is a good complete course: https://lectures.scientific-python.org/
𝗕𝗮𝘀𝗶𝗰𝘀
Start with the core building blocks of Python.
Syntax & indentation
Variables & data types
Operators
Conditional statements (if/else)
Loops (for, while)
Functions
𝗗𝗮𝘁𝗮 𝗦𝘁𝗿𝘂𝗰𝘁𝘂𝗿𝗲𝘀
Learn how to store and manipulate data efficiently.
Lists, tuples, sets, dictionaries
List comprehensions
Iterators & generators
Strings & slicing
Collections module
𝗢𝗯𝗷𝗲𝗰𝘁-𝗢𝗿𝗶𝗲𝗻𝘁𝗲𝗱 𝗣𝗿𝗼𝗴𝗿𝗮𝗺𝗺𝗶𝗻𝗴
Write scalable and reusable code.
Classes & objects
Inheritance & polymorphism
Encapsulation & abstraction
Dunder (magic) methods
Dataclasses
𝗔𝗱𝘃𝗮𝗻𝗰𝗲𝗱 𝗣𝘆𝘁𝗵𝗼𝗻
Go beyond basics and write professional code.
Decorators
Context managers
Closures
Functional programming
Type hints & annotations
𝗙𝗶𝗹𝗲 𝗛𝗮𝗻𝗱𝗹𝗶𝗻𝗴 & 𝗜/𝗢
Work with files and external data.
Reading/writing files
JSON, CSV, XML
Logging
Environment variables
𝗣𝗮𝗰𝗸𝗮𝗴𝗲𝗦 & 𝗘𝗻𝘃𝗶𝗿𝗼𝗻𝗺𝗲𝗻𝘁𝘀
Manage dependencies like a pro.
pip, pipenv, poetry
Virtual environments (venv, conda)
Requirements files
Packaging your own modules
𝗧𝗲𝘀𝘁𝗶𝗻𝗴 & 𝗤𝘂𝗮𝗹𝗶𝘁𝘆
Ensure your code is reliable.
Unit testing (unittest, pytest)
Mocking
Linting (flake8, pylint)
Formatting (black)
𝗪𝗲𝗯 𝗗𝗲𝘃𝗲𝗹𝗼𝗽𝗺𝗲𝗻𝘁
Build backend systems and APIs.
Flask
Django
FastAPI
REST APIs & authentication
𝗗𝗮𝘁𝗮 𝗦𝗰𝗶𝗲𝗻𝗰𝗲 & 𝗔𝗜
Python dominates data and AI.
NumPy, Pandas
Matplotlib, Seaborn
Scikit-learn
TensorFlow, PyTorch
𝗔𝘂𝘁𝗼𝗺𝗮𝘁𝗶𝗼𝗻 & 𝗦𝗰𝗿𝗶𝗽𝘁𝗶𝗻𝗴
Use Python to automate tasks.
Web scraping (BeautifulSoup, Selenium)
File & system automation
Task scheduling
Bots & scripts
𝗗𝗲𝘃𝗢𝗽𝘀 & 𝗗𝗲𝗽𝗹𝗼𝘆𝗺𝗲𝗻𝘁
Run Python apps in production.
Docker
CI/CD pipelines
Cloud deployment (AWS, Azure)
Monitoring & logging
𝗦𝘆𝘀𝘁𝗲𝗺 𝗗𝗲𝘀𝗶𝗴𝗻 & 𝗔𝗣𝗜𝘀
Design scalable systems using Python.
REST & GraphQL APIs
Caching (Redis)
Message queues (Kafka, RabbitMQ)
Microservices architecture
𝗥𝗲𝗮𝗹-𝗪𝗼𝗿𝗹𝗱 𝗣𝗿𝗼𝗷𝗲𝗰𝘁𝘀
Apply your skills with practical builds.
REST API with FastAPI/Django
Web scraper & automation bot
Data analysis dashboard
AI/ML application
SaaS product
Mastering this roadmap will take you from beginner to a professional Python developer capable of building scalable, production-ready applications.
Get the complete Python Handbook here: https://codewithdhanian.gumroad.com/l/ahgoam