I would say a dog... More of a big dog, because small dogs have very bad temperment and sharper teeth. But DONT get a lab because they are known to bite a lot. I would say a Cockapoo, Shih-Tzu, Labradoodle, or a German Shepard/Poodle mix! :)
It depends on the person. some pets or breeds of pets will be great for one person, but a horrible pet for another person. It all depends on the person's and the pet's personality and what the person wants in a pet.
A dog can serve as a good family pet depeding on the type of breed you choose according the family. But be ready to take them for daily walks/poop picking up well get them trained so that they can be more social.