An anonymous reader writes: Looking back now, which CS courses did you take in college are the most valuable/important? I'm going to major in math or science or engineering, and I wanted to construct my own "minor" in CS from just the really important classes. I can program okay and can self-study alot of things, but I was wondering which classes you think were key. Or, was there not anything that important that you could not pick it up yourself? And, in a similar vein, was a lot gained from having your work graded?