"It strikes me that the iterative development boys are on the right track. Although it's just a fancy name for what every cowboy carpenter doescut and try. Those boys know that they can't measure or cut that accurately, so they rough it out first, and then fix it until they're done. Of course you guys would call it 'successive refinement on subsequent iterations.'"
I detected a small note of sarcasm in Roscoe's summary. But he was not to be deterred.
"Of course, the cowboy carpenter has to be more careful than you guys. He knows that he can always take a little more off, but adding material back is hard. Learned that from his barber. So he always has to make his first cut the right way. Some big city comptrollers use that algorithm, too."
Now Roscoe always pronounces the "p" in comptroller so that you know that he knows the right word. But "algorithm" came out of his mouth sort of like "I'll-go-rhythm." Oh shoot, I thought. We are in big trouble. Roscoe has learned a new word.
"Roscoe, where did you pick up that word 'algorithm'?" I asked.
"Well, son, I've been talking to some software architects…" he trailed off.
"Huh," I replied, "who told you to do that?"
"First of all, you did. You said talk with people. Hey, I may look stupid, but I know what I don't know. There's a big difference between reading a set of blueprints and producing one. So I went and palavered a bit with those good old boys."
"Fair enough," I said. "What did you learn?"