Ask “what edge cases are there?” when first describing the task and let them go off and work a while. Later ask “are there any other edge cases?” and let them work a while longer. Repeat as appropriate. Let them find them on their own for a while or two. Let them miss them on their own for a while or two. At the right time ask “have you thought about this potential edge case?” If you want someone to learn to deal wit…
* Maintain a healthy ratio between the knowns and the unknowns.
* Allow time and space to explore, experiment, and especially err -- to build up experience.