Tweet

Wednesday 22 February 2012

The power of language

Words have power. 
The names of your modules and features have high importance. Yes – of course it will lose its technical meaning eventually, once it compiles, but the name of the module will have a strong influence on what will people think should be the module’s purpose, or how it will evolve over time 

Captain Blood (1988)

When a module implements a common practice – try to pick the common name to it (See Design Patterns / GoF). Use adaptors, containers, parser, transmitters and receivers – so users will know what to expect. This way the discussion will enjoy the prior experience of the team, and you will talk in higher level – instead of losing focus on obvious technical details. 

The real fun begins when there is no obvious name for your new creation. In those cases – metaphors are your best friends. Picking the name to match a successful metaphor will literally create a new language in the team and outside it. It will also make your design human readable – as it will tell a story. The most successful names indeed live far beyond the implementation, and will be reappearing on future designs, marketing requirement documents and even in customer’s discussion.