← 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 runs in your browser and the free desktop app.

What you get

  • Hands-on lessons with a real editor and instant, test-graded feedback.
  • Free and open source — no account required to start.
  • Runs in your browser, and offline in the free desktop app.
  • Python runs in your browser.

What's inside

  • Functions and Control
  • Higher-Order Functions
  • Data Abstraction
  • Sequences
  • Mutable Data
  • Classes and Objects
  • Functional Programming
  • Interpreters for Languages with Combination

Start Composing Programs free →   More free Python courses