Often time, I find something funny, say it as a comment, and get down-voted. It's not a stupid joke or something inappropriate, just a comment that'd make the reader smile. And I know it's hard to judge because I keep saying the score of these comments oscillating (I.e. people upvote it because it's funny, and people downvote it because it's funny (or they don't find it funny.))
About contrived opinion, that one is sad. There's a difference between something wrong and saying your opinion. For instance, someone saying "I don't like Backbone.js because x, y, z" will get on average a really small or negative score. Why? People who agree with this statement in small minority +x, people who disagree with this statement but agree that it was some good arguments and points: +y, majority of people who disagree with the statement -z. It just so happen that z>(x+y) with controversial statements.
Lastly, trolling is more about searching for trouble or pissing of people. For instance, they'll say "Wtf, stop wasting your time with perl. It's a DEAD LANGUAGE, WAKE UP". This kind of posts should just get deleted and the user warned and then banned from HN imo. Note that there're a couple of wrong things with this statement. First, it's extremely aggressive and provocative. Personally, I hate this but some well known people act like that and are really appreciated so I won't judge. Secondly, there's no argument or fact.. it's just trash talking without ground to base yourself on. Lastly, there's usually lots of words in caps and 'wtf' 'lol' 'trololol' which make it look unprofessional for readers of HN used to read well written text. (Ironically, I know this current text isn't well written but it's because english is not my main language, not because I'm trying to skip words or be unprofessional).
Anyway, what I'd suggest is to have a way to differentiate between theses. 1- A 'flag as spam/troll/non-respectful'. 2- A +1 (like what we have) to say this is an interesting post/comment. 3- A Agree/Disagree button to express your opinion.
So basically, someone saying "You guys are fucking stupid; 1+1=2" would be flagged as unrespectful but could still be valid and agreed by the majority.
But in the end, is it worth it? As they say in engineering, it it works, don't fix it. HN is not perfect, but I still enjoy reading the comments and I learn quite a lot.. is it worth trying to fix it for a minority of trolls or disrespectful people?