Software component names should be whimsical and cryptic
There is a real world example of a complex, critical, domain that has followed this approach religiously for years: prescription drugs.   Every prescription drug  is given an essentially nonsense non-proprietary (generic) name, with only broad categories identified by a stem (drugs ending in &quot;mab,&quot; e.g., are monoclonal antibodies, those ending in &quot;vir,&quot; are anti-virals).   Names that are suggestive of medical target or use, beyond what is implied in the stem, are not allowed.   The system is international, with international bodies ultimately approving naming of drugs.<p>The result - well, it works in some respects, but it would take a real optimist to say that brings any clarity or long term order to the process by which medical professionals learn or refer to the drugs they prescribe and administer, or that it plays much role in getting the right prescription into the right medicine cabinet and ultimately, patient.   The names are confusing as hell, often unpronouncable (despite the orthographic and oral qualities of the names being considerations in name assignment) to anyone who doesn&#x27;t know them well, professionally.  And the common drugs - well, let&#x27;s just say, you&#x27;re far more likely to tell someone you&#x27;re on Lipitor (a brand name, for marketing) than &quot;atorvastatin&quot;.