In his excellent book on game design, A Theory of Fun, Raph Koster, says the essence of good game design is teaching – a well constructed level slowly introduces you to its themes, and shows you how to beat them. Then you get a series of neatly placed hazards that present discrete challenges. If you take a classic platform game design, such as Super Mario Bros – the player is always given the chance to read the level: to look ahead and assess every new piece of scenery or patrolling enemy.