Kirk does a nice job of explaining what’s wrong with the way a lot of people approach software design patterns.
His statement is hauntingly similar to the one I mentioned in ValuelessSoftware, which is why it caught my eye.
Interestingly, his observation applies equally to the "patterns" that jazz musicians use in their practice. Traditional jazz improvisation is all about trying to fit creative and spontaneous music composition on top of somewhat predictable chord progressions. Western music being as it is, you can quite easily abstract almost any "chord change" into its functional "purpose" (i.e. a II—2nd chord in a key, like D minor in the key of C major—followed by V usually function as the building of tension that leads to a I or the ultimate resolution). Because of this predictability and repetition in the chord progressions, it becomes easy to study the improvised solos of the masters and simply lift patterns of notes and apply them—properly transposed—in other instances of the same progression. "If it worked for Charlie Parker.…"
\*Albert Ayler played no licks\*
The funny thing about these patterns, is that you can listen to novice jazz improvisors and very easily pick out where they’re being used. This is largely because of the emphasis they place on use of these patterns. You can feel their minds working in overdrive as they get closer to the point where they want to insert the pattern. Then, the more natural, though probably limp, musical phrase that they’re playing abruptly drops off into an awkward silent pause. The pattern is then very mechanically crammed over the next one or two measures, followed by a moment of silent relief and pride as the improvisor recovers from the stress of trying to apply the pattern and then struggles to regain his or her footing as the journey continues.
With most jazz improvisors, you see the tendency to use patterns disappear over time. At first, they let go of the desire and then forced attempt to use the pattern that I describe above. Ultimately, individual patterns emerge and you only recognize these individual patterns in their playing (for the most part), with the old forced ones staying with Charlie Parker where they belong.
Incidentally, some of the best advice I ever received as a student of jazz improvisation came very unexpectedly from a teacher at the University of Memphis (www.vtjazz.org/bios/rush.html) during a class on improvisation. "Stop playing the changes, dammit!" This was an example of a truly great improvisor (you really should hear Gene play) telling a student not only to not try to play these melodic patterns, but to stop even being hindered by the patterns of chord changes that underly the improvisation. Just play.
In jazz, the patterns are worth studying and even practicing. But when you show up somewhere to play for someone else, you should allow their teachings to come through in your music instead of allowing the patterns themselves to come through. Otherwise, you’re just standing their playing a bunch of II-V-I licks. A computer can do that.