Confused semi-newbie programmer needs some advice.
wheels: Learning languages in different families teaches you to abstract away the abstract algorithmic concepts from the language family specific concepts.  If I were designing a CS program, I'd probably include:  - C (imperative)
  - Python (object oriented)
  - Scheme (functional)

Interesting with that selection is that none of those are my weapons of choice in their niches for actual projects (I prefer C++, Ruby and Scala), but those above are a bit cleaner since they cling more purely to their respective models.