A good first name becomes great only if it is well suited to the child's last name. When you are matching up your child's first and last names pay attention for an overly noticeable rhyme, whether it features alliteration (words that start with the same letters), and check for onomatopoeia (words that describe or imitate an action).
Keep in mind that names with multiple syllables often roll off the tongue easier and often do not sound as flat. However, if your child's first name is too elaborate people may call him or her by a nickname which will probably be a single syllable word. Finally, try to pick a first name that has a different number of syllables than the child's last name - an unequal combination generally sounds better.
So remember, with baby names, quantity and quality are directly related because great names really do come in pairs.