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…
If a procedure named INSIGHT has been defined and then called seventeen times in the program, and the eighteenth time it is misspelled as INSIHGT, woe to the programmer. The compiler will balk and print a rigidly unsympathetic error message, saying that it has never heard of INSIHGT. Often, when such an error is…
In the real world the empty page might scare the writer. as the blank screen might intimidate the programmer, but now individuals found themselves in the position of having to "boot up" an entire universe of meaning, without any easy reference to the constellation of familiar objects that tend to reinforce the…
Thus, your knowledge is represented in various forms that are stored in different regions of the brain, to be used by different processes. What are those representations like? In the brain, we do not yet know. However, in the field of Artificial Intelligence, researchers have found several useful ways to represent…
When you were in college, did you ever meet bright kids who graduated top of their class in high-school and then floundered freshman year in college because they had never learned how to study? It's a common trap. A friend of mine calls it "the curse of the gifted" -- a tendency to lean on your native ability too…
Kakeru Seki: A fact is somehow related to another fact. Unless you understand these relationships, you won't be a real reporter. Noriko Hikima: True journalism! Kakeru Seki: Well, you majored in the humanities. Noriko Hikima: Yes! That's true--I've studied literature since I was in high school. Kakeru Seki: You havea…
Seibel: What do you think is the most important skill for a programmer to have? Fitzpatrick: Thinking like a scientist; changing one thing at a time. Patience and trying to understand the root cause of things. Especially when you're debugging something or designing something that's not quite working. I've seen young…
He says things like, "Do good stuff." He says, "If you don't do good stuff, in good areas, it doesn't matter what you do." And Hamming said, "I always spend a day a week learning new stuff. That means I spend 20 percent more of my time than my colleagues learning new stuff. Now 20 percent at compound interest means…
Seibel: Do you think of yourself as a scientist, an engineer, an artist, or a draftsman? Allen: I think of myself as a computer scientist I was involved in my corner of the field in helping it develop. And those were interesting times—the emergence of computer science—because there was a Ic lot of question about, "Is…
So I don't envy modern programmers, and It's going to get worse. The simple things are getting packaged into libraries, leaving only the hard things. That stuff is getting so complicated, but the standards that people are expecting are stunning. One of the ones ^i^ey showed me stunned me. He was showing me Google Maps…
One of the things that I've been thinking about off and on over the last five-plus years is, "Why is programming so hard?" You have the algorithmic side of programming and that's i close enough to mathematics that you can use mathematics as the basic model, if you will, for what goes on in it. You can use mathematical…