Alright. I wholeheartedly believe people should be held accountable for what people say or do online. Furthermore, you should confront these people when you see them to make them face the realities of their actions. But, I don't think you're helping the cause for punching a guy in the face after he reads out loud a written apology for his actions, whether he was forced to apologize or not. Punching him in the face reinforces the stereotype and hateful speech he was allegedly spreading.
I will say, hopefully he thinks twice before behaving this way in the future.