If You Want Better Software Delivery Then Stop Playing Politics

Politics and software

What Are Politics?

The word ‘politics’ describes activities that are aimed at either maintaining or improving someone or somethings ‘status’ in an organisation. They are carried out in the forms of omissions of truth, massaging of facts or simply someone saying something isn’t true or false (even though you think the opposite).

The motivation for the individual to use politics is firstly intrinsic (it is to do with protecting their own position) and secondly extrinsic (to protect a cause or sub-group within a larger group of control). Politics’ concern is as a protection mechanism against danger – this is hardwired to us from an evolutionary perspective.

All of us may play politics from time to time; but it is a damaging behaviour to the performance of software teams. It’s important to learn to remove politics from both ourselves and our teams if we want to perform.

In the short term playing politics can work, but in the long term it damages you and everyone around you.

Why Do They Exist

I don’t believe people ‘set out’ to play politics. But it ends up being the default position when people make a mistake or are involved in something which isn’t ‘going to plan’. They are worried about the consequences of making it completely clear to everyone about the reality of some situation.

In short when we seek to hide any amount of ‘best’ information from anybody else we end up playing politics because we are AFRAID.

As individuals we may sometimes want to keep certain thoughts to ourselves; making everyone aware of every running internal dialogue is not helpful all of the time. But harmful politics come in the form of being cognisant of the fact that the information we hold in our head (no matter how damaging to our short term cause or image) would actually be better for our organisation, team or company long term – if we just let it out!

How Does It Harm A Software Project

In the world of IT; information is our asset. For information to be useful it must be the truth, and we must only have one version of it. It is cardinal. This means that if we have conflicting information which overrides past truths then it stands to reason that the most efficient form of IT is where each new bit of information which is more true; ‘can’ and ‘should’ override past truths. Having cardinal and up-to-date truth IS the most efficient form of IT.

In software development the need for cardinal truth which is as ‘up to date’ as it can be is even more pressing because of two main reasons.

  1. Software analysis, development and delivery is not as static as other IT, the speed at which information moves through a development team is the fastest form of IT there is since each developer is creating the definition of information in files (programming).

  2. The overlapping concerns of developing software is exponential. This means that the cost value payoff at each stage of incremental development is based on the stage before. The value payoff of labour against returns on developing software is like an ‘upside down’ pyramid. The bottom has little information but a big effect since each layer becomes more and more dependant on the last. The more we hide the truth the more unstable the pyramid becomes. The longer the inaccurate information exists the harder it is to move up the pyramid. Sometimes the pyramid collapses.

The later in the day people know the truth and reality of a situation in software projects the more risk it adds. All work in IT (especially software development) is based on knowledge (the knowledge to build features to solve a problem, the knowledge to fix a bug based upon it’s severity, the knowledge to increase a budget based on the effectiveness). The less accurate knowledge we have, the worse our delivery.

What benefits the individual costs the organisation.

Anti Transparency

Any good software engineer will tell you that transparency is best in a software project. Transparency brings trust, it brings lowered stress, it brings unified vision. Politics is the OPPOSITE of transparency. Playing politics is damaging because it ultimately slows down the ability of the engineering team to remove uncertainty.

Removing uncertainty is very important to your business and your reputation.

What Can You Do About It

My leadership coach taught me that people play politics for a reason; and that they do it because they are hiding something.

But they don’t do it because they are BAD.

They do it because they are SCARED.

The only way to address people scared is to ask them why they are scared. But don’t ask them in front of other people. They are already scared and this will make them upset. We all get scared. So have empathy.

Ask them out for a coffee, ask them out for a beer, and find out ‘why’ they are using politics.

Your objective is to help them not be scared. And you do this by coming up with a plan with them, together. See if you can be their ally and help them to stop using politics and begin telling the truth for the sake of performant software projects.

Because in the end the truth will set us free 🙂