The word vocabulary has a special place in my memory…
I recall as a small boy being totally unable to pronounce the word - I could get as far as the “vocab” part and would then stumble hopelessly on the second half of the word, and circumlocution was difficult because there are no good synonyms (that I’m aware of) for its everyday meaning.
The only other word I recall having difficulty with (excepting my almost total rhotacism) was “abominable”. Until one day someone — I can’t recall who — suggested I say “a bomb in a bull” instead. My impasse was broken immediately and I wasted no time applying the technique to vocabulary which I imagined to be a bizarre cuss: “Vocab you Larry!”
To this day I still pronounce the word with a slight overemphasis on the first two syllables.
I was reminded of this by an online vocabulary test that several people have shared recently. I scored well (by which I mean I beat my wife’s score, which is surely the truest test of a man’s vocabulary) and this prompted me to relate a little of my history with vocabulary and to make the following observation.
So much of our time as programmers is occupied with the creation of our own enduring abstractions that an excellent vocabulary is a powerful secret weapon. The ability to find les mots justes with which to name constants, classes and methods and everything else one must name in an API, enhances understanding and sidesteps confusion.
Great abstractions deserve the best names and to identify either is greatly satisfying.