On The Law of Demeter and the Power of Nuanced Discourse
Sometimes it is the details that need to do the talking.
We once had a team discussion about Demeter’s Law and the concept of coupling in our software.
My colleague pointed out that our modules were too interdependent and required too much knowledge about one another. It was, he said, as if we were buying ourselves a train ticket, and had to tell the agent behind the counter where to find the printer paper.
This close coupling, my colleague argued, made our code prone to breaking when changes were made.
The others weren’t convinced that things were that bad, and the conversation soon became stagnant.
As the team looked to me for a decision, I realised that I needed more information. So I asked my colleague if he would be willing to give us a talk on Demeter’s Law and how he got to understand its merits.
He agreed and the talk happened a few days later. When he finished, there was silence. Then one of my colleagues said: “I have to say this is very convincing.” The others agreed, and no further debate was needed.
So when people disagree on a complex topic, the conversation might need more depth. The devil may be in the details, but so is understanding.