The English language is a very complex beast which can easily strike confusion in the most unsuspecting moment. Take, for example, the word “lollies”. Did your mind immediately jump to a bag of gummy bears, redskins, bananas or milk bottles that you get from the garage? Or instead did you start thinking of a frozen dessert on a stick? If you thought the former, then, like me, you probably are Australian. Because the English term for it is sweets, and the American version is candy (although I doubt that they have such wonderful lollies as bananas and milk bottles). And the frozen-dessert-on-a-stick - thats an iceblock for me!
Take another example - when Sisqo’s Thong Song came out I didn’t really understand why someone dedicate an entire song to $1 rubber plugs - until I watched the video clips and I realised that he wasn’t referring to “flip flops”.
The lesson that I have learnt living in the UK is that I have to be very careful with the words that I use, lest I cause confusion by saying that someone was running around with their pants[1] off[2].
And this is also applies to the words and language that we use around our business, between developers and in our code. Too often we describe concepts by words like “that thing” or “this stuff” which can obfuscate what it really is, and hence hinder our ability to model it. I often see complexity, misunderstandings and hacks creep into code bases when the original designer has referred to an information concept as “this thing” without taking the time to name it. I find that spending the energy talking to the business to understand what you are really producing helps clarify understanding which in turn distills the model into a simpler, easily understood model.
I had this demonstrated to me yesterday, when I came across a pair discussing how to “shove” this concept of “a thing that when clicked on opens up a popup with stuff in it” onto the model. As I listened to the conversation, I noticed just how muddled the model and the situation was becoming, so I decided to intervene with some of my words of wisdom about what they were trying to model. As soon as we worked out that the “thing that when clicked on opens up a popup with stuff in it” translated into “a help message”, we were easily able to see exactly where in our model it should go.
So, never underestimate the power of the words we use. When faced with a confusing concepts strive to distill it into easily understood, well defined names.
[1] pants in Australia are trousers - pants in the English vernacular are what I call underpants.
[2] yes I have once said that at work after I saw a pair of jeans on the table and was a little confused by what someone must be wearing!