During the RSTA class I asked a question about language and communications:
On one hand, I wholly agree with the notion that we should be attentive with words. Like checking vs testing, “quality assurance”, and all those other things. I find myself as they say “nit-picking” quite often.
On the other hand, I also follow a rule “if your team understands you, words don’t matter”. Especially, if you come to the established project with existing vocabulary. It can be bizarre and absurd (my favorite was “bug validation” for the process of checking bug fixes), but it’s habitual to everyone, so you’ll likely spend more time trying to “reteach” than working. And you’ll probably fail.
So… how to live with this contradiction?
As I understand you, contradiction is resolved by considering how much harm it can create?
That makes sense. Pain and risk analysis in practice. Even though I said that “defect validation” absurdity was my favorite, it wasn’t harmful for thinking processes: we usually didn’t even call it like that and used abbreviation “DV”. Or sometimes QA (grrr). I noticed that majority of non-dev colleagues don’t even know what A stands for. Probably it’s the reason why some testers come up with new reinterpretations like “Advocate” or “Assistant”. BTW, here is a funny example.
While James debated that there is no contradiction, it is there. It’s my internal contradiction. I feel these sides of me constantly struggling; for an outside viewer it can be perceived as inconsistency.
I haven’t found resolution to this conflict yet, but it occurred to me that it is based on the conflict between characteristic testers' nit-pickiness and my amateur linguistics studies.
You see, when it comes to languages in general, my position is 100% on the side of “all is fine as long we understand each other”. Why?
I’m not English native speaker. And I’m not gifted with an ability to perfectly emulate a native pronunciation. In fact, sometimes I have to speak with an even heavier Russian accent than my usual, because it’s easier to understand for some people.
Now, if we go even further, what is a native pronunciation? Standard American? Or Royal UK? Or Canadian, eh? So, even if I could speak using one proper variant, it still won’t be really native in many contexts.
Obvious point with the same examples as before. But that’s English, the de-facto new Latin. Let me tell you an anecdote from Russian. I was born in the Northern Kazakhstan in the city on the border with Russia. You’d imagine not many vocabulary differences. Yet, the moment you cross the border everyone can tell that you’re from Kazakhstan just by one extremely common word: “sotka” (contraction for “a cell phone”). In Russia they use “mobilka” (contraction from “a mobile phone”). This reminds me of “smoke” vs “sanity” testing a lot.
Some words with the same spelling can have completely distinct origins. For example, “bear”:
- as for an animal came from Proto-Indo-European
*bʰerH-(grey, brown) or
- as for “to sustain” came from Proto-Indo-European
And the opposite situation, when words with different spelling and meaning came from the same origin, e.g. “suit” and “suite”.
People tend to make wrong assumptions about modern spelling and pronunciation. We think we understand words and their relative closeness. We don’t. Therefore, many everyday conclusions about them are also faulty. Those who try to be on a safe side refer to dictionaries, but here is a catch: dictionaries are opinionated language slices. That’s why there are so many dictionaries: general, jargon-specific, etymological. There is no single point of truth you can safely refer to. Isn’t it funny when you read news about some big-name dictionary finally including a word that was in use for a long time?
By the way, in Russian “тестер” while being direct calque of “tester” is a name for devices like multimeter. Electrical engineers coined this term in Russian earlier than our role was invented (so we are named “тестировщик” ~ “testist”). It’s quite funny considering how much emphasize is there on testing being human activity.
All aforementioned are just smaller parts of overall language evolution. For some reason we are accustomed to perceive a language as something stagnant and with rigid unchanging rules. Maybe because it’s easier to teach like that in school? And nothing can be further from true because languages are perpetually in flux, either for historical or geographical reasons. Before it was happening naturally without many obstacles, but now we have schools, official authorities like Académie française, and beloved grammar-nazis.
One of the best examples is an accentual system in Russian (stress). Whoever tried to learn how to pronounce Russian words would be certainly baffled how illogical it is. Natives make mistakes all the time. The reason is simple: current system is in the transition state from highly ordered and easy Proto-Slavic accent to the new someday also ordered but different accent. Yet right now transition is around 30% mark and it breaks havoc within speakers. What makes things worse are all those regulatory bodies and opinionated people who try to control this process and make you speak already obsolete way.
I won’t be able to stop arguing about some words. Even those who say that they are sick and tired of some common testing debates, still nit-pick on other concepts. It’s a part of human nature which is common not only in testing community: recently I’ve read an article by Troy Hunt about which way of API versioning is better. And the most valuable lesson from there is:
Unfortunately this very often gets philosophical and loses sight of what the real goal should be: building software that works