Fights would not last if only one side was wrong.
— François de la Rochefoucauld
The mid-twentieth-century philosophers and purveyors of jaunty, tuneful hair, The Beatles, told us all you need is love. They emphasised the point: love is all you need. Love; that’s it. Literally. Nothing else.
It’s incredible how long a career they had given that they didn’t need to eat or drink.
In our working relationships with other inhabitants of the software factory, we would definitely benefit from more of that sentiment. A little more love might lead to a lot better code! Programming in the real world is an interpersonal endeavour, and so is inevitably bound up in relationship issues, politics, and friction from our development processes.
We work closely with many people. Sometimes in stressful scenarios.
It is not healthy for our working relationships, nor for the consequent quality of our software, if our teams are not working smoothly together. But many teams suffer these kinds of problem.
As a tribe of developers, one of our rockier relationships is with the QA enclave; largely because we interact with them very closely, often at the most stressful points in the development process. In the rush to ship software before a deadline, we try to kick the software soccer ball past the testing goalkeepers.
So let’s look at that relationship now. We’ll see why it’s fraught, and why it must not be.