the power and danger of consistency

Humans crave to be, or appear to be, consistent.

This craving, when combined with commitment (notably public commitments) and you have a powerful and dangerous combination.

Consistency in software engineering is often thought of in code formatting, or data retention contexts, but the most interesting consistency is in interactions between engineers and decision making.

Consistency presents in different ways

On the underground in London, I often notice an curious interaction between passengers: there will be an empty seat, and neither of the commuters will want to sit in it. Even if this means standing in a more cramped and busy environment. (Lets put health / physical well-being reasons aside for a moment).

The interaction that causes the seat to go unfilled is often more to do with the series of events that lead up to the event, rather than the act of sitting. These events position the commuter as a ‘stander’ rather than a ‘sitter’. And that commuters desire to be consistent with this image of themselves causes them to make globally sub-optimal decisions in favour of presenting a locally consistent view of themselves.

Consistency is a great thing. It’s hugely important when setting expectations for colleagues, in interactions, code reviews etc. Being consistent allows others to work well with you, by understanding what you need from them. But the desire to present an outwardly consistent view can be exploited.

Harnessing the power of commitment

Commitment goes hand in hand with consistency. In order to be consistent we much commit to a position, and then stick to it. This commit and stick is where our desire to be consistent can be used against us. There are numerous examples of where commitment is exploited.

Weightloss programs

Many weightloss programs set goals, but not just for the individual they are set with the group, and the participants are encouraged to share these weightloss goals widely. In doing so the participants in the program are making a public commitment, and in order to appear consistent there’s a much larger pressure to stick to achieve those goals. It’s our desire to be consistent that drives us to achieve as much as the desire to lose weight.

Give a child “something to live up to”

Giving a child something to live up to can be a way to modify their behaviour. Telling a child that’s on the edge of some achievement category that they are in that category can encourage them to persist with the positive behaviours that have put them in that category in the first place.

For example; telling someone they are “very neat and organised”, irrelevant of if they really are can be a trigger for the desire for consistency. Through that childs past behaviours they have committed to a position of neat and organised. Noticing and raising that as a characteristic triggers the desire to appear consistent, meaning that child could be more willing / put in more effort to maintaining that image.

Code style guides

There’s always much argument about style guides for formatting code. Often engineers will have very different views on how they want to format code. This is the desire to be consistent with the previous code that they have written. Interestingly, the team that an engineer may be disagreeing with over the style guide may never have seen the previous code style of that engineer, and yet the desire for consistency is as internally binding as it is externally.

We can use commitment and consistency to resolve these issues, by getting engineers to agree together publicly what the style should be. Which might be committing to some opensource standard e.g. Google style. It doesn’t need to be inventing a new style format.

Give an inch take a mile

Commitment and consistency is the reason that Amazon’s famous “Disagree and Commit” management principle works so well. Amazon actively encourage disagreement, but the expectation is that all those involved in the decision commit to the outcome. If this is a public (among colleagues) commitment then there will be fewer (or zero) dissenters about the outcomes and decisions, as dissenting would go against the desire for consistency.

It might be a small and innocuous act, to commit to a decision that you might not have made yourself. It might feel like a small concession, but giving this inch exposes us to having a mile taken. We’ve “put our stake in the ground”, and the desire to appear consistent with this commitment will stop us from deviating too strongly from it.

The Internet Engineering Task Force (IETF), who are responsible for developing open standard for the internet and internet protocols has a principle of “rough consensus”. This loosely translates into “yes, I can live with that”. Asking those in a discussion, “can you live with that?” appears to be a very small concession to for those agreeing “yes, I can live with that”. But this is another public commitment to not disagreeing with the decision being made, as the view that you’ve presented (that you are keen to be consistent with) is someone who can live with the decision being made. This is another example of how a small concession exposes us to a whole bunch of ground being conceded.

Triggering consistency

What we can see is that presenting decisions that are not ideal as small concession triggers our desire to be consistent. Causing is to be more agreeable and supportive in the long term, ultimately getting more (or something!) done.

These small concessions can be:

  • Disagree and commit
  • Rough concensus: Can everyone live with this decision?
  • Let’s do this now, and we can fix it if it’s broken

What we can see in all the examples is that decisions will only be revisited if we do not create commitment to the outcome. As with commitment comes the desire to present the consistent image (internally and externally) causing longer term agreement and compliance with the decision.