I don't hate all the sites that are touted as successes of gamification, though. StackOverflow is great. But there is a profound difference between StackOverflow is doing, and what Farmville is doing.
StackOverflow is trying to produce community resources of lasting value. Their "game" system is merely a way of recording that value, and allocating resources. It is fundamentally based on the judgments of the community.
Meanwhile, Farmville is clever at making an activity which simply enriches the game's owners look like the construction of community resources, or look like competition to display valuable skills.
My view is that there is no "gamification". The metaphor is backwards. Games are mere simulations of the kinds of things humans like -- to compete, to be valued, to be trusted, to build things, to have rare resources. It's far better to make your site more like a community, than more like a game.