It's one of the first things a reader learns about your character, and it's the little ID card that we use to remember your character for the rest of our lives. The name is the wreath on the door of your character's personality. Needless to say, the name should be carefully chosen.
Lesson 1: names have meanings and connotations - both of which can be exploited
Vladimir. Annabelle. Those two names don't exactly bring up the same colors, feelings, pictures, or ideas in your brain, do they? One is a male name, one is female. One sounds like it could belong to a really creepy Russian spy, and the other to a blonde college student in a lime green dress. Obviously, nobody is going to name their female blonde college student Vladimir. That's a pretty extreme example, but it gets the point across. If you want someone to think of summery flowers and happy bumble bees buzzing around and children laughing, you'll name your character something different than if he's the head of an evil corporation whose mission is to blow more smog into the air around Chicago.
Of course, there's always the option of contradiction, the shock factor. For example, you'd name your eco-destroying CEO "Huckleberry" just to make your reader go, "Woah. That's... weird."
Lesson 2: do not name your character something just because it's what you'll one day name your children
This is mainly something I've noticed with teenage girls, but anyone can fall prey to it. Lots of girls already have the names picked out for all their children (though I do wonder how many girls actually name their kids that when the time comes). They pick these names because they like them. And, by their logic, if the name is good enough for their future children, it's good enough for their characters. However, a character's name should be chosen because it fits the character, not because it fits the fancies of the character's creator.
On a related subject, there's little point in making your characters Asian just so you can give them Asian names, and/or because you're obsessed with anime.
Lesson 3: get with the times
If I had a dollar for every 16 year old girl I've read about on this site whose name is Aibelyn, I'd be able to buy myself a new iPod. What beginning writers seem to forget is that a 16 year old girl would have been born in 1996, and very, very few parents were naming their children Aibelyn in 1996. Naming a character based on your own preferences instead of based on when they were born strips away a layer of believability to your entire story.
There are many archives of names on the internet - "Top 300 baby names of 1996," for example. Just type in whatever time period you want to The Google. It takes 2 minutes and makes your story so much more real. The same goes for old people. If your story is set in a nursing home, take the time to familiarize yourself with the "Top 400 baby names of 1932." I bet you'll be surprised; some of the names back then were really cool (not everyone was named Mable or Agnes, contrary to popular opinion).
Of course, there was never a point in history where everyone was conforming. If your character has a name that's unusual for the time in which they were born, tell us why. There is always a reason - everything in fiction has a reason.
Lesson 4: weirder is not always better
The move these days is towards naming things that nobody has ever heard of before (another drop in the "quest for individualism" bucket, I suppose), and beginning fiction is heading in the same direction. However, your character doesn't have to be named Xing Squanto Plebius III in order to be cool. Sometimes, more classic names are refreshing. I haven't read about a good ol' Tom for a while. What about Emma or John? Don't brush away more familiar names because they've been used before - that's like saying that you can't write about star-crossed lovers because Shakespeare stole your idea.
In the same way, there is such a thing as "too weird." Orson Scott Card, author of the (amazing) Ender's Game series, says that you should always name your character something that the reader has a chance at pronouncing in their head as they read. This is a powerful statement coming from Card, who usually writes about characters who don't have English names - so obviously, a name does not have to be English to be pronouce-able. The big point here is that, even if your character is from Planet 3X-Q, he shouldn't be named Znfurnnaniiouiiaan74xk-0. Why? When a reader can't pronounce a name, he just skims over it. And when a reader skims over your character's name, he's losing connection with your character. And that's never a good thing.
Conventional is the new unconventional.
Lesson 5: how to get un-stuck
Coming up with names off the top of your head is irritating. Sometimes, it can take forever. Here are a couple of ways to find just the right name for your character.
www . thinkbabynames . com - this is a fantastic website that has the top 1000 names from every decade since 1890 archived and listed in nice little 25-name-long chunks. I don't know if it's spot-on accurate, but it definitely gives great time-period names. I use this website all the time. Old-fashioned names are great for fantasy characters, too.
www. kleimo random / name - or you can just type in "random name generator" to Google, and it should be the first result that pops up. This is a great website for coming with with filler names - if you're writing sci-fi, for example, and need the name of the latest 17 year old boy singer that all the jr. high girls are fawning over (i.e. Justin Beiber), this is your website. It's also really good for finding last names.
the phone book - I've never actually tried this, but I guess it could work if you're desperate.
"Writer Lists" - I think that's what it's called. It's in the Apple app store, and it's a green icon with a white W on it. This app is amazing. It's a great reference tool for writers, and it's got a huge long list of names, both first and last.
yearbooks - good for both first and last names. I also sometimes use my old yearbooks to find pictures of people who my character might look like.
textbooks - I know this sounds random. Pretty much every textbook in the world has an index of people who helped edit, publish, or research it, and they usually have a wide variety of names. I will admit to having used this option on several different occasions.
Lesson 6: actually tell us your character's name
It sounds like common sense, I know, but it's amazing how many new authors think that one way to draw the reader in is to wait a while before revealing the main character's name at the beginning of the story. It's the old, "The blonde girl walked left, the black boy gave her a thumbs up." It's even easier to do this when writing in first person, because the narrator just becomes "I," and maybe the name-revealing occasion just never comes up. But please make it come up. It is not intriguing or clever to keep your character's name a secret. Instead of drawing us further into the story with a mystery, it only puts up a wall between the character and the reader.
If your main character doesn't know the names of your secondary characters (for example, he's being kidnapped by 2 thugs), make some up. "The hairy man" gets quite tiring after a while. Instead, have your main character make up names in his head. "The hairy man" turns into "Godzilla," and "the short sidekick," turns into "Shrimpy." It flows much, much better.
Lesson 7: extra names are a death sentence
Humans have this funny quirk where we latch onto names in a story, even if they're not important. I once read a story where a girl walked into her history class and started talking about the commotion inside - how Rodney was climbing on the TV, Pricilla was writing love notes to Oscar again, etc. etc. Problem was, Rodney, Pricilla, and Oscar never really came up in the story again. This is distracting. If a name is given in a story, it usually signals the entrance of someone important to the plot. Thus, a reader latches onto a name and tries to remember it. If these names are useless, the reader is wasting brain power that could be spent on other aspects of your plot - and this results in the reader's severe irritation.
Here I shall stop, because 7 is supposedly a lucky number, and I wish you best of luck in your name-finding endeavors!