…that in the pursuit of knowledge, at least in software and programming languages, engineering typically precedes science—that is, even if science ultimately produces the most reliable facts, the process often begins with engineering.
— Richard P. Gabriel, The Structure of a Programming Language Revolution