Either works, really; riots just show how many people really want something. Non-violent protests do just the same, and are therefore better.
Some people don't write too well, and individual letters don't give the kind of effect that a protest does. There may be many of them, but unless they are all sent at once, it just doesn't work. Hey, there's an idea.