Your dog growls at your son when he walks by his food bowl and then snaps at him. He barely misses sinking his teeth into his 6-year-old leg.
Should you yell at your dog? Put him in another room? Something more physical such as use a choke chain or shock collar to "show him who is boss" and put him in his place?
What should you do?
The important thing to keep in mind is that unless an animal is hunting, aggression is fear-based. If you punish a dog for acting out of fear, you can train him to reduce or stop any signals of aggression for fear of punishment. You can then end up with a dog that is afraid, but afraid to show it. Your dog can then attack without warning.
If you use desensitization, my recommended treatment strategy, you will observe subtle anxiety signals before they turn into aggression and slowly get your dog accustomed to the triggers that caused the anxiety. Over time, your dog can be calm because he truly does not feel like reacting to the events before him.