I think there's a good reason to have buttons that do nothing: it improves usability. Imagine teaching a child how to cross the road. The instructions are:
1) press the button
2) wait for green man
3) cross
Now imagine we took away the buttons that do nothing. Now you need two cases, or branching: look for button; if button is present, press it; otherwise just wait - then cross. Obviously this is still trivial but raises the bar a little and introduces greater possibility for confusion. Especially when talking about children, this makes roads easier and safer to cross, which in turn saves lives.
That's definitely an interesting take, and it triggered a thought I had a long time ago.
One thing I've noticed since moving to North America is that children get off the school bus and will essentially just run across the street, including straight in front of the bus, because they know the traffic around them has stopped.
I can only imagine that that leads to some sort of subconscious thinking that can only be dangerous once they are not on a school bus...
Having the buttons everywhere also provides for future flexibility.
Just because a button is ignored now, doesn't mean that it will always be. Special events, changing traffic patterns, or changes to traffic flow optimization strategies may some day necessitate the use of the button.
If the button wasn't already there, it would have to be installed, which takes time, money, and planning.
Plus less mental burden for everyone. You get to a light, you press the button. No need to wonder if there is going to be a button or not, no need to have to look all around - in case the button was hiding somewhere else.. The button is there..press it.
1) press the button
2) wait for green man
3) cross
Now imagine we took away the buttons that do nothing. Now you need two cases, or branching: look for button; if button is present, press it; otherwise just wait - then cross. Obviously this is still trivial but raises the bar a little and introduces greater possibility for confusion. Especially when talking about children, this makes roads easier and safer to cross, which in turn saves lives.