Unsuccessful attempts to solve a problem encourage deep processing of the answer when it is later supplied, creating fertile ground for its encoding, in a way that simply reading the answer cannot.
This is why pretesting works. Also we need to try to test our knowledge before revision. We might feel stupid, but that is necessary for durable learning. The realization of our ignorance makes the soil fertile for deep learning.

