What Knowledge Gaps Do Self-Taught Programmers Generally Have?
BeardedChimp writes "I, like many others here, have learned to program by myself. Starting at a young age and learning through fiddling I have taught myself C++, Java, python, PHP, etc., but what I want to know is what I haven't learned that is important when taught in a traditional computer science curriculum. I have a degree in physics, so I'm not averse to math. What books, websites, or resources would you recommend to fill in the gaps?"
Learning to analyze algorithms is very helpful. Spending an entire semester is not. You could teach people all they need to know about big O and common algorithms in an afternoon. Not to mention teachers' obsessions with showing formal proofs. I'm not a mathematician, you can teach me the easy way and I'll just take your word for it that it works.