← All courses

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