Although I find this fellow's blog has strings of provocative ideas, I have to throw a bit of coolish water on the significance of "cognitive dissonance." It's an old concept from social psychology - and it's just one way of looking at some behavioral phenomena.
For alternatives, study up on what social psychologists call "attribution theory."
For alternatives, study up on what social psychologists call "attribution theory."