Thursday, June 7, 2007

The Zen of Code Virtuosity

(To repeat readers: if you read the initial Ether/DI post, check it out as it has been edited/clarified. I screwed up.)

As many know, this blog draws a parallel between software development and composing music, particularly with respect to the spectrum from "master" or "virtuoso" to "apprentice".

In my experience, I have learned that the masters say curious things sometimes. Here are a few key phrases. I think the masters say these more often than the apprentices.

"I was wrong"

My unofficial definition of intellectual honesty is an effort to prioritize truth over one's own ego. It's not easy: everyone falters at times. But the masters seem to have enough confidence and passion for excellence that they can keep their egos in check.

Also, they aren't afraid of failure. Beethoven's original manuscripts were marked up tremendously as he continually refined his ideas (for months, years), polishing them and making them right.

"I don't know (yet)"

This phrase echoes intellectual honesty too, but also curiosity. The masters are often intrigued by new, cutting edge ideas that are outside of their comfort zone. They're thinkers, philosophers.
If there is something we aren't sure about, as developers, then we probably aren't pushing our boundaries enough. Or we are boorish goons.

"You have five fingers on each hand just as healthy as mine."

It might be apocryphal, but legend has it that old man JS Bach said this to a student. The point is his modesty. He was Bach for freak's sake, and yet felt that it was sheer hard work that separated him from the rest. That's ego management.

I have heard similar tales about some fantastic modern guitar players. One favorite is Joe Satriani. He can blow you off the stage, pal, and yet is a regular "Joe" and a zen-like teacher in his own right.

The Upshot

I'm not a master, but I'm going to try these phrases in my next meeting. If they don't seem to fit the situation, then let's go with this Zen dandy:

I'm listening to the sound of one file merging.

No comments: