This essay by Zed Shaw resurfaced on Proggit today.
Shaw’s essay talks about mastery, as seen from the perspective of martial arts:
After reading books on martial arts history for years, and studying everything I can, I started to see a commonly understood pattern. Almost all people considered masters of their art finally come to such a deep knowledge that they can do more with less. Rather than a flurry of complicated leaping and jumping, the master will simply step to the side and make one calculated strike. Every story about old masters is the same in that, even though they were frail and near death, their knowledge and abilities were so deep and clear that their simplest motions had the greatest power. For a master, the pompous and flowery motions were just wastes of energy.
Some of that might go back to the philosophical underpinnings of many martial arts (particularly Taoism and Chan Buddhism); but a lot of it must come from experience. Eventually the thrill of learning and using a new technique or tool becomes tedious. You just want to get the job done with a minimum of fuss — or perhaps, to win the fight with a minimum of effort.
Meanwhile, in some corners of the programming community, the title “rockstar” has come to be applied to those seen as particularly capable at this or that technology. The rockstar archetype is completely unlike the martial arts master stereotype. Rockstars are disruptive, outrageous floutlaws who amaze with raw talent. Rockstars assault the senses with works of extreme intensity and (often) complexity. The watch-word of the stereotypical rockstar is excess — nothing is done in moderation. The cardinal value of a rockstar is flourish, brilliant improvisation and the ability to push out complex, intense work that inspires a deep and immediate emotional response.
Meanwhile, the stereotype of the wizened old martial arts master is very different. The master disrupts only the student’s thinking. He or she flows easily within society at large. They impress with understated, precise economy. Through a lifetime of effort, the master has learnt the very high cost of effort. Through mastery they have learned to ignore most of what they know. The master’s way to improvise is not to create the most complex thing they can manage (as the rockstar does), but rather, to select the simplest possible means to achieve the immediate ends.
Neither is, truly, a universally “best” archetype for programmers to model themselves after. We can borrow from both. Speaking for myself, perhaps the best fusion of rockstar and master is the jazz musician — jazz musos also have a quasi-taoist philosophy and the years of endless training to make that naturalistic-yet-ornate improv seem utterly simple. The jazz player is a rockstar who became a martial arts master. Perhaps we could aim to be noodlers and jammers, rather than hotel-room wreckers.