In the process of Error -> Recognition -> Adjustment, we must do two things:

Provide helpful error responses throughout the application

Make errors seem less like failures on the user’s end and more like cues for adjustment.

via Failing Gracefully | UX Magazine.

All the great advice I ever read about dealing with user errors was best summed up in a philosophical statement by Matt Mullenweg when he said at a WordPress DC Meetup “The software is wrong, not the people.[1]”

1) http://joeflood.com/2011/07/13/the-software-is-wrong-not-the-people/