This is community-evaluated content, and downvotes are a tool used for evaluation. So I think they make sense.
That being said, I don’t believe they should be public by default. People are nuts these days, especially online, and I don’t want to catch an online stalker or some nazi sliding aggro into my DMs because I downvoted their post.
I feel that, which is why I forked a tampermonkey script to replace his name globally. This is nice because it covers every site, which makes reading articles on WaPo and NYT much less irritating. Here’s what this thread looks like on my end, for instance:
And the script itself:
// ==UserScript== // @name Text Replace // @version 0.1 // @description Text Replace // @author SiameseDream // @include * // @grant none // @namespace beepboop // ==/UserScript== (function() { 'use strict'; var replaceArry = [ [/ Elon Musk/gi,' the biggest twat on the planet'], [/Elon Musk/gi,'The biggest twat on the planet'], [/ Mr. Musk/gi,' this dipshit'], [/ Musk/gi,' this dipshit'], [/Mr. Musk/gi,'This dipshit'], [/Musk/gi,'This dipshit'], // etc. ]; var numTerms = replaceArry.length; var txtWalker = document.createTreeWalker ( document.body, NodeFilter.SHOW_TEXT, { acceptNode: function (node) { //-- Skip whitespace-only nodes if (node.nodeValue.trim() ) return NodeFilter.FILTER_ACCEPT; return NodeFilter.FILTER_SKIP; } }, false ); var txtNode = null; while (txtNode = txtWalker.nextNode () ) { var oldTxt = txtNode.nodeValue; for (var J = 0; J < numTerms; J++) { oldTxt = oldTxt.replace (replaceArry[J][0], replaceArry[J][1]); } txtNode.nodeValue = oldTxt; } })();