Many things that look good in theory do not work in practice.
Sometimes fear is needed. Because I am afraid of being killed or injured in an auto accident. Because of that I don’t tailgate or otherwise drive aggressively, and so on. Because I am afraid of dying in a fire, I make sure the smoke detectors in my house work. I am very afraid of strange snarling dogs. I stay away from them. Anyone who is not afraid of anything is going to have either a very short or a very lucky life; let’s not leave our children to the latter option.
In an ideal world, you would explain about how cars can squash you flat, and fire can mutilate your hands, and the two-year-old would listen and remember and follow your advice. In reality, two-year-olds are mostly programmed into a stage called individuation, wherein they mostly test out EVERY SINGLE THING YOU SAY to see if it’s really true and if you really mean it. For very important things, you sometimes have to back it up with a punishment. When really quick results are necessary, sometimes you have to make an instantaneous and memorable one.
elfje, I don’t know how old you are or how many children you’ve raised. If the answer to the second question is zero, good luck, and check back when your children are 19. I don’t doubt your sincerity or good intentions, but some things are easier said than done.