This presents interesting parallels of the arts to programming. Without diminishing the challenge or beauty of either. The Big Mud Puddle: Tricky Programming Concepts Aren’t : What Teachers do Wrong. Teachers use subversive language. They say things like “this is a bit tricky” before introducing a concept. It’s in the explanation of the concepts where things fall down. It's tricky should serve as a warning to pay attention, but instead it just gives people an excuse to stop paying close attention. This article doesn't do that - you'll find some lucidly explained concepts, of programming things that have oft been described as tricky. They aren't. Just pay attention and practice.
Thoughts and Ideas of a working software engineer. Observations of the oft-forgotten, but painfully obvious. Remember: Experience pays, and experience costs.