My Badger's a lot like that and I know what you mean about it being too much especially around other dogs. I picked up a very useful tip - on here if I remember correctly - about teaching them a 'break' command. This is basically just getting them to stop straining at the leash when they see another dog (which can be interpreted by the other dog as a sign of aggression) and to look at you instead. Very simply, you just teach them with treats to look at you when you call their name while out walking (I kept treats in my pocket and would call out my boy's name randomly every now and again). This breaks the 'tension' between the other dog who thinks your friendly puppy is in attack mode and lessens chances of there being any aggression because the other dog thinks your dog is 'challenging' them. I tend to use the command now whenever we are approached by another dog and Badger goes into over-friendly drive. In terms of general socialisation, I think keeping up with the puppy classes is always a great idea

. He's still very young and it's great that he's friendly - better that than a snappy, snarly yorkie, I think

. It'll probably all calm down in a while once he's matured a bit