"One programs, just as one writes, not because one understands,
but in order to come to understand. Programming is an act of design. To
write a program is to legislate the laws for a world one first has to
create in imagination. Only very rarely does any designer, be he an
architect, a novelist, or whatever, have so coherent a picture of the
world emergent in his imagination that he can compose its laws without
criticism from that world itself."
Joseph Weizenbaum, "Computer Power and Human Reason", 1976