Solving problems - Kneeland, Steve (Viva Books, 2005)