Program using a button timer

Why are you taking so final a stance? Is your loop so long that it misses a press because it's not polling the buttons frequently enough? Is it plagued by long, blocking delays? Or what else is happening?