Im going to play devil's advocate here but I see this story in a different light
First off, while it may not have been gpa's fault that the little boy was yanking on him, did he do anything to stop it? Second, when he realized he was repeatedly being pulled into another adult, did he ever apologize? Third, when the younger guy finally lost his cool about it and shoved him, he didn't have to shove the guy back.
The way I see it, there were TWO adults here that were not taking the right steps to defuse a situation. Yes, people should be able to handle crowds. But, also, others should know how to act and be curteous of those around them.
I, for one, would have said something to my son if he was doing that. I would have told him to stop and pointed out to him that he was hurting someone. Second, the first time i was pulled into someone, I would have quickly apologized to the person. And I definitely would not have shoved back, esp with someone who could easily whoop my butt lol
Often times, people are very understanding of kids' behaviors, to a degree. What people are not understanding with is with parents or caregivers who aren't taking control of a situation. When a child is screaming in a restaurant, people are frustrated with the child. They get frustrated with the parents for not DOING ANYTHING. In this situation, that's what I see.
I see a man who was trying to enjoy a ride with his family but was being constantly shoved into from behind by a complete stranger. He prolly rolled his eyes and tried to be patient. The last shove, though, may have been stronger. He loses it and turns and shoves the guy, maybe not realizing it was an old man. This wasn't the correct action but whatever. Well, the old man shoves back, obviously indicating that he didn't care about the other man's repeated discomfort and got defensive. He punched. Not ok but I don't see this guy being a complete d****e either.