Learn a programming concept

Teach me [CONCEPT] with a simple analogy, a tiny example in [LANGUAGE], a common mistake, and three practice exercises of increasing difficulty.