Quote
"The real value of tests is not that they detect bugs in the code, but that they detect inadequacies in the methods, concentration, and skills of those who design and produce the code."
C
C. A. R. HoareC. A. R. Hoare
C. A. R. Hoare
Sir Charles Antony Richard Hoare, known as Sir Tony Hoare or C. A. R. Hoare, was a British computer scientist who made foundational contributions to programming languages, algorithms, operating systems, formal verification, and concurrent computing. His work earned him the 1980 ACM Turing Award, usually regarded as the highest distinction in computer science.
"The real value of tests is not that they detect bugs in the code, but that they detect inadequacies in the methods, concentration, and skills of those who design and produce the code."
"The most important property of a program is whether it accomplishes the intentions of its user."
"I have learned more from my failures than can ever be revealed in the cold print of a scientific article. [...] [Failures] are much more fun to hear about afterwards; they are not so funny at the time."
"I have regarded it as the highest goal of programming language design to enable good ideas to be elegantly expressed."
"One fine morning, when the emperor felt hot and bored, he extricated himself carefully from under the mountain of clothes and is now living happily as a swineherd in another story. The tailor is canonized as the patron saint of all consultants, because in spite of the enormous fees he extracted, he was never able to convince his clients of his dawning realization that their clothes have no Emperor."
"Programming languages on the whole are very much more complicated than they used to be: object orientation, inheritance, and other features are still not really being thought through from the point of view of a coherent and scientifically well-based discipline or a theory of correctness. My original postulate, which I have been pursuing as a scientist all my life, is that one uses the criteria of correctness as a means of converging on a decent programming language design—one which doesn’t set traps for its users, and ones in which the different components of the program correspond clearly to different components of its specification, so you can reason compositionally about it. [...] The tools, including the compiler, have to be based on some theory of what it means to write a correct program."