Composing Programs
UC Berkeley's CS61A textbook -- the Python-flavored re-imagining of Structure and Interpretation of Computer Programs. CC BY-SA 4.0. Walks abstraction, higher-order functions, data abstraction, sequences, classes, functional programming, and a small interpreter -- exercises distilled from the original CS61A problem sets.
- Python
- 23 lessons
- ~5 hours
- Free
- by John DeNero
Learn Python for free on Libre Academy with the Composing Programs course: 23 interactive lessons you complete by writing real code in a built-in editor, graded instantly by hidden tests. No paywall, no sign-up. It's part of the free, open-source desktop app for macOS, Windows and Linux.
What you get
- Hands-on lessons with a real editor and instant, test-graded feedback.
- Free and open source, with no account required to start.
- Works offline in the free desktop app for macOS, Windows and Linux.
- Python runs instantly in the app.
What's inside
- Functions and Control
- Higher-Order Functions
- Data Abstraction
- Sequences
- Mutable Data
- Classes and Objects
- Functional Programming
- Interpreters for Languages with Combination
Download to start Composing Programs → More free Python courses
Helpful reading
Why passive video doesn't make you a programmer · Bring Your Own Book: turning any PDF into a course