Roadmap
6–10 months
4 phases
~41 weeks

Python Roadmap

The most versatile path in software. Python opens doors to web development, data science, automation, and machine learning.

The short answer

Python is the most widely taught programming language in the world and one of the best choices for a first language. It's readable, versatile, and directly employable across software development, data science, machine learning, and automation. Python is the #1 language on GitHub (2024 Octoverse report), used by Google, Netflix, NASA, and virtually every major AI lab. The timeline to useful Python skills (writing scripts, automating tasks) is 2–4 weeks; getting job-ready for a Python role takes 6–10 months at 10 hours per week. You can learn Python entirely for free through CS50P (Harvard), freeCodeCamp, Kaggle Learn, and MIT OpenCourseWare, no paid bootcamp required.

  1. Phase 1:Python Fundamentals

    The goal of the first phase isn't to learn every Python feature, it's to stop worrying about syntax and start building things. By the end of seven weeks you should be able to write a script that reads a file, processes some data, and writes an output. That small loop (input, logic, output) is the skeleton of almost everything you'll build later.

    What to learn: variables and types, control flow, functions, lists/dicts/tuples/sets, file I/O, basic error handling.

    beginner
    1 week

    Variables & Types

    Strings, integers, floats, booleans, and Python's dynamic typing system.

    beginner
    1 week

    Control Flow

    if/else, for loops, while loops, and list comprehensions.

    beginner
    2 weeks

    Functions

    Define, call, and compose functions. Understand scope, arguments, and return values.

    beginner
    2 weeks

    Data Structures

    Lists, tuples, dictionaries, and sets, and when to use each.

    beginner
    1 week

    File I/O & Errors

    Read and write files, handle exceptions gracefully.

    Codecademy
    Free to start

    Learn Python 3 (Free Start)

    Codecademy's Learn Python 3 course is beginner-friendly, interactive, and free to start. The browser-based environment means no setup friction on day one.

    Start Python free on Codecademy →

    Outbound link. We are not in this platform's affiliate program and earn nothing if you sign up. We only recommend platforms we rate.

  2. Phase 2:Intermediate Python

    This phase is where Python starts feeling like a real professional language rather than a calculator. OOP is the most important milestone here: if you can write a class with methods and inheritance, you can read and contribute to almost any Python codebase. Decorators, generators, and testing might feel abstract at first. The way to make them click is to apply them to something you've already built.

    What to learn: classes, inheritance, dunder methods, modules, pip, virtual environments, decorators, generators, pytest basics.

    intermediate
    3 weeks

    Object-Oriented Python

    Classes, inheritance, dunder methods, and OOP principles.

    intermediate
    1 week

    Modules & Packages

    Import from the standard library, install and use third-party packages with pip.

    intermediate
    2 weeks

    Decorators & Generators

    Higher-order functions, generator expressions, and Python's advanced features.

    intermediate
    2 weeks

    Testing with Pytest

    Write unit tests, use fixtures, and test-driven development basics.

    CS50P (Harvard)
    Completely free

    Harvard's Free Python Course

    CS50's Introduction to Programming with Python is free to audit, covers intermediate Python well, and comes from one of the most respected computer science educators. The certificate costs money but the content is free.

    Free Harvard Python on CS50 →

    Outbound link. CS50P (Harvard) runs no affiliate or referral program, so there is no way for us to earn anything if you click it. It is on the roadmap because we rate it.

  3. Phase 3:Choose Your Direction

    Python is unusually multi-directional. You don't need to lock in your direction in week one, but by the time you finish the intermediate phase you should have a lean. The three most common paths are web development (Django or Flask), data and analytics (pandas and NumPy), and automation (scripting, APIs, browser automation with Playwright). AI engineering is a fourth path for people who want to build products on top of LLMs. Pick the CTA below that matches your goal.

    What to learn: one path deeply: Django/Flask for web, pandas/NumPy for data, scripting and APIs for automation, or LLM tooling for AI engineering.

    intermediate
    6 weeks

    Web Dev: Django/Flask

    Build web applications and APIs with Python's popular web frameworks.

    intermediate
    6 weeks

    Data: pandas & NumPy

    Load, clean, analyze, and visualize data with the data science stack.

    intermediate
    4 weeks

    Automation: scripts & bots

    Automate tasks with Python scripts, web scraping, and API integrations.

    Full Stack Open
    Completely free

    Web dev path: Python and JS full-stack

    If your goal is web dev, Full Stack Open pairs backend thinking with Node.js in production. For pure Python web dev, the Django docs are the canonical resource.

    Free full-stack course →

    Outbound link. Full Stack Open runs no affiliate or referral program, so there is no way for us to earn anything if you click it. It is on the roadmap because we rate it.

    Kaggle Learn
    Completely free

    Data path: free Python and pandas

    Kaggle Learn's free Python and pandas courses are short, project-based, and end in a micro-certificate. Working data scientists use them every day.

    Free pandas on Kaggle Learn →

    Outbound link. Kaggle Learn runs no affiliate or referral program, so there is no way for us to earn anything if you click it. It is on the roadmap because we rate it.

    DeepLearning.AI
    Free to start

    AI engineering path: free AI courses

    DeepLearning.AI's short courses (most are free) cover prompt engineering, LangChain, and building AI applications in Python. The fastest path from Python to AI engineering.

    Free AI courses on DeepLearning.AI →

    Outbound link. We are not in this platform's affiliate program and earn nothing if you sign up. We only recommend platforms we rate.

  4. Phase 4:Professional Python

    This phase turns someone who can write Python scripts into someone who can contribute to a real codebase. SQL matters because most Python applications store data in a database. Git collaboration matters because solo Git and team Git are different skills. Portfolio projects matter more than any certificate: three deployed Python projects on your GitHub will open more doors than any badge.

    What to learn: SQL with Python (SQLAlchemy or psycopg2), Git for teams (PRs, code review), environment management (pyenv, poetry), writing a README, deploying a project (Railway, Fly.io, or a VPS).

    intermediate
    3 weeks

    SQL & Databases

    Query databases with Python using SQLAlchemy or psycopg2.

    beginner
    1 week

    Git & Collaboration

    Use Git professionally, write good commit messages, and work with PRs.

    intermediate
    6 weeks

    Portfolio Projects

    Build 2-3 Python projects that solve real problems and deploy them.

    Coursera Python Cert

    The Python for Everybody Specialization by Dr. Chuck (University of Michigan) covers Python, databases, and web scraping. Free to audit; pay only if you want the certificate. One of the most completed Python courses in the world.

    Audit free on Coursera →

    Outbound link. We are not in this platform's affiliate program and earn nothing if you sign up. We only recommend platforms we rate.

FAQ

Frequently Asked Questions

How long does it take to learn Python?

You can write useful Python scripts in two to four weeks. Getting job-ready for a Python role (web development, data analysis, or automation) takes six to ten months at ten hours per week. The language itself is fast to learn; the slower part is building the problem-solving instincts and portfolio projects that convince employers you can work independently.

Is Python a good first programming language?

Yes. Python is widely considered the best first programming language for most learners. The syntax is close to plain English, error messages are readable, and there is an enormous free learning ecosystem: CS50P (Harvard), freeCodeCamp, Kaggle, and Codecademy all teach it well. The one caveat: Python's flexibility means there are multiple valid ways to do things, which can confuse beginners who want a single right answer. Pick one learning path and follow it through.

Python for data science or web development?

Both are strong career paths; the choice depends on your interests. Data science adds pandas, NumPy, statistics, and Jupyter notebooks to your Python knowledge. Web development adds Django or Flask, databases, and deployment. If you are unsure, complete Phase 1 and 2 (core Python), then try one small project from each direction. The work itself will tell you which fits.

Do I need to learn Python 2 or Python 3?

Python 3 only. Python 2 reached end-of-life in January 2020 and is no longer maintained or updated. All modern courses, libraries, and employers use Python 3 exclusively. If you find a tutorial that uses print without parentheses (the Python 2 style), it is outdated, so find a newer resource.

What can I build with Python?

Web apps (Django, Flask, FastAPI), data pipelines, automation scripts, machine learning models, REST APIs, command-line tools, web scrapers, bots, and more. In the short term, you can build a useful automation script (something that saves you real time each week) within your first month of learning. In the longer term, Python is the primary language at DeepMind, Spotify, Instagram, Dropbox, and every major AI research lab.

Next steps

Keep exploring

Languages in this roadmap

Other goals

More Roadmaps