Why don't we do things that we know will have a benefit? Such as, saving up for a new pair of shoes, then going and spending your money on make-up instead, or choosing to have an extra packet of crisps, or choosing not to go on a run because we're 'too tired'. It's clear that all of these things are good for us in the long run, so why do we choose to do something that will only benefit for maybe a few minutes or so.