Yesterday a group of friends and I spent some time creating characters for an RPG that we're going to play. (Yeah, we are cool.) Part of the process was to decided on the characters merits and flaws. The best part was that we had to make the two even out. A character couldn't be too amazing or too flawed.
When I first started writing, I had a number of comments that my main character seemed a lot like a “Mary Sue,” or too perfect. What were her fears? Did she have a dark past? Was her internal personality the same as her external? No real person is perfect in every way, and characters in a story need to feel real.
While I tend to give my characters too many merits, some writers do the opposite. They give their characters too many flaws without the merits to balance them out. This can be just as bad as having a Mary Sue. If there's no good to your character, then the reader won't feel like they can connect with them, which can be a reason for someone to put down the book. I know I personally don't want to read about characters I don't like.
Of course, like every rule for writing, balancing out the flaws and merits in a character is not something that has to be done for every book. However, if you choose to write a character that has way more of one then the other, you had better come up with a good reason as to why. “I just felt like it” won't be enough to have most readers convinced.