Names should be cute, not descriptive
Early chemists gave cutesy names to chemicals, like &quot;vitriol&quot;, &quot;salt&quot;, and &quot;cholesterol&quot;. Today we know the <i>proper</i> descriptive names for these substances, of course.<p>Vitriol&#x27;s <i>correct</i> name is &quot;sulfuric acid&quot;.<p>Salt&#x27;s <i>correct</i> name is &quot;sodium chloride&quot;<p>Cholesterol&#x27;s <i>correct</i> name is &quot;(1R,3aS,3bS,7S,9aR,9bS,11aR)-9a,11a-Dimethyl-1-[(2R)-6-methylheptan-2-yl]-2,3,3a,3b,4,6,7,8,9,9a,9b,10,11,11a-tetradecahydro-1H-cyclopenta[a]phenanthren-7-ol&quot;.<p>That&#x27;s not a name! It&#x27;s a serialization of a molecular structure!<p>See, the problem is that what&#x27;s &quot;descriptive&quot; is opinionated, and a hot topic for bikeshedding. It&#x27;s like the argument between natural and artificial primary keys. If you go with natural primary keys, expect managers to bikeshed exactly what&#x27;s in there and how it should be encoded. They&#x27;ll change all the time. Your &quot;name&quot; turns into an encoding of the object itself. If you call your computer &quot;OaklandDev19InTheBasement&quot; then what happens if you move? What happens if you get more than 100 dev computers in the Oakland basement? How many arguments are you going to have about whether it&#x27;s the proper place to put some service that may not be &quot;devvy&quot; enough?<p>Some people are hitting this, but most of these can be broken into different functions:<p>Identity: always meaningless, always.<p>Finding a service: if this is hard, you need a directory. You need this anyway, even with descriptive names. If you need a directory, can you automate it?