Tacit Knowledge

by Gene Callahan

Although I haven’t been programming professionally for several years now, I began re-reading Jon Bentley’s Programming Pearls for fun the other day, and ran across this:

“Good programmers are a little bit lazy: they sit back and wait for an insight rather than rushing forward with their first idea. That must, of course, be balanced with the initiative to code at the proper time. The real skill, though, is knowing the proper time. That judgment comes only with the experience of solving problems and reflecting on their solutions.”

Even in this most algorithmic of disciplines, there is no algorithm for acting like a skilled practitioner.

3 thoughts on “Tacit Knowledge

  1. This reminds me of the (alleged) difference between physicists and mathematicians; the claim is that physicists are lazy and try to find a trick rather than using brute force to solve a problem.

    There was an anecdote about people trying to see which aspect a famous mathematical physicist would be (and I can’t remember who it was). So they told him the puzzle about two trains heading toward each other, and a bird flying from one train to the other, back and forth back and forth back and forth, until the trains meet. The trains are initially 50 miles apart, each moving at 25 mph, and the bird can fly at 50 mph.

    So the question is, how much total distance does the bird cross before the trains meet?

    The trick of course is to say the trains will meet in one hour, so the bird must cover 50 miles in that time.

    So the famous guy almost immediately says “50 miles,” and the questioners smile and say, “Ah you saw the trick!”

    And he goes, “What trick?” I.e. he had done the infinite sum in his head that fast.

    (I’m hoping someone can fill in the details of my almost-irrelevant anecdote.)

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s