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."