As my boss used to say, "the best people I've worked with have all been self taught." I've found this to be true myself. A college degree (especially (?) in CS) is not the cause of, nor (in my experience) even correlated with, great programming. I think even being aware of and caring about the issues that have been mentioned makes one above average, even if you don't (yet) have the experience to solve it all.