Free Python course

Learn Python by writing real Python.

266 short lessons in 18 units, from your first print() to async code. Your code runs right in the page, so there is nothing to install.

Ages 13 and up. No ads, no tracking, no card needed.

lesson-04 · greet.py

# Your turn: greet the learner

name = "Ada"

print(f"Hello, {name}!")

$ python greet.py

Hello, Ada!

+10 XP · check passed

How Hatch teaches

  • One idea at a time

    Every lesson teaches before it tests. You read a little, then write a little, and the app picks what comes next.

  • Real Python, right in the page

    Your code runs in a real Python interpreter inside your browser. Checks run your program and look at what it does, not how you spelled it.

  • Errors that help

    When something breaks you get a plain-English explanation first, with the full traceback one tap away. Your code is never erased.

Small wins, every day

Learning to code takes a while. Hatch makes the days in between feel good.

  • Streaks and XP

    Earn XP for doing the work, keep a streak going, and level up.

  • Quests and a shop

    Daily quests pay XP you can spend on themes, avatars and streak freezes.

  • Weekly leagues

    Climb from Bronze up, against real learners. No hearts and no punishment for mistakes.

266 lessons, 18 units

From zero to advanced practical Python, in an order that builds on itself.

  1. Unit 1: First Steps

    9 lessons

  2. Unit 2: Numbers and Math

    15 lessons

  3. Unit 3: Working with Text

    16 lessons

  4. Unit 4: Making Decisions

    18 lessons

  5. Unit 5: Repeating Things

    13 lessons

  6. Unit 6: Lists

    18 lessons

  7. Unit 7: Functions

    17 lessons

  8. Unit 8: Tuples, Dictionaries and Sets

    16 lessons

  9. Unit 9: Errors and Debugging

    12 lessons

  10. Unit 10: Files and Data

    13 lessons

  11. Unit 11: Modules and Packages

    12 lessons

  12. Unit 12: Python on Your Computer

    8 lessons

  13. Unit 13: Classes and Objects

    15 lessons

  14. Unit 14: Pythonic Python

    22 lessons

  15. Unit 15: Type Hints and Testing

    16 lessons

  16. Unit 16: Deeper Python

    24 lessons

  17. Unit 17: Async and Concurrency

    15 lessons

  18. Unit 18: Capstone: A Real Project

    7 lessons

Built to respect you

No ads, no analytics, no third-party trackers, no cookies, and we never sell data. Teens get a parent-approved account. You can delete your account and everything in it whenever you like. Read the Privacy Policy and Cookies and local storage notice.

Questions

Is Hatch free?

Yes. There are no ads and nothing to buy.

Do I need to install Python?

No. Python runs inside the page. Lessons that read input or write files work too, in a safe sandbox.

Why do I need an account?

So your progress is saved and follows you between devices, and so the weekly leaderboard is made of real people. It takes a minute: an email, a password and your birth month and year.

How old do I have to be?

13 or older. If you are 13 to 15, a parent or guardian approves your account with a code we email them.

What do you do with my data?

We keep what the account needs and nothing else: no analytics, no ads, no selling. You can delete everything from your profile at any time. The Privacy Policy has the details.

Is there a phone app?

An iPhone and iPad app is on the way and works offline. The website works on phones and tablets today.