Programming is the act of turning an inexact description of something (the specification) into an exact description of the thing (the program).