Your Best Developer Tool : An English Dictionary

If you can’t put a name on it, you don’t know what it is. An English dictionary is your best programming friend.

If you can’t put a name on it, you don’t know what it is

Peer programming with a lead developer on an important iOS project, I discovered a plain English dictionary or a thesaurus is my best friend.

You need it to name your objects, variables, classes, services, folders, …

It’s the best way to see if you understand what you do. Concepts you will implement must have their own special vocabulary.

For example, we were looking at a name for a model object. The object had to be a pre-filling container to build a more complete report. It had to be displayed on an UI to be filled, and to be opened and transferred via an URL. So it was used both as front and backend representation.

Well, we searched a name for 2 hours.

The reason it was so difficult was that :

  • the concept was too close from another object, but different
  • the concept was vague
  • the concept had too many faces or too many responsibilities

We tried :

  • ReportExcerpt (hard to pronounce for French speakers)
  • ReportSummary
  • ReportIndex
  • ReportPrefiilingModel

We finally settled for : ReportSkeleton.

Thank you Mac OS Dictionary App 😀 (by the way it’s waaaay faster than the Internet, try it)

And it’s even more important if your are not a native english speaker. Don’t use a translator from your language to English. Search an English dictionary. You’ll win one level of vagueness and indirection of your idea.

dictionary