An amalgamation of neat computer-related quotes I’ve collected over time. From textbooks, talks, and blog posts buried deep in Hacker News threads.
“There are only two hard things in Computer Science: cache invalidation, naming things, and off-by-one errors” — Phil Karlton
“Software can be permanent . . . Software’s duality as both information and machine afford a timeless perfection and utility that stand apart from any human endeavor . . . Among current languages, only Rust seems to share this aspiration for permanence, with a perspective that is decidedly larger than itself.” — Bryan Cantrill
“Every computer program is a model, hatched in the mind, of a real or mental process. These processes, arising from human experience and thought, are huge in number, intricate in detail, and at any time only partially understood. They are modeled to our permanent satisfaction rarely by our computer programs.” — Alan J. Perlis
“A distributed system is one in which the failure of a computer you didn’t even know existed can render your own computer unusable” — Leslie Lamport
“The best teacher I had in graduate school spent the whole semester destroying any beliefs we had about computing. He was a real iconoclast. He happened to be a genius, so we took it. At the end of the course, we were free because we didn’t believe in anything. We had to learn everything, but he destroyed it. He wanted us to understand what had been done, but he didn’t want us to believe in it.” — Alan Kay
“The real hero of programming is the one who writes negative code.” — Doug McIlroy
“It is my purpose to transmit the importance of good taste and style in programming, but the specific elements of style presented serve only to illustrate what benefits can be derived from ‘style’ in general. In this respect I feel akin to the teacher of composition at a conservatory: He does not teach his pupils how to compose a particular symphony, he must help his pupils to find their own style and must explain to them what is implied by this.” — Edsger Dijkstra
“It is not a language’s weakness but its strengths that control the gradient of its change: Alas, a language never escapes its embryonic sac.” — Alan Perlis
“At its best, starting a startup is merely an ulterior motive for curiosity. And you’ll do it best if you introduce the ulterior motive toward the end of the process. So here is the ultimate advice for young would-be startup founders, boiled down to two words: just learn” — Paul Graham
“And you’re right: we were not out to win over the Lisp programmers; we were after the C++ programmers. We managed to drag a lot of them about halfway to Lisp. Aren’t you happy?” — Guy Steele (about Java)
“We should have some ways of connecting programs like garden hose — screw in another segment when it becomes necessary to massage data in another way. This is the way of IO also.” — Doug McIlroy
“Branch-free code is favored, because on many computers, branches slow down instruction fetching and inhibit executing instructions in parallel.” — H.S. Warren
“The best way to prepare as a programmer is to write programs, and to study great programs that other people have written . . . You’ve got to be willing to read other people’s code, then have other people review your code.” — Bill Gates
“Programming is the act of turning an inexact description of something (the specification) into an exact description of the thing (the program)” — Joe Armstrong
“Image is fragile, skills last forever” — George Hotz