The problem with the Facebook “like” button is the same problem Google has with Google+ and their “+1” button: it doesn’t tell you anything meaningful.
Voting on Reddit doesn’t really convey much meaning, either.
Stack Overflow tries to address this with its up/down voting and being able to see the gestalt votes as a ratio (if your rep is high enough (an admittedly low bar, but still a bar, and an aspect of the gamification of Stack Overflow)). But that doesn’t really cut it, either.
The problem with online “voting” (or “liking”, or “plussing”, etc) is that it is a dimensionless data point.
Does getting 300 “likes” on a post make it “good”? Does it reflect on its quality in any way? How about getting nearly 400 upvotes (and only a handful of downvotes) on a question about MySQL (along with 100+ “favorites”) mean the question is good? Does it show something is popular? Are people clicking the vote mechanism out of peer pressure, because they actually agree, or because they think it needs more visibility? Or something else entirely?
Of course, you will object, quality is a potentially-subjective term – what does “quality” mean, exactly, when talking about a post, website, question, etc? Is it how well-written it is? Is it how long? How funny? How sad?
Take this question I asked on Stack Overflow, “CSS – how to trim text output?” It’s clearly-written, was answered excellently in 2 minutes, and is a “real” problem I had. Yet in the 4.5 years since asking, it’s only gotten 2 votes total (both “up”, but still only two).
Reddit has upvotes and downvotes – and your comment/post score is merely the sum of the ups and downs; below a certain [relative] threshold, you won’t see content unless you ask for it.
One of the biggest problems with all of these systems is that the “score” doesn’t actually tell you anything. An atheist subreddit, for example, will tend to downvote-into-oblivion comments that are theistic in nature (especially from Christians). Quora‘s voting system is highly untransparent – downvotes don’t really seem to mean much, and upvotes are pretty much just for show.
This derives from the fact that these sites use dimensionless data and try to give it a value or meaning outside of what it really is – a number.
What should be shown is the total number of “votes” a given post has gotten – positive negative, reshare, etc – but never combined. A ratio could be displayed, but the sum of the votes is a poor plan.
Facebook, Google+, and others should offer various voting options – “up”, “down”, “disagree”, “agree”, “share”, and possibly others – some of which may be mutually-exclusive (you cannot upvote and downvote the same thing), but you might downvote something you agree with (or upvote something you disagree with) just because of how it is written/presented, etc.
And the total of each type of click should be shown – show me 10,000 people disagreed with what I said, 15,000 agreed; 20,000 upvoted, and 30,000 downvoted; 12,000 reshared it (with, or without, comment).
Using voting as a means of hiding things (and trying to prevent others from seeing them) can be somewhat akin to online bullying – revenge voting has its problems; as does blindly upvoting anything a particular person says/does. Which is why assigning (and then displaying) dimensionless data anything more than a count is dangerous.