I just punished my dog. I feel bad about it, but Im thinking, it will be good to correct its behaviour this way. A friend told me that you have to catch them in the act for the punishment to be effective, so I did this and she seems pretty intimidated by my authority. What I dont know is, if this reaction is mere fear or real, effective behaviour correction.

I dont like to hit her. A simple "schh" will work almost everytime, but when I catch her doing something repeatedly, I like to stress the "you cant do that" fact with one spank.

Example.
Rule: Dog cant eat from the garbage.
Scenario/Action:
1. Dog comes close to the garbage bin. I just go "schh!". Dog goes away from the garbage can. No fear is shown, only a reaction of moving away.
2. Find garbage bin all messed up, find an empty sausage package where the dog sits. Dog is beside the package but not touching it. No actions taken, dog wont remember why its being disciplined.
3. Find dog reaching into the garbage bin. Go straight to the dog, interrupting her action with a hard spank. Dog goes away. Some fear is shown.
4. Find dog eating out of the garbage bin. Go straight to the dog (some chasing might be necesary, as the dog jogs away sometimes), take whatever she is eating out of her snout(might be poisonous), give her one hard spank and then (if still near to the bin) I firmly move her away from the bin (not push, not kick, nothing violent, just firm). Dog goes away, showing clear intimidation, maybe some fear.


Do you consider I could do anything better with this approach? Is it impossible to make her remember a simple rule using such a method of "caught in the act, punished in the act"?

And here comes the question about memory:
I dont want to reflect a behaviour that says to her "im sorry I was hard on you" . So, how long do I wait until I can show affection again?