I have a new puppy , I had dogs before this one and potty training took a month or two. My training was simple every time the dog would "go" in the house I would have shown him what he has "done" and yell on him, and every time he would "go"in a walk I petted him and gave a treat.
This time the vet told me about a new way to train the pup, he said that every time I leave the house I should put him in a relatively small cage and take him out when I come back. This way he won't go in the cage ( for some reason ) and he would be happier ( I have no clue way ) , if any one TRIED (it is better if you can compare) this system before please let me know.