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

Break out your Java toolbox to fix the duplicate collapsing code you'll encounter in this medium-difficulty problem created by Google.

Open link

CodingBat, Google