I think some other commenters are right that the buttons aren't necessarily a bad thing -- just that the implementation is unaccetpable. Outside of Minneapolis and St. Paul, almost all of Minnesota's traffic signals are actuated, not timed -- and quite a few in the Cities are actuated, too. For actuated lights, the "beg buttons" are essential. The problem is that there is not also an automatic pedestrian cycle on every vehicle cycle. From my perspective, the best option is:

1. Lights are timed. No buttons. Pedestrians received a walk signal on every green light.

The compromise would be:

2. Lights are actuated (by vehicle loop sensors). By default, the light stays green for the busier street. When a vehicle is waiting, or when a button is pushed, the minor street gets a green/walk cycle. Every green cycle includes a walk cycle. The button is still necessary if there are no cars to trigger the green/walk.

In reality, how it works is:

3. Lights are actuated. If a pedestrian walking along the minor street approaches the major street on a green, s/he must wait through two full cycles after hitting the button in order to get a walk signal. In fact, sometimes even the major street does not give pedestrians a walk cycle.