4 ms·
A few of my favorites, not found in the linked article: "There are two ways of constructing software. One way is to make it so simple that there are obviously
by olooney 8y ago
A few of my favorites, not found in the linked article:
"There are two ways of constructing software. One way is to make it so simple that there are obviously no deficiencies. The other is to make it so complex that there are no obvious deficiencies."
C.A.R. Hoare
"The purpose of software engineering is to control complexity, not to create it."
Dr. Pamela Zave
"The most important single aspect of software development is to be clear about what you are trying to build."
Bjarne Stroustrup
"The cardinal sin is to make a choice without knowing you are making one."
Jonathan Shewchuk
"Good code is short, simple, and symmetrical - the challenge is figuring out how to get there."
Sean Parent
"The ability to simplify means to eliminate the unnecessary so that the necessary may speak."
Hans Hoffman
"Any intelligent fool can make things bigger, more complex, more violent. It takes a touch of genius - and a lot of courage - to move in the opposite direction."
Albert Einstein
"The cost of adding a feature isn't just the time it takes to code it. The cost also includes the addition of an obstacle to future expansion... the trick is to pick features that don't fight each other."
John Carmack
"If we'd asked the customers what they wanted, they would have said, "faster horses."
Henry Ford
"What I cannot create, I do not understand."
Richard Feynman
"Such is modern computing: everything simple is made too complicated because it's easy to fiddle with: everything complicated stays complicated because it is hard to fix."
Rob Pike
"A program is a poem: you cannot write a poem without writing it. Yet people talk about programming as if it were a production process and measure "programmer productivity" in terms of "number of lines of code produced." In doing so they book that number on the wrong side of the ledger: We should always refer to "the number of lines of code spent."
Edsger Dijkstra
"As a programmer, it's your job to put yourself out-of-business. What you can do today can be automated tomorrow."
Doug Mcilroy
"The whole point of getting things done is knowing what to leave undone."
Oswalf Chambers
"Simplicity is hard to build, easy to use, and hard to charge for. Complexity is easy to build, hard to use, and easy to charge for."
Chris Sacca
"Knowledge is a process of piling up facts. Wisdom lies in simplification."
Martin Luther King, Jr.
"Measuring programming progress by lines of code is like measuring aircraft building progress by weight."
Bill Gates
"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 Kernigham
"It ain't what you don't know that gets you in trouble. It's what you know for sure that just ain't so."
Josh Billings
"Be careful that victories do not carry the seeds of future defeats."
Ralph Stockman
"The most effective debugging tool is still careful thought, coupled with judiciously placed print statements."
Brian Kernigham
"Controlling complexity is the essence of computer programming."
Brian Kernigham
"Simplicity is prerequisite for reliability."
Edsger Dijkstra
"...but there is one quality that cannot be purchased that way - and that is reliability. The price of reliability is the pursuit of the utmost simplicity. It is a price which the very rich find most hard to pay."
C.A.R. Hoare
"UNIX is simple. It just takes a genius to understand its simplicity."
Dennis Ritchie
"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-users and administrators frustration."
Ray Ozzie
"A charlatan makes obscure what is clear; a thinker makes clear what is obscure."
Hugh Kingsmill
"Fools ignore complexity, pragmatists suffer it. Some can avoid it. Geniuses remove it."
Alan Perlis
- Gibbon1 8y ago> "The purpose of software engineering is to control complexity, not to create it." Dr. Pamela Zave Them: We need to add this feature for completeness. Me: We do not need that feature to ship and make money. Them: If we don't we're creating technical debt! Me: You want to create a feature that needs to be maintained that isn't used in production. That's worse. Them: It won't be finished until this feature is added. Me: The program will never be finished. Them: You're being unnecessarily difficult. ^^ conversation last week.