"Attempting to resolve a long-standing debate over whether any one method could prove or disprove all mathematical statements, [Alan] Turing invoked the notion of a "universal machine" that could be given instructions to perform a variety of tasks. Turing spoke of a "machine" only abstractly, as a sequence of steps to be executed. But his realization that the data fed into a system also could function as its directions opened the door to the invention of software."
--From an article in BusinessWeek Online
Turing "thought up" the idea of computer programming back in the 1930's. Imagine coming up with that idea before the days of IBM, Apple, Atari, Cingular... today it seems like such a simple idea, but what an idea it was then!