-
“Raise your quality standards as high as you can live with, avoid wasting your time on routine problems, and always try to work as closely as possible at the boundary of your abilities. Do this, because it is the only way of discovering how that boundary should be moved forward.” ― Edsger W. Dijkstra
-
“The purpose of abstracting is not to be vague, but to create a new semantic level in which one can be absolutely precise.” ― Edsger W. Dijkstra
-
Programmers are not to be measured by their ingenuity and their logic but by the completeness of their case analysis. ― Alan Perlis
-
“The popular view that scientists proceed inexorably from well-established fact to well-established fact, never being influenced by any unproved conjecture, is quite mistaken. Provided it is made clear which are proved facts and which are conjectures, no harm can result. Conjectures are of great importance since they suggest useful lines of research.” ― Alan Turing, Alan Turing: The Enigma
-
“Bad programmers worry about the code. Good programmers worry about data structures and their relationships.” ― Linus Torvalds
-
“I believe that this danger of the mathematician making mistakes is an unavoidable corollary of his power of sometimes hitting upon an entirely new method. This seems to be confirmed by the well known fact that the most reliable people will not usually hit upon really new methods.” ― Alan Turing, Intelligent Machinery, A Heretical Theory
-
“Simplicity is prerequisite for reliability.” ― Edsger W. Dijkstra
-
"I like my code to be elegant and efficient. The logic should be straightforward to make it hard for bugs to hide, the dependencies minimal to ease maintenance, error handling complete according to an articulated strategy, and performance close to optimal so as not to tempt people to make the code messy with unprincipled optimizations. Clean code does one thing well".
-
It is better to have 100 functions operate on one data structure than to have 10 functions operate on 10 data structures. ― Alan Perlis
-
“Let me try to explain to you, what to my taste is characteristic for all intelligent thinking. It is, that one is willing to study in depth an aspect of one's subject matter in isolation for the sake of its own consistency, all the time knowing that one is occupying oneself only with one of the aspects. We know that a program must be correct and we can study it from that viewpoint only; we also know that it should be efficient and we can study its efficiency on another day, so to speak. In another mood we may ask ourselves whether, and if so: why, the program is desirable. But nothing is gained—on the contrary!—by tackling these various aspects simultaneously. It is what I sometimes have called "the separation of concerns", which, even if not perfectly possible, is yet the only available technique for effective ordering of one's thoughts, that I know of. This is what I mean by "focusing one's attention upon some aspect": it does not mean ignoring the other aspects, it is just doing justice to the fact that from this aspect's point of view, the other is irrelevant. It is being one- and multiple-track minded simultaneously.” ― Edsger W. Dijkstra, Selected Writings on Computing: A Personal Perspective
-
"The hardest part is to decide what's important and maintain a coherency. Once you know what you want, eventually, you find a good technical way of doing it". ― Bjarne Stroustrup
-
Program construction consists of a sequence of refinement steps. ― Niklaus Wirth
-
“Your obligation is that of active participation. You should not act as knowledge-absorbing sponges, but as whetstones on which we can all sharpen our wits” ― Edsger W. Dijkstra
-
The art of programming is the art of organizing complexity.
-
"You start small, articulate fundamental principles, articulate long-term ideals, and develop based on feedback from real-world use". ― Bjarne Stroustrup
-
Well over half of the time you spend working on a project (on the order of 70 percent) is spent thinking, and no tool, no matter how advanced, can think for you. Consequently, even if a tool did everything except the thinking for you - if it wrote 100 percent of the code, wrote 100 percent of the documentation, did 100 percent of the testing, burned the CD-ROMs, put them in boxes, and mailed them to your customers - the best you could hope for would be a 30 percent improvement in productivity. In order to do better than that, you have to change the way you think. ― Fred Brooks
-
“A system of logical instructions that an automaton can carry out and which causes the automaton to perform some organized task is called a code.” ― John von Neumann, The Computer and the Brain
-
“In this sense, an object is of the highest degree of complexity if it can do very difficult and involved things.” ― John von Neumann, Theory Of Self Reproducing Automata
-
“When we talk mathematics, we may be discussing a secondary language built on the primary language truly used by the central nervous system.” ― John von Neumann
-
“In the deceptively modest volume you are now holding, von Neumann articulates his model of computation and goes on to define the essential equivalence of the human brain and a computer. He acknowledges the apparently deep structural differences, but by applying Turing’s principle of the equivalence of all computation, von Neumann envisions a strategy to understand the brain’s methods as computation, to re-create those methods, and ultimately to expand its powers.” ― John von Neumann, The Computer and the Brain: Abused City
-
But biology and computer science - life and computation - are related. I am confident that at their interface great discoveries await those who seek them. ― Leonard Adleman
-
Fools ignore complexity. Pragmatists suffer it. Some can avoid it. Geniuses remove it. ― Alan Perlis
-
The essence of a software entity is a construct of interlocking concepts. I believe the hard part of building software to be the specification, design, and testing of this conceptual construct, not the labor of representing it and testing the fidelity of the representation. ― Fred Brooks
-
A language that doesn't affect the way you think about programming is not worth knowing. ― Alan Perlis
-
Don't have good ideas if you aren't willing to be responsible for them. ― Alan Perlis
-
A design style is defined by a set of microdecisions. A clear style reflects a consistent set. A clear style may not be a good style; a muddled one never is. ― Fred Brooks
-
Design work doesn't just satisfy requirements, it elicits them. ― Fred Brooks
-
I am more convinced than ever. Conceptual integrity is central to product quality. ― Fred Brooks
-
Our ultimate goal is extensible programming. By this, we mean the construction of hierarchies of modules, each module adding new functionality to the system. ― Niklaus Wirth
-
Remember that accumulated knowledge, like accumulated capital, increases at compound interest: but it differs from the accumulation of capital in this; that the increase of knowledge produces a more rapid rate of progress, whilst the accumulation of capital leads to a lower rate of interest. Capital thus checks it own accumulation: knowledge thus accelerates its own advance. Each generation, therefore, to deserve comparison with its predecessor, is bound to add much more largely to the common stock than that which it immediately succeeds. ― Charles Babbage
-
To understand a program, you must become both the machine and the program. ― Alan Perlis
-
During the process of stepwise refinement, a notation which is natural to the problem in hand should be used as long as possible. ― Niklaus Wirth
-
A good programming language is a conceptual universe for thinking about programming. ― Alan Perlis
-
The possible solutions to a given problem emerge as the leaves of a tree, each node representing a point of deliberation and decision. ― Niklaus Wirth
-
The most effective debugging tool is still careful thought, coupled with judiciously placed print statements. ― Brian Kernighan
-
Optimization hinders evolution. Everything should be built top-down, except the first time. Simplicity does not precede complexity, but follows it. ― Alan Perlis
-
Long intervals frequently elapse between the discovery of new principles in science and their practical application... Those intellectual qualifications, which give birth to new principles or to new methods, are of quite a different order from those which are necessary for their practical application. ― Charles Babbage
-
The critical thing about the design process is to identify your scarcest resource. Despite what you may think, that very often is not money. For example, in a NASA moon shot, money is abundant but lightness is scarce; every ounce of weight requires tons of material below. On the design of a beach vacation home, the limitation may be your ocean-front footage. You have to make sure your whole team understands what scarce resource you're optimizing. ― Fred Brooks
-
"Test early and often" ― Bjarne Stroustrup
-
"Space is time" ― Bjarne Stroustrup
-
When in doubt, use brute force. ― Ken Thompson
-
A good designer must rely on experience, on precise, logic thinking; and on pedantic exactness. No magic will do. ― Niklaus Wirth
-
Systematically identity top designers as early as possible. The best are often not the most experienced. ― Fred Brooks
-
Mediocre design provably wastes the world's resources, corrupts the environment, affects international competitiveness. Design is important. ― Fred Brooks
-
“You must run before you can walk!” ― Bjarne Stroustrup, Programming: Principles and Practice Using C++
-
Programs should be written and polished until they acquire publication quality. ― Niklaus Wirth
-
“The very last stage of any memory hierarchy is necessarily the outside world—that is, the outside world as far as the machine is concerned, i.e. that part of it with which the machine can directly communicate, in other words, the input and the output organs of the machine. These are usually punched paper tapes or cards, and on the output side, of course, also printed paper.” ― John von Neumann, The Computer and the Brain
-
“The linear size of a neuron varies widely from one nerve cell to the other, since some of these cells are contained in closely integrated large aggregates and have, therefore, very short axons, while others conduct pulses between rather remote parts of the body and may, therefore, have linear extensions comparable to those of the entire human body.” ― John von Neumann, The Computer and the Brain
-
“Progress is possible only if we train ourselves to think about programs without thinking of them as pieces of executable code. ” ― Edsger W. Dijkstra
-
“A code, which according to Turing's schema is supposed to make one machine behave as if it were another specific machine (which is supposed to make the former imitate the latter) must do the following things. It must contain, in terms that the machine will understand (and purposively obey), instructions (further detailed parts of the code) that will cause the machine to examine every order it gets and determine whether this order has the structure appropriate to an order of the second machine. It must then contain, in terms of the order system of the first machine, sufficient orders to make the machine cause the actions to be taken that the second machine would have taken under the influence of the order in question.” ― John von Neumann, The Computer and the Brain
-
Another effective [debugging] technique is to explain your code to someone else. This will often cause you to explain the bug to yourself. Sometimes it takes no more than a few sentences, followed by an embarrassed "Never mind, I see what's wrong. Sorry to bother you." This works remarkably well; you can even use non-programmers as listeners. One university computer center kept a teddy bear near the help desk. Students with mysterious bugs were required to explain them to the bear before they could speak to a human counselor. ― Brian Kernighan
-
The only way to learn a new programming language is by writing programs in it. ― Dennis Ritchie
-
It's easy to make mistakes that only come out much later, after you've already implemented a lot of code. You'll realize Oh I should have used a different type of data structure. Start over from scratch. ― Guido Van Rossum
-
My impression is that a really, really high-order concern for the whole development community is interoperability and consistency. ― James Gosling
-
“Any program is only as good as it is useful.” ― Linus Torvalds.
-
“Premature optimization is the root of all evil.” ― Donald Ervin Knuth, The Art of Computer Programming, Volume 1: Fundamental Algorithms
-
It is evidently necessary to generate and test candidates for solutions in some systematic manner. ― Niklaus Wirth
-
I am a very bottom-up thinker. ― Ken Thompson
-
It's always good to take an orthogonal view of something. It develops ideas. ― Ken Thompson
-
“C makes it easy to shoot yourself in the foot; C++ makes it harder, but when you do it blows your whole leg off.” ― Bjarne Stroustrup
-
If you don't handle [exceptions], we shut your application down. That dramatically increases the reliability of the system. ― Anders Hejlsberg
-
System debugging, like astronomy, has always been done chiefly at night. ― Fred Brooks
-
Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it. ― Brian Kernighan
-
90% of the functionality delivered now is better than 100% delivered never. ― Brian Kernighan
-
One of my most productive days was throwing away 1,000 lines of code. ― Ken Thompson
-
Mechanical rules are never a substitute for clarity of thought. ― Brian Kernighan
-
“Overstimulation has been the real drawback. I need to find ways to stop thinking about analysis of algorithms, in order to do various other things that human beings ought to do.” ― Donald Ervin Knuth, Selected Papers on Computer Science
-
“People think that computer science is the art of geniuses but the actual reality is the opposite, just many people doing things that build on each other, like a wall of mini stones.” ― Donald Knuth
-
Notifications
You must be signed in to change notification settings - Fork 0
aravindd7/programming-quotes
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
About
No description, website, or topics provided.