As a rule I do not use a lot of slang or idioms when I speak English. I don't really know why. I just don't. I never did, even when I was in school and spoke English on a daily basis.
As an English instructor, I am sometimes asked by students about slang phrases they've picked up from a movie they saw or heard from an American friend. I try to help them out as much as I can but sometimes I am completely stumped. The slang that was used when I was a teenager is a lot different from the slang used now.
I often have to look up the newer slang words on the internet. A good number of the slang phrases are NSFW but I tell my student the meaning of the words anyway. I think it is better to let them use these "vocabulary words" at their discretion.
While researching on slang words for my students, I've stumbled upon a wonderful site called Urban Dictionary This was a lifesaver for me. I'm pretty much able to answer all my students' slang questions very quickly now. It is a wiki type of site where users provide the definitions for the slang, so it is always up to date and it covers even the most obscure of street lingo. I think the first word I looked up was "chingy."
I subscribe to their RSS feed on Google Reader and receive a new slang word or phrase every day. Today's phrase was "free balding" It really cracked me up. I've always wondered about these guys who shave their heads and perpetually cover it with a dingy hat. Why don't they just grow hair already?
Photo source: The Gould Gallery