The first suggestion my husband gave me about my name was actually pretty good--explain why my name is Kimberly not Kim. It's actually become a pretty good way for me to know if people actually know me or not by which name they call me. So, my mother named me Kimberly because she liked the name. As a kid I thought that was a lame answer because you seem to want to have a meaning to your name like other kids. But now that I'm older I get that more. But at school people would call me Kim--teachers/other students/friends etc. And I didn't really care. My mother would always tell me to correct people and I didn't like doing that. She would even tease me when someone would call the house asking for "Kim". One of my best friends in high school was Kim too and we had fun being Kim squared.
As I got older, I started to care like that I was Kimberly and not Kim. I'm not sure if it was because of maturity, if I finally understood what my mother had been telling me all these years (I named you Kimberly and that is your name!), or if I realized that I actually had a preference. But I had been Kim/Kimberly for so long in one place that it was hard to really fathom correcting that many people. When I went to college I made a commitment to correct people I met no matter what. As a result, everyone there called me Kimberly and knew me by that name. That commitment was tested pretty well with my husband ironically. We were on our first date and he was calling me Kim. I really liked this guy--and I didn't want to offend him with correcting him--but I also didn't want to actually start dating him and have him be calling me the wrong name. So I remember sitting in his car waiting for the other couples to catch up to go into the house where we were all going to play games. And I just said it--and he was so understanding. He even has started correcting people for me.
The ironic thing is that some people still never catch on no matter how much I correct them--but that really is a test of someone's commitment to a relationship in my mind. If they take the time to learn someone's name (and I have noticed even how to spell it), it shows that they really care about building that relationship with you.