Rob, please explain more on this? do you mean within application code or configuration loader?
Eventually, you need to use either IP address or hostname. And generally speaking, between the two, you are always better off with the hostnames. Certain dependencies on hostnames, you can never get rid of. For ex, code doing HTTP to wMDev needs to be changed to do HTTP on wMDev-n now
The issue that cjcable faced, was more of change management notification issue between the groups, wherein he wasnt aware of the changes made in his development env; Obviously, his code was somewhat dependent on the hostname [not good], than on configuration [property or hostname based].
As far as your recommendation wrt configuration loader goes, I fully second that and cant stress the importance enough. One should try not to load configuration within application code/startup sequence based on hostnames!!
The only issue I have faced in the past with loading configuration property based, is when the system admins blindly copy directory tree to make quick backup copies on unix for test/dev environments!!
Also, always by default, one should remember to load the “dev” configuration rather than the production env variables. If one is ok with complexity, one can use a mixture of property/hostname based configuration loader.
If I remember correctly, someone wrote an excellent Ezine article on configuration loader for webMethods.