|Keep It Simple, Stupid|
First a question,
Assumptions we make when talking with others who we are certain know perl, or those where we aren't so certain of that fact?
When talking to someone who i don't think knows perl, i assume that i'll have to explain things in the simplest terms possible, since they possibly don't know other programming languages as well. At this point you have to use models and similes and metaphors and anything you can get your hands on to help them wrap their mind around it. This is an active process.
If the person is learning perl (or programming), i assume they're interested in the subject matter long enough to learn something about it. From there one must probe how much they do know so as not to bore them with simplicities already learned.
As far as explaining what i do for a living, i just say i get paid to live in a small hole and they figure i'm a computer person of some kind ;-)
hope that helps,