When debugging, novices insert corrective code; experts remove defective code.
Computer science education cannot make anybody an expert programmer any more than studying brushes and pigment can make somebody an expert painter.
Any fool can write code that a computer can understand. Good programmers write code that humans can understand.
The question of whether computers can think is like the question of whether submarines can swim.
A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools.
Some problems are so complex that you have to be highly intelligent and well informed just to be undecided about them.
It's [programming] the only job I can think of where I get to be both an engineer and an artist. There's an incredible, rigorous, technical element to it, which I like because you have to do very precise thinking. On the other hand, it has a wildly creative side where the boundaries of imagination are the only real limitation.
If you stay up late and you have another hour of work to do, you can just stay up another hour later without running into a wall and having to stop. Whereas it might take three or four hours if you start over, you might finish if you just work that extra hour. If you're a morning person, the day always intrudes a fixed amount of time in the future. So it's much less efficient. Which is why I think computer people tend to be night people - because a machine doesn't get sleepy.
Bad programmers worry about the code. Good programmers worry about data structures and their relationships.
Complexity kills. It sucks the life out of developers, it makes products difficult to plan, build and test, it introduces security challenges, and it causes end-user and administrator frustration.
As soon as we started programming, we found to our surprise that it wasn't as easy to get programs right as we had thought. Debugging had to be discovered. I can remember the exact instant when I realized that a large part of my life from then on was going to be spent in finding mistakes in my own programs.
The most likely way for the world to be destroyed, most experts agree, is by accident. That's where we come in; we're computer professionals. We cause accidents.
I realized that a large part of my life from then on was going to be spent in finding mistakes in my own programs.
Should array indices start at 0 or 1? My compromise of 0.5 was rejected without, I thought, proper consideration.
The most amazing achievement of the computer software industry is its continuing cancellation of the steady and staggering gains made by the computer hardware industry.
Most of you are familiar with the virtues of a programmer. There are three, of course: laziness, impatience, and hubris.
The best programmers are not marginally better than merely good ones. They are an order-of-magnitude better, measured by whatever standard: conceptual creativity, speed, ingenuity of design, or problem-solving ability.
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.
Controlling complexity is the essence of computer programming.
The cheapest, fastest, and most reliable components are those that aren't there.
Real programmers don't comment their code. If it was hard to write, it should be hard to understand.
When I'm working on a problem, I never think about beauty. I think only how to solve the problem.
It takes a touch of genius - and a lot of courage to move in the opposite direction.
As a rule, software systems do not work well until they have been used, and have failed repeatedly, in real applications.
Premature optimization is the root of all evil.
Follow AzQuotes on Facebook, Twitter and Google+. Every day we present the best quotes! Improve yourself, find your inspiration, share with friends
or simply: