Inconsistency
Dogs, while intelligent, are like children, they revel in consistency. When a dog knows what is going to happen, and when it is going to happen, he is far more likely to meet your demands. The biggest example of this is potty training. If your dog knows when he is going to go out he is going to be far more likely to hold his piddle until he gets outside. The same thing goes for praise and punishment. Your dog must associate eliminating outside with pleasure, so you must praise him every single time. Sometimes you may feel too tired to keep up with this routine, but each time you fail to be consistent you take two steps backwards with your dog's training.
Impatience
We live in a fast world with instant food, information, and recreation. Thus, we often grow impatient when things take time. Your dog is a growing and learning being, and his training will take years and never truly be done. Just like a human, your dog can always learn. Don't expect your dog to learn to sit overnight. Simply look forward to the day when he will be able to, and keep that goal in mind.
Apathy
Our busy lives make us exhausted, and sometimes it's easier just to give up. But when you give up on your dog's training you let him know you don't care, as well as giving him the upper hand to do whatever he wants in your home. It's ok to be tired. Take a break and a deep breath, but then go back to being a consistent and patient trainer to your dog, as it is your responsibility.
Training a puppy may be as frustrating as drinking out of a hole riddled straw, but in the end it is worth it. When you have a loving and obedient adult dog who is well mannered and welcome everywhere, you will know that all of the effort was more than worth it.