I consider myself a C+ dad. I make breakfast every morning, take them camping and do other fun stuff, but don't spend enough time in the evenings because I'm exhausted from work and need "me" time. When it comes to love languages, I definitely fall into the "acts of service" category. I'm a pretty decent listener when the kids are feeling down. When they fight, I'll ask them what happened even though I already got the download from my wife.
OTOH, I'm an absolute asshole at times. I have a temper and brought down the wrath of god many times in the past. But as they get older, I give them the "I'm Mad" face, a strict talking to, and the occasional "What the hell!"
So my kids got into a fight yesterday. My daughter said something and my son started punching her. The rule in the house is anyone who commits an act of violence must kneel on the ground for 30 minutes. I was still at work when the fight happened, so in the morning, I told him he needs to get down on his knees. He said no. Then I told him he can't go to his friend's house, and his response was "I already decided I'm going to go, so you can't tell me no!" I called him an asshole. Then the crying started, and he goes on about how I'm ALWAYS mean to him, and why can't he tell me to shut up if I (rarely) tell them to shut up. I was pretty furious, but got my bag and went to work before I had an aneurysm.
The boy is usually full of laughs and jokes, but his temper has gotten a lot worse in the past 6 months. I'm a shitty example of how not to lose my cool. Any parenting tips on how to make him behave better?