Puppies take a tremendous amount of work, as do dogs in general. They're very costly, between supplies, vet bills, grooming, and training, if you decide to get it trained. My sister got a golden retriever puppy at the beginning of the summer. She gave up doing things this summer, Christmas, and almost all of her savings to pay for her puppy.
They have lots of energy and will eat/chew on everything. Our table and chairs have been chewed raw in places. She steals stuffed animals and things off of shelves and out of baskets, unless they're covered.
It was easy to train her to go to the bathroom outside because we already have 3 dogs (cocker spaniels) that helped.
A puppy can never be left alone. They "cry" whenever everyone leaves the house, and mine often destroy things when left alone for over an hour. Even if you get toys, your dog will need a playmate almost constantly. They must be plated with.
You must make sure it constantly has food and water. Especially in summer, it's very easy to not realize ho little water they really have.
They create a ton of mess, between getting them house-broken and shedding. You have to be willing to clean up after them.
Be very careful when you pick a dog. Golden retrievers and other large dogs must be walked daily or they let their energy out in a destructive way. Cocker spaniels and other smaller dogs also have lots of energy, but mine aren't as destructive as the golden is. I find cocker spaniels to be the perfect size, but my sister prefers larger dogs. My uncle prefers huge dogs; it all depends.
You also must consider if it'll be a member of the family vs. a pet, an indoor dog vs. an outdoor dog, and all of that stuff. Our dogs are spoiled, they get table scraps, sleep on all of the furniture, and basically can go wherever they want to. Obviously, when they do something they shouldn't, we punish them accordingly-- they don't have free reign of the house.
You must know how to discipline a dog, as well, especially a puppy.
Sorry this is so long, but I hope this helps. I'll try to answer any questions you have.
