Draco Malfoy, Napoleon Dynamite, Huckleberry Finn, Ebenezer Scrooge, Malvolio. Each of these names evokes something about the character.
But it's not that easy to come up with great names.
Here are a few quick tips I picked up from various places:
1. Make it easy to read. Especially in fantasy and science fiction. Readers don't like stumbling over names as they read a story. A name can be easy to read and still sound exotic, foreign or futuristic.
2. Make the name appropriate to the time period. Use census data or the Social Security Name Popularity List to find names that were common to the time period of your story.
3. Consider the meaning of the words in the name. What does the root of the name mean? What country does it come from? For example compare the name Sunny to Draco; Lucy to Lucia.
4. Consider what the name means to the general public. If you pick the name Brittany readers will immediately think of Brittany Spears. Is that who you want your character associated with?
I have this book called The Baby Name Survey Book that lists hundreds of names and what the general public's first impression is about someone with that name.
Example: My name is Julie, here is what the book says about it:
Image: The name Julie calls to mind a tall, quiet woman who is pleasant and average.
And then it lists several famous Julies that people might associate with that name, such as Julie Andrews.5. Avoid overused and cliche names. Like Jack. How many big strong heroes are named Jack? Unless of course you're going for the cliche.
What are your favorite fictional names? I'd love to hear your examples of best character names.
What are your tips for naming your own characters?
And let me know if you want me to look up your name in my awesome book.