(Repost from here)

I often find myself using the word ‘theatre’ when talking about tech in large organisations. Putting on a show, high-visibility tasks, boxes to tick, so everyone can say, ‘We’ve taken care. We’ve done this properly’.

You see this with Prod releases: Huge Change Request forms, multiple approvals required (many times from people who - no disrespect - don’t understand the changes that they’re approving). How many times have we seen someone have to ‘chase an approval’ for hours, finally tracking someone down who then clicks a button and says, ‘There, all done’?

But hey, we controlled the [heck] out of that Production change, didn’t we!

But without care, anyone can end up doing this: When we first moved to git (many years ago), we chose to encourage code reviews by mandating pull requests. What this meant in practice was:

‘Hey, can you approve this PR for me?’ ‘Sure, no problem. Done.’ ‘Thanks!’

We then patted ourselves on the back for being diligent, for following ‘best practice’.

We’re writing code. We do need care, but what we need just as much is responsibility, ownership. And while the ’check box’ mechanisms are often necessary to demonstrate due diligence, we must retain responsibility. This is, IMHO, what DevOps is about. It’s not a role, team, or tool. It’s cultural.