Good Todd's Notable Quoteables

Once upon a time I worked at a financial services company on a software team with another Todd. Before long we came to be known as Good Todd and Bad Todd. I had a collection of quotes I liked and posted for myself and team-members to keep in mind and glean insights from - I especially appreciated the quote-digs against over-abstraction, "lasagna-code", and Alan Kay dissing C++.

Here are a few from the current collection of Good Todd's Noteable Quoteables...
“The most effective debugging tool is still careful thought, coupled with judiciously placed print statements.” - Brian Kernighan 
“Premature optimization is the root of all evil (or at least most of it) in programming” - Donald Knuth
“First make it run, then make it run fast.” - Brian Kernighan  

“...innovation comes from people meeting up in the hallways or calling each other at 10:30 at night with a new idea... And it comes from saying no to 1,000 things to make sure we don't get on the wrong track or try to do too much. We're always thinking about new markets we could enter, but it's only by saying no that you can concentrate on the things that are really important.” - Steve Jobs
“Everyone knows that debugging is twice as hard as writing a program in the first place. So if you're as clever as you can be when you write it, how will you ever debug it?” - Brian Kernighan
“Interface matters to me more than anything else, and it always has. I just never realized that... People change the world by using things. The focus must be on the "using", not the "thing.” - Brett Victor
“I invented the term ‘Object-Oriented’, and I can tell you I did not have C++ in mind.” - Alan Kay
“First, solve the problem. Then, write the code.” - John Johnson
“Do you not realize I have had diarrhea since Easters?” - Senor Ramon, Nacho Libre
“I don’t want to get paid to lose. I wanna WIN!” - Nacho, Nacho Librepage1image14928
“Adding manpower to a late software project makes it later” - Fred Brooks
“However little television you watch, watch less.” - David McCullough
“Creativity is just connecting things. When you ask creative people how they did something, they feel a little guilty because they didn’t really do it, they just saw something. It seemed obvious to them after a while. That’s because they were able to connect experiences they’ve had and synthesize new things. And the reason they were able to do that was that they’ve had more experiences or they have thought more about their experiences than other people.” - Steve Jobs
“The public should always be wondering how it is possible to give so much for the money.” - Henry Ford
“Brevity is the soul of wit.” - Shakespeare
“In the one and only true way, the object-oriented version of ‘spaghetti code’ is, of course, ‘lasagna code’. (Too many layers).” - Robert Waltman 
“Measuring programming progress by lines of code is like measuring aircraft building progress by weight.” - Bill Gates
“Don’t study the idea to death, with experts and committees. Get on with it and see if it works.” - Ken Iverson
“...A lot of people in our industry haven’t had very diverse experiences. So they don’t have enough dots to connect, and they end up with very linear solutions without a broad perspective on the problem. The broader one’s understanding of the human experience, the better design we will have.” - Steve Jobs
“There is a level of abstraction beyond which people don’t want to go. Take a good look at what you want to do, and try to come up with the long-term lazy way, not the short-term lazy way.” - Larry Wall
“All problems in computer science can be solved by another level of indirection.” - Butler Lampson
“...but that usually will create another problem.” - David Wheeler
“All problems in computer science can be solved by another level of indirection...Except for the problem of too many layers of indirection.” - David Wheeler
“Indeed, indirection and layering add space and time overhead, and can obstruct the code's comprehensibility...the effect that indirection has on the comprehensibility of our code is a very important concern, because over the last 50 years...the ability of humans to understand code hasn't improved much. Therefore...be especially wary when introducing layering to handle some vague, unspecified requirements we imagine might crop up in the future rather than today's concrete needs.- Beautiful Code ch. 17
“Layers are for cake, not for software.” - Bart Smaalders
“...sometimes you get a little feeling. And this is not an idea; it's just a feeling. It's like an odor of perfume. But the fun thing is that little feeling can actually lead you to look in the past in different places than you normally do, and you can bring those up to that feeling. And once you do that, that feeling starts expanding into a vision, and the vision expands into an actual idea...”
“Some of the most creative people I know actually operate this way. This is where those ideas come from that are not just incremental to the present. They come out of vague, even muscular sensations, that you have to go chasing to find out what they are. If you try to get the idea too early, it can only be in terms of the present.” - Allen Kaypage3image17976 page3image18136 page3image18296
“A lot of times, people don’t know what they want until you show it to them.” - Steve Jobs
“That’s been one of my mantras -- focus and simplicity. Simple can be harder than complex: You have to work hard to get your thinking clean to make it simple. But it’s worth it in the end because once you get there, you can move mountains.” - Steve Jobs
“If you think C++ is not overly complicated, just what is a protected abstact virtual base pure virtual private destructor and when was the last time you needed one?” - Tom Cargill
“Simplicity is prerequisite for reliability.” - Edsger W. Dijkstra
“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.” - Ray Ozzie
“Hofstadter's Law: It always takes longer than you expect, even when you take into account Hofstadter's Law.” - Douglass Hofstadter
“If we'd asked the customers what they wanted, they would have said ‘faster horses’” - Henry Ford
“When I am working on a problem I never think about beauty. I think only how to solve the problem. But when I have finished, if the solution is not beautiful, I know it is wrong.” - Buckminster Fuller
“For a sucessful technology, honesty must take precedence over public relations for nature cannot be fooled.” - Richard Feynman
“The most important single aspect of software development is to be clear about what you are trying to build.” - Bjarne Stroustrup
“I object to doing things that computers can do.” - Olin Shivers
“Complexity has nothing to do with intelligence, simplicity does.” - Larry Bossidy
“It is not that uncommon for the cost of an abstraction to outweigh the benefit it delivers. Kill one today!” - John Carmack
“Premature optimization, that's like a sneeze. Premature abstraction is like ebola; it makes my eyes bleed.” - Christer Ericson
“So much complexity in software comes from trying to make one thing do two things.” - Ryan Singer
Todd Hopkinson