One of the hardest things in software development is coming up with good names. Whether it is the name for a variable, a class or a project, a good name is really important to succinctly convery the role or purpose of the thing being named.
BTW, let me go on record to say that I don’t like the use of so-called "Hungarian" notation. For me names should be pronounceable (Pronounceable is a funny word – it is hardly pronounceable). lpszBlah does not work for me.
The reason I mention this is I am having trouble naming my little Java based alternative to fetchmail. I originally called it popper but there is already a tool by that name. My thoughts of a play on codefeed, "mailfeed", is also already in use. Is this like domain names – everything you can think of is already gone. I’ll have to sleep on it.
I just remembered that I once had to work on a system where the source files were part of a bill of materials and had to have part numbers. The part number was reflected in the file name – e.g. 123456.h. I’d rather have the problem of coming up with good names …