Unlike code, it's hard to practice social engineering. Luckily, there are ways.
The best advice I can give is to get comfortable lying. Lie to someone each day. Little things at first, like what you had for dinner last night. This will get you comfortable. You need to be a compulsive liar so it comes naturally when you need it.
Every good lie has a grain of truth in it, so don't go saying you are a black belt if you've never taken a karate class before.
Know who you are talking to. You need to get really good at reading people. For example, I have convinced several strangers that I am from a wealthy family in Ireland who owns a castle, when in reality I was born in the states to a middle-class family. It wasn't even that hard, because the people were dull as hell. Conversely, don't try to lie to someone who will catch you. Case in point
When in doubt, use flattery. The human ego is strong. Stroking that ego can get you far. This especially works if you are a woman talking to a man. There was a good article about this in the last 2600, you might wanna check it out.
In the end, it all comes down to how believable you are as a person. I am currently taking a criminal justice course for my major, and it's all about body language, detecting lies, behavior, etc. If you have the money, take a course or get a book on it. There are some dead giveaways for when you are lying, and you need to recognize and avoid them.