A lot of it was me - I was always anxious when he was around people because he would react erratically, so he sensed that and behaved in kind. During the past few months, I've made a concerted effort to make my dog less of a jerk and more socially acceptable. It's had mixed results. He still wakes me up in the middle of the night by barking at who knows what (I hope it's not a ghost), but he has stopped barking at every person relaxing on the couch, he doesn't beg at the table and I'm not afraid to take him places anymore. I even took him to a holiday party this weekend. It went well for everyone ... except maybe not Prince Napolio, king of the castle and tamer of toddlers:
So here are the things I did to make my dog more socially acceptable:
1. Sweater training. This sounds weird, but it works. Instead of spraying him with water, shocking him or shaking keys at him when he's bad, I preemptively put a costume on him when I know he's in a situation where he might freak out. It's like those thundershirts they sell on TV, but cheaper. It calms him and puts him into what I call a cost-oma: a costume-induced coma.
4. More time with other dogs. Napoleon has a lot of quality time with other puppies now, learning that he is not the only furball to ever walk this Earth. It's a good reminder for him that he is not in charge all the time.
5. More cuddles. This little guy needs attention. I try to sit with him when I work from home, and spend time with him each day so he's not needy or sad.