Skip to main content

Ubiquitous Language

Ubiquitous language is all about mastering a consistent and common language across diverse skill sets, enhancing cohesion and understanding. Too often we see pieces of code with a language that differs from that used by the customer, business, and other engineers who own a different piece of the puzzle—this increases cognitive load tremendously and produces misunderstandings, resulting in unused features.

Using customer language inside the codebases and naming things in line with what they are, or what the code does for the customer, makes life a lot easier and decreases the cognitive load for everyone involved. A good evaluation of this would be an experiment in which customers are asked to read a code for a certain feature they use. If they can do so with minimal guidance, then you’re in a good place; if not, well… you know.

Note: We acknowledge that not all customers are equal and some are more equal than others; thus, the chance that all of them use exactly the same language is minimal. Hence the notion of “with minimal guidance”—if some of the guidance doesn’t work and you must spend a huge amount of time to help customers understand, then we would dare to question how well others in the organization truly understand the customers' needs.