Foundations of Programming

Reach beyond the basics of coding with these curated resources for programmers who have completed 1-2 computing courses. You’ll find three sample paths: a basic (and recommended) one, a problems first path, and one that focuses on testing and debugging. You can also plot your own sequence to suit however and wherever you’re learning.

View all paths

Try more problems first

Your mission: Write a simple interpreter in Java that understands the "+", "-", and "*" operations, then apply them. This is an exacting, Google-created exercise, so take your time.

Open link