Domain Knowledge is King

There was once a King named Harold who ruled over a glorious Kingdom. His lands stretched from the highest mountains in the North, to the whitest beaches in the South. His people were a pleasant, happy bunch and this was driven from the top. Harold was a kind, generous king who served his people true and fair. He had grown his Kingdom through assimilation and was always keen to promote integration of cultures. Whenever he came knocking at the door of a new land, the locals would be happy to join Harold knowing they would lead a better life.

But things were not always this good. During one of his earlier conquests, Harold came to rule over a small country with a strange populous. This was a land where people were not very well off. Society had not advanced quickly and people liked to do things the traditional way. There was a strange look about the locals, a skinny and deprived look. The issue it seemed to Harold, was that these people suffered from malnutrition. And it was true. Locals would survive on scraps and small rations, often forced to forage just to keep going.

Food for thought

An idea presented itself to Harold upon witnessing this. We can win around the people of this land by feeding them, he told his advisors. And so he sent message to his finest grain producers, to deliver a bounty. The locals would have more grain than they could shake a loaf of bread at. They would fall in love with Harold for solving their plight, and happily embrace his Kingdom.

The grains were duly delivered and the locals began eating. Only there was a problem. The people who ate the grains began getting sick and rejecting the food. They began to think Harold was attempting to poison them. But the issue was far less villainous. The issue was that their bodies simply couldn’t process the grains as they had never encountered them before. They had eaten a simple diet and grown accustomed to this food, so grains simply would not do.

Fine, began the King. If this is the case, I will send my finest farmers to the land and have them plant fruit and vegetables from across my Kingdom. And so he sent message and the farmers duly arrived and planted the finest produce they had. Fields of trees and ploughed land took hold and as the rains descended, everyone waited to see the harvest. Only the harvest never arrived. For you see, whilst these fruit and vegetables may have thrived in far away lands, they were not suited to the local climate. And so the crops died and the locals stayed hungry and disillusioned.

What do the locals want?

Luckily, Harold was nothing if not persistent. He was determined to win over the locals and not let these failures stand in his way. And so he did something radical. He decided to learn the locals language, and then hold court with them to see if they could help him help them. He spent many difficult months with experts in lingustics learning this strange new way of communication. Sometimes he would hear words similar to his own tongue, but used in completely different ways. Eventually though he succeeded and invited the locals to his high castle.

What are problems, he asked. How can I help you to lead better lives? They talked at length and it transpired his initial assessment was not far wrong. They were a hungry people and needed more food. But the problem wasn’t variety or supply from afar. It was really rather simple. They needed basic tools to assist them in their agricultural pursuits. How could this be all they need, Harold asked himself. I offered the finest produce and most brilliant minds, and all they want is spades and forks?

He duly supplied them with all they asked for, and the locals began work. For what Harold had failed to realise was that whilst the locals may look as though they knew nothing, they indeed did. They knew about the local climate. They knew about the local soil types. They knew what would grow in these lands. And so a season later, they were able to produce enough food for everyone plus some to spare. And they thanked the King for solving their problems, and happily joined him in his Kingdom.

Sorry, I thought this was about technology?

And indeed it is. You see Harold was ignorant to the domain knowledge of the locals. He attempted to impress his own opinions on their problems. He attempted to over engineer solutions and throw everything he had to impress the locals. But it was only when he took the time to understand their ways and question what they really wanted, did he get to the answer.

This is often the case with technology. Developers will be so keen to try out a new set of tools and crowbar them into a solution, that they fail to fix the root cause. But our jobs are to understand the domain of our customers, how they think and describe the world around them. To be able to talk to them in their language, and translate that into requirements we both understand. To know the quirks and foibles of the domain and work around these. Only then are we equipped to solve the issue they face. And often, the solution will be simple and quick, the tools tangential.

And so take heed of the lessons of King Harold. Learn your local domain.