I’m not a great programmer; I’m just a good programmer with great habits.
When someone says, “I want a programming language in which I need only say what I want done,” give him a lollipop.
Don’t worry if it doesn’t work right. If everything did, you’d be out of a job.
Mosher’s Law of Software Engineering
C makes it easy to shoot yourself in the foot; C++ makes it harder, but when you do, it blows away your whole leg.
One of my most productive days was throwing away 1000 lines of code.
The trouble with programmers is that you can never tell what a programmer is doing until it’s too late.
Good design adds value faster than it adds cost.
Thomas C. Gale
That’s what’s cool about working with computers. They don’t argue, they remember everything, and they don’t drink all your beer.
Without requirements or design, programming is the art of adding bugs to an empty text file.
There are only two kinds of programming languages: those people always bitch about and those nobody uses.
Most of you are familiar with the virtues of a programmer. There are three, of course: laziness, impatience, and hubris.
Software undergoes beta testing shortly before it’s released. Beta is Latin for “still doesn’t work.
Python’s a drop-in replacement for BASIC in the sense that Optimus Prime is a drop-in replacement for a truck.
Good code is its own best documentation. As you’re about to add a comment, ask yourself, “How can I improve the code so that this comment isn’t needed?” Improve the code and then document it to make it even clearer.
Learning to program has no more to do with designing interactive software than learning to touch type has to do with writing poetry
Just don’t create a file called -rf.
I’ve noticed lately that the paranoid fear of computers becoming intelligent and taking over the world has almost entirely disappeared from the common culture. Near as I can tell, this coincides with the release of MS-DOS.
I don’t care if it works on your machine! We are not shipping your machine!
I love deadlines. I like the whooshing sound they make as they fly by.
A programming language is low level when its programs require attention to the irrelevant.
Alan J. Perlis.
The best performance improvement is the transition from the nonworking state to the working state.
Computer system analysis is like child-rearing; you can do grievous damage, but you cannot ensure success.
One man´s crappy software is another man´s full time job.
First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack.
Adding manpower to a late software project makes it later!
OO programming offers a sustainable way to write spaghetti code. It lets you accrete programs as a series of patches.
A language that doesn’t affect the way you think about programming is not worth knowing.
Alan J. Perlis
Rules of Optimization: Rule 1: Don’t do it. Rule 2 (for experts only): Don’t do it yet.
Michael A. Jackson –
It´s better to wait for a productive programmer to become available than it is to wait for the first available programmer to become productive.
Most software today is very much like an Egyptian pyramid with millions of bricks piled on top of each other, with no structural integrity, but just done by brute force and thousands of slaves.
Measuring programming progress by lines of code is like measuring aircraft building progress by weight.
If debugging is the process of removing software bugs, then programming must be the process of putting them in.
Walking on water and developing software from a specification are easy if both are frozen.
Edward V Berard
Copy and paste is a design error.
Fix the cause, not the symptom.
Focus on WHY instead of WHAT in your code will make you a better developer
C is quirky, flawed, and an enormous success.
Dennis M. Ritchie.
One of the best programming skills you can have is knowing when to walk away for awhile.
A primary cause of complexity is that software vendors uncritically adopt almost any feature that users want.
Talk is cheap, show me the code!
People will realize that software is not a product; you use it to build a product.
Experience is the name everyone gives to their mistakes.
Don’t make the user provide information that the system already knows.
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.
You can’t have great software without a great team, and most software teams behave like dysfunctional families.
I invented the term ‘Object-Oriented’, and I can tell you I did not have C++ in mind.
There is not now, nor has there ever been, nor will there ever be, any programming language in which it is the least bit difficult to write bad code.
Computers are good at following instructions, but not at reading your mind.
Real programmers can write assembly code in any language.
The older I get, the more I believe that the only way to become a better programmer is by not programming.
The most important property of a program is whether it accomplishes the intention of its user.
Every piece of software written today is likely going to infringe on someone else’s patent.
Miguel de Icaza
You want it in one line? Does it have to fit in 80 columns?
Sometimes it pays to stay in bed on Monday, rather than spending the rest of the week debugging Monday’s code.
Computer science education cannot make anybody an expert programmer any more than studying brushes and pigment can make somebody an expert painter.
Eric S. Raymond
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.
Most good programmers do programming not because they expect to get paid or get adulation by the public, but because it is fun to program.
Programming is like sex. One mistake and you have to support it for the rest of your life.
Before software can be reusable it first has to be usable.
Hardware: The parts of a computer system that can be kicked.
Any fool can write code that a computer can understand. Good programmers write code that humans can understand.
Every great developer you know got there by solving problems they were unqualified to solve until they actually did it.
Give a man a program, frustrate him for a day. Teach a man to program, frustrate him for a lifetime.
It’s a curious thing about our industry: not only do we not learn from our mistakes, we also don’t learn from our successes.
Programming is like kicking yourself in the face, sooner or later your nose will bleed.
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.
Get your facts first, then you can distort them as you please.
The best thing about a boolean is even if you are wrong, you are only off by a bit.
Controlling complexity is the essence of computer programming.
Code never lies, comments sometimes do.
Software sucks because users demand it to.
Software is like sex: It’s better when it’s free.
Never trust a computer you can’t throw out a window.
The proper use of comments is to compensate for our failure to express ourself in code.
Robert C. Martin
Beware of bugs in the above code; I have only proved it correct, not tried it.
Inside every large program, there is a program trying to get out.
I’ve finally learned what ‘upward compatible’ means. It means we get to keep all our old mistakes.
Dennie van Tassel
It has been said that the great scientific disciplines are examples of giants standing on the shoulders of other giants. It has also been said that the software industry is an example of midgets standing on the toes of other midgets.
That’s the thing about people who think they hate computers. What they really hate is lousy programmers.
In order to be irreplaceable, one must always be different.
Computers are like bikinis. They save people a lot of guesswork.
Nine people can’t make a baby in a month.
Computers are useless. They can only give you answers.
No one in the brief history of computing has ever written a piece of perfect software. It’s unlikely that you’ll be the first.
Any code of your own that you haven’t looked at for six or more months might as well have been written by someone else.
Deleted code is debugged code.
Considering the current sad state of our computer programs, software development is clearly still a black art, and cannot yet be called an engineering discipline.
Plans are worthless, but planning is everything.
Dwight D. Eisenhower
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.
Poor management can increase software costs more rapidly than any other factor.
An organization that treats its programmers as morons will soon have programmers that are willing and able to act like morons only.
It´s okay to figure out murder mysteries, but you shouldn´t need to figure out code. You should be able to read it.
Programming can be fun, so can cryptography; however they should not be combined.
Kreitzberg and Shneiderman
PHP is a minor evil perpetrated and created by incompetent amateurs, whereas Perl is a great and insidious evil, perpetrated by skilled but perverted professionals.
Truth can only be found in one place: the code.
Robert C. Martin, Clean Code: A Handbook of Agile Software Craftsmanship
No one hates software more than software developers.
The best reaction to “this is confusing, where are the docs” is to rewrite the feature to make it less confusing, not write more docs.
The question of whether computers can think is like the question of whether submarines can swim.
Edsger W. Dijkstra
One man’s constant is another man’s variable.
Alan J. Perlis
There are two ways of constructing a software design. One way is to make it so simple that there are obviously no deficiencies. And the other way is to make it so complicated that there are no obvious deficiencies.
One of the biggest problems that software developers face is that technology changes rapidly. It is very hard to stay current.
Programs must be written for people to read, and only incidentally for machines to execute.
It is a mistake to think you can solve any major problems just with potatoes.
If builders built buildings the way programmers wrote programs, then the first woodpecker that came along wound destroy civilization.
A good programmer is someone who always looks both ways before crossing a one-way street.
FORTRAN is not a flower but a weed — it is hardy, occasionally blooms, and grows in every computer.
Alan J. Perlis.
Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to build bigger and better idiots. So far, the universe is winning.
Perl – The only language that looks the same before and after RSA encryption.
If you can´t explain it simply, you don´t understand it well enough.
Logic will get you from A to B. Imagination will take you everywhere.
The problem with using C++ … is that there’s already a strong tendency in the language to require you to know everything before you can do anything.
Ruby is rubbish! PHP is phpantastic!
The Web is like a dominatrix. Everywhere I turn, I see little buttons ordering me to Submit.
Prolific programmers contribute to certain disaster.
A good way to stay flexible is to write less code.
If the automobile had followed the same development cycle as the computer, a Rolls-Royce would today cost $100, get a million miles per gallon, and explode once a year, killing everyone inside.
Robert X. Cringely
The first 90% of the code accounts for the first 90% of the development time. The remaining 10% of the code accounts for the other 90% of the development time.
It is easier to port a shell than a shell script.
It is not about bits, bytes and protocols, but profits, losses and margins.
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live.
A person who never made a mistake never tried anything new.
Nobody expects the Spanish inquisition.
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.
Randall E. Stross
Plan to throw one (implementation) away; you will, anyhow.
If you can’t write it down in English, you can’t code it.
The most disastrous thing that you can ever learn is your first programming language.
The function of good software is to make the complex appear to be simple.
Good is the enemy of great, but great is the enemy of shipped.
If the programmers like each other, they play a game called ‘pair programming’. And if not then the game is called ‘peer review’.
When debugging, novices insert corrective code; experts remove defective code.
You’re bound to be unhappy if you optimize everything.
Donald E. Knuth
If McDonalds were run like a software company, one out of every hundred Big Macs would give you food poisoning, and the response would be, ‘We’re sorry, here’s a coupon for two more.
I think Microsoft named .Net so it wouldn’t show up in a Unix directory listing.
First, solve the problem. Then, write the code.
It’s ridiculous to live 100 years and only be able to remember 30 million bytes. You know, less than a compact disc. The human condition is really becoming more obsolete every minute.
Code is like humor. When you have to explain it, it’s bad.
Simplicity is prerequisite for reliability.
Edsger W. Dijkstra
For a long time it puzzled me how something so expensive, so leading edge, could be so useless. And then it occurred to me that a computer is a stupid machine with the ability to do incredibly smart things, while computer programmers are smart people with the ability to do incredibly stupid things. They are, in short, a perfect match.
If you can’t deploy your services independently then they aren’t microservices.
Linux is only free if your time has no value.
Programmers are constantly making things more complicated than they need to be BECAUSE FUTURE. Fuck the future. Program for today.
David Heinemeier Hansson
What one programmer can do in one month, two programmers can do in two months.
There are two ways to write error-free programs; only the third one works.
Alan J. Perlis
Let’s call it an accidental feature.
It’s not at all important to get it right the first time. It’s vitally important to get it right the last time.
Andrew Hunt and David Thomas
It’s hard enough to find an error in your code when you’re looking for it; it’s even harder when you’ve assumed your code is error-free.
The three great virtues of a programmer: laziness, impatience, and hubris.
In the one and only true way. The object-oriented version of ‘Spaghetti code’ is, of course, ‘Lasagna code’. (Too many layers).
Lisp isn’t a language, it’s a building material.
The evolution of languages: FORTRAN is a non-typed language. C is a weakly typed language. Ada is a strongly typed language. C++ is a strongly hyped language.