Naming is hard?
One of the more difficult problems in software development is “naming.”
As the adage goes: “Naming is hard.”
We really have two different problems:
- What things should we name?
- What name should we give to the things?
Based on the work by Saltzer, we can see the guide to the first question is that:
- Naming should be aligned with the ability to preserve identity.
That is, to preserve identity under some set of changes. Or, worded differently, to borrow from John Day’s synopsis: