As for "I don’t think it’s 100% clear-cut that you should never ever implement downvotes," perhaps. There's still probably better ways to flag inappropriate comments though. Like a flag button. Downvotes are far too general and ambiguous in comparison.
Thank you for that insight, never thought about it that way (alas, I'm not allowed to downvote). That approach seems very reasonable.
Reminds me of the rule in programming with exceptions, either handle and log or rethrow.
Yes. And if I was a HN developer, which I am not, I would immediately remove that functionality - but even then, my argument doesn't really apply here, because HN isn't really meant to be a constructive platform to begin with.
> I don’t think it’s 100% clear-cut that you should never ever implement downvotes.
For constructive platforms: absolutely, 100%. It's well understood what kind of behaviour is driven by the availability of a semi-anonymous "disagree" button. There's not really any gray area here.
> Other comments might be wildly off-topic or deeply non-constructive, and those I down-vote. But to each their own.
On a constructive platform, that is a matter for moderation, not opinion. The problem of downvotes is that it combines the two, even though they are fundamentally different concepts.
Nevertheless, some people find them useful.
I don’t think it’s 100% clear-cut that you should never ever implement downvotes. I’d say that downvotes need to be implemented in conjunction with a bunch of other features and active moderation policies to work well. I don’t know if HN has done so, or if GitHub has done so. But... I wouldn’t dismiss them out of hand.
(FWIW, I follow this policy: I either downvote, or reply, but never both. In this case, I disagree with you, but think the conversation is useful, so I reply. Other comments might be wildly off-topic or deeply non-constructive, and those I down-vote. But to each their own.)