Before attempting this problem, it might be a good idea to take a look at Keep it Simple