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.
# 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.
Unit 1: First Steps
9 lessons
Unit 2: Numbers and Math
15 lessons
Unit 3: Working with Text
16 lessons
Unit 4: Making Decisions
18 lessons
Unit 5: Repeating Things
13 lessons
Unit 6: Lists
18 lessons
Unit 7: Functions
17 lessons
Unit 8: Tuples, Dictionaries and Sets
16 lessons
Unit 9: Errors and Debugging
12 lessons
Unit 10: Files and Data
13 lessons
Unit 11: Modules and Packages
12 lessons
Unit 12: Python on Your Computer
8 lessons
Unit 13: Classes and Objects
15 lessons
Unit 14: Pythonic Python
22 lessons
Unit 15: Type Hints and Testing
16 lessons
Unit 16: Deeper Python
24 lessons
Unit 17: Async and Concurrency
15 lessons
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.