The art of programming is the ability to abstract the essential properties of the world in a model which is executable on a computer