The Pragmatic Programmer Quotes
The Pragmatic Programmer: From Journeyman to Master
by
Andy Hunt23,781 ratings, 4.33 average rating, 1,496 reviews
The Pragmatic Programmer Quotes
Showing 1-30 of 240
“The greatest of all weaknesses is the fear of appearing weak.”
― The Pragmatic Programmer: From Journeyman to Master
― The Pragmatic Programmer: From Journeyman to Master
“Don't be a slave to history. Don't let existing code dictate future code. All code can be replaced if it is no longer appropriate. Even within one program, don't let what you've already done constrain what you do next -- be ready to refactor... This decision may impact the project schedule. The assumption is that the impact will be less than the cost of /not/ making the change.”
― The Pragmatic Programmer: From Journeyman to Master
― The Pragmatic Programmer: From Journeyman to Master
“You Can't Write Perfect Software. Did that hurt? It shouldn't. Accept it as an axiom of life. Embrace it. Celebrate it. Because perfect software doesn't exist. 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. And unless you accept this as a fact, you'll end up wasting time and energy chasing an impossible dream.”
― The Pragmatic Programmer: From Journeyman to Master
― The Pragmatic Programmer: From Journeyman to Master
“An investment in knowledge always pays the best interest.”
― The Pragmatic Programmer: From Journeyman to Master
― The Pragmatic Programmer: From Journeyman to Master
“Tools amplify your talent. The better your tools, and the better you know how to use them, the more productive you can be.”
― The Pragmatic Programmer: From Journeyman to Master
― The Pragmatic Programmer: From Journeyman to Master
“Kaizen" is a Japanese term that captures the concept of continuously making many small improvements.”
― The Pragmatic Programmer: From Journeyman to Master
― The Pragmatic Programmer: From Journeyman to Master
“Great software today is often preferable to perfect software tomorrow.”
― The Pragmatic Programmer: From Journeyman to Master
― The Pragmatic Programmer: From Journeyman to Master
“We who cut mere stones must always be envisioning cathedrals. —Quarry worker's creed”
― The Pragmatic Programmer
― The Pragmatic Programmer
“Names are deeply meaningful to your brain, and misleading names add chaos to your code.”
― The Pragmatic Programmer: From Journeyman to Master
― The Pragmatic Programmer: From Journeyman to Master
“In some ways, programming is like painting. You start with a blank canvas and certain basic raw materials. You use a combination of science, art, and craft to determine what to do with them. You sketch out an overall shape, paint the underlying environment, then fill in the details. You constantly step back with a critical eye to view what you've done. Every now and then you'll throw a canvas away and start again. But artists will tell you that all the hard work is ruined if you don't know when to stop. If you add layer upon layer, detail over detail, the painting becomes lost in the paint.”
― The Pragmatic Programmer
― The Pragmatic Programmer
“The editor will be an extension of your hand; the keys will sing as they slice their way through text and thought.”
― The Pragmatic Programmer: From Journeyman to Master
― The Pragmatic Programmer: From Journeyman to Master
“Don't gloss over a routine or piece of code involved in the bug because you "know" it works. Prove it. Prove it in this context, with this data, with these boundary conditions.”
― The Pragmatic Programmer: From Journeyman to Master
― The Pragmatic Programmer: From Journeyman to Master
“Every day, work to refine the skills you have and to add new tools to your repertoire.”
― The Pragmatic Programmer
― The Pragmatic Programmer
“One hundred years from now, our engineering may seem as archaic as the techniques used by medieval cathedral builders seem to today's civil engineers, while our craftsmanship will still be honored.”
― The Pragmatic Programmer
― The Pragmatic Programmer
“A good idea is an orphan without effective communication.”
― The Pragmatic Programmer: From Journeyman to Master
― The Pragmatic Programmer: From Journeyman to Master
“Don't leave "broken windows" (bad designs, wrong decisions, or poor code) unrepaired. Fix each one as soon as it is discovered. If there is insufficient time to fix it properly, then board it up. Perhaps you can comment out the offending code, or display a "Not Implemented" message, or substitute dummy data instead. Take some action to prevent further damage and to show that you're on top of the situation.”
― The Pragmatic Programmer: From Journeyman to Master
― The Pragmatic Programmer: From Journeyman to Master
“All software you write will be tested—if not by you and your team, then by the eventual users—so you might as well plan on testing it thoroughly.”
― The Pragmatic Programmer: From Journeyman to Master
― The Pragmatic Programmer: From Journeyman to Master
“The amount of surprise you feel when something goes wrong is directly proportional to the amount of trust and faith you have in the code being run.”
― The Pragmatic Programmer: From Journeyman to Master
― The Pragmatic Programmer: From Journeyman to Master
“If you work closely with your users, sharing their expectations and communicating what you're doing, then there will be few surprises when the project gets delivered. This is a BAD THING. Try to surprise your users. Not scare them, mind you, but /delight/ them.”
― The Pragmatic Programmer: From Journeyman to Master
― The Pragmatic Programmer: From Journeyman to Master
“People find it easier to join an ongoing success. Show them a glimpse of the future and you’ll get them to rally around.[7]”
― The Pragmatic Programmer: Your Journey to Mastery, 20th Anniversary Edition
― The Pragmatic Programmer: Your Journey to Mastery, 20th Anniversary Edition
“By coding at a higher level of abstraction, you are free to concentrate on solving domain problems, and can ignore petty implementation details.”
― The Pragmatic Programmer
― The Pragmatic Programmer
“In some ways, programming is like painting. You start with a blank canvas and certain basic raw materials. You use a combination of science, art, and craft to determine what to do with them.”
― The Pragmatic Programmer
― The Pragmatic Programmer
“Programmers are constantly in maintenance mode.”
― The Pragmatic Programmer: From Journeyman to Master
― The Pragmatic Programmer: From Journeyman to Master
“Just as in financial investing, you must invest in your knowledge portfolio regularly.”
― The Pragmatic Programmer: From Journeyman to Master
― The Pragmatic Programmer: From Journeyman to Master
“In an article in the April 1999 CACM, Robert Glass summarizes research that seems to indicate that, while code inspection is effective, conducting reviews in meetings is not.”
― The Pragmatic Programmer: From Journeyman to Master
― The Pragmatic Programmer: From Journeyman to Master
“There is a simple marketing trick that helps teams communicate as one: generate a brand. When you start a project, come up with a name for it, ideally something off-the-wall. (In the past, we've named projects after things such as killer parrots that prey on sheep, optical illusions, and mythical cities.) ...Use your team's name liberally when talking with people. It sounds silly, but it gives your team an identity to build on, and the world something memorable to associate with your work.”
― The Pragmatic Programmer: From Journeyman to Master
― The Pragmatic Programmer: From Journeyman to Master
“A very simple but particularly useful technique for finding the cause of a problem is simply to explain it to someone else. The other person should look over your shoulder at the screen, and nod his or her head constantly (like a rubber duck bobbing up and down in a bathtub). They do not need to say a word; the simple act of explaining, step by step, what the code is supposed to do often causes the problem to leap off the screen and announce itself.[7] [7] Why "rubber ducking"? While an undergraduate at Imperial College in London, Dave did a lot of work with a research assistant named Greg Pugh, one of the best developers Dave has known. For several months Greg carried around a small yellow rubber duck, which he'd place on his terminal while coding. It was a while before Dave had the courage to ask....”
― The Pragmatic Programmer
― The Pragmatic Programmer
“Rather than construction, software is more like gardening—it is more organic than concrete. You plant many things in a garden according to an initial plan and conditions. Some thrive, others are destined to end up as compost.”
― The Pragmatic Programmer
― The Pragmatic Programmer
“We who cut mere stones must always be envisioning cathedrals.”
― The Pragmatic Programmer: From Journeyman to Master
― The Pragmatic Programmer: From Journeyman to Master
“In addition, build dependencies may not be the same as test dependencies, and you may need separate hierarchies.”
― The Pragmatic Programmer: From Journeyman to Master
― The Pragmatic Programmer: From Journeyman to Master
