Una volta ho avuto l'opportunità di decidere uno schema di denominazione. Così andai in giro e chiesi ai miei sviluppatori, che dopo tutto erano le persone che dovevano lavorare con questi nomi quotidianamente, se preferivano nomi funzionali (cioè nomi che rappresentano, in una forma codificata, il scopo della macchina) o nomi mnemonici (ovvero nomi tratti da uno schema di denominazione umana preesistente, che non conteneva alcun contenuto implicito sullo scopo della macchina).
Su 38 sviluppatori, 37 preferivano nomi mnemonici; solo un nome funzionale preferito. Quindi li ho chiamati tutti come fiumi (c'è un grande bacino di nomi possibili e molti di loro sono brevi, facili da ricordare e veloci da digitare).
Il cervello umano è abbastanza ben progettato per assegnare significato ai nomi. Se fornisci nomi che sono memorabili, le persone ricorderanno abbastanza rapidamente per cosa sono usati quei nomi e li useranno. Se usi nomi tratti da un background comune (ad es. Fiumi, elementi, stelle, contee, bevande, ottieni l'idea) aiuta le persone a riconoscere immediatamente un nome host dell'azienda quando lo incontrano; in caso contrario, dichiarazioni come "tutte le e-mail sono finite betelgeuse
" possono essere un po 'confuse).
Al contrario, i miei sviluppatori pensavano di aver avuto difficoltà nei lavori precedenti a ricordare esattamente cosa pr1ms001
fosse.
Ma dovrei aggiungere che abbiamo usato CNAME nel DNS interno per fornire un nome funzionale alla mappatura dei nomi mnemonici, quindi se hai davvero trovato più facile ricordare che il server di posta principale nel primo cluster nel sito PR era pr1ms001
, allora il DNS avrebbe farti sapere che era attualmente orwell
. Inoltre, ciò ci consente di avere molti nomi funzionali per macchina, quindi fintanto che hai sempre usato il nome funzionale relativo alla funzione su cui stavi lavorando, potresti essere sicuro che pr1imap001
rimanderebbe sempre al server IMAP, anche se abbiamo spostato quella funzionalità da orwell
a rhine
. E quando è hudson
morto, potremmo cambiare il nome del sostituto senza influire sulle funzioni operative, in modo che non abbiamo mai avuto il "vuoi dire nuovo hudson
o vecchio hudson
?" confusione.