My high school did not have a computer science class, so I took an independent study in C++ programming during my last semester.
I was assigned 18 miniature assignments meant to teach different principles of programming, ranging from primitive types to simple object oriented programming. The course culminated in a final project where I used what I learned to design and develop a program for a customer. See Pirate-Man for more information.