One does not need to experience something to speak about it. I have never been in the military but I am anti-military. I do not have to experience the military to form my ideas about it, experience certainly helps but it not a prerequisite. I bring this up because I am not a parent, I have no kids, nor any adopted ones either. I do not have to be a parent to say what I think about spanking. Besides every parent at one point was not a parent, at that moment the parent had some ideas about spanking, then they simply cared over their own pre-parent ideas with them once they became parents. Thus, being a parent has little relevance here. Those who support spanking probably have supported it before their kids were born.
To answer the question of whether spanking is good or not we should be more specific and ask what is it good for? It all depends on what you want to achieve as a parent. If your goal is to create obedient little children who follow every single command from you with no disagreement then perhaps spanking is a good idea. I can see how it will work. Johnny does not want to make his bed, so take him and hit him enough times until he feels the pain and does what you say. Eventually, Johnny will learn to fear you and do what you tell him to do. So if your goal is to create obedience and authority in your children then perhaps spanking is the way to go.
Such parents are not good parents. These kind of parents teach little to their children, their primary lesson is obedience to all what the parent says. Good parents teach to their children important values. A good parent will teach his kids not to steal, to stay away from dishonesty, to share, to be friendly, and so forth. Such a parent is teaching his kids proper values. If your goal is to teach proper values to your children then spanking is bad idea.
Spanking does not teach children values. Spanking does not teach children anything except obedience. A child who cleans the house because you tell him so is not doing it because you taught him values that made him do that but rather that he is afraid of you. That is not teaching him anything. If you were not present he would not do it, that is the entire point. He does so only because he is afraid of your presence. This kind of parenting fails to teach proper values to children.
So I do not think parents should spank their children. Or even yell at them or scream at them in an intimidating way to make them scared of you. Because fear is really the same approach as spanking, make the kids do as you say because otherwise they will fear the consequences. Parents should explain to their children what it is they want them to do. I think it is good for parents to argue with their children. I know some parents hold the no-argument policy, what they say goes. But I think these parents are making a mistake. It is good for your kids to argue with you. It shows they are thinking and not accepting what you say simply because you say it. They are being skeptical. This is great, something to be encouraged even more, not to be avoided. Children are capable to think also, they are humans after all. They can reason and comprehend, even young kids. Parents should argue with their children. But not a shouting argument of ad hominem attacks. Rather teach your children the correct way to argue with reason. Explain to them why their reasoning is wrong. And if they find a mistake in your reasoning, which will happen, rarely, but should happen, admit to them that you were wrong and they were right after all. This will make them respect you a lot more and teach them to be thinking skeptics at an early age. Parents should also show disappointment, anger, and other negative emotions, to make their children feel why they are wrong, rather than intimidating them with fear or spanking.
One will object to me that my method is inefficient. Even if you convince a kid that he is entirely wrong he might go and do what he wants anyway, that is just how kids are. True. I do not deny that. But so what? Parenting is not supposed to be about efficiency. Parents should be about teaching kids proper values. This can only be accomplished in the manner I described. You do not teach by spanking, even if it is more efficient at making them do what you want. At least the method I describe will teach them values. Even if they do little of what you say they will do something, and what they do will be from their understanding of it rather then following obedience. Furthermore, this kid will learn to think more clearly and be more skeptical. All of this will make him much better than spanking would ever accomplish.
Parenting is not supposed to be an easy job. It is hard. It will be filled with a lot of challenges. And part of the challenges is teaching kids proper values even if they refuse to follow them. Spanking is for bad and lazy parents, parents who do not want to struggle to teach values, rather to make their kids do what they say. Spanking is supported by the people who are lazy or unwilling to do their job as a parent. This is exactly why I oppose child spanking.