The first thing you do when you program is find out what you are going to program.