Golf, Poker and Software

Last week I heard an interview with a  golf psychology coach who had recently added poker psychology coaching to his repertoire.  Golfers and poker players alike hire him to help them deal with the psychological aspects of their respective games.  Predominantly his clients are dealing with how to prevent golfers from 'choking' and poker players from 'tilting'.

His approach in both cases is to narrow the skill gap a player experiences between their 'A' game and their off-game which they can experience under stress.  Players who must perform under pressure tend to revert back to what is known as procedural memory - actions which are performed when the brain is no longer functioning normally.  The skill level captured at the procedural memory level governs how you will react when stress shuts down normal functioning of the brain.

Essentially, the best players under pressure are those whose skills in their off game are streets ahead of their competitor's.  How these players achieve this gap reduction is through repetition of the necessary skills until they become second nature and therefore part of procedural memory.  An example of things that move to procedural memory are activities like driving a car.  How many times have you arrived home, and realize that you can't really remember the details of the trip?  You were using skills at the procedural memory level which allowed your mind to be elsewhere.

This is interesting to me due to the work I've been doing with the Dreyfus skills acquisition model for assessing the skill level of agile teams.  It struck me that software teams (and individuals) react under date-related pressures in a manner that is governed by similar forces - if quality agile techniques are not second nature to the team, they tend to revert back to old, less than desirable ways.  For most people this transition of skills to procedural memory takes disciplined, directed effort.  Sports and game players must practice endlessly before they are expected to perform during a game.  Software developers must practice as a normal course of action; it's always game day in software development.