Remix.run Logo
Show HN: Hacker Smacker – spot great (and terrible) HN commenters at a glance(hackersmacker.org)
74 points by conesus 2 days ago | 64 comments

Hacker Smacker adds friend/foe functionality to Hacker News. Three little orbs appear next to every commenter's name. Click to friend or foe a commenter and you'll more easily spot them on future threads. Makes it easy to scroll and spot the commenters you love to read (and hate to read).

Main website: https://hackersmacker.org

Chrome/Edge extension: https://chromewebstore.google.com/detail/hacker-smacker/lmcg... Safari extension: https://apps.apple.com/us/app/hacker-smacker/id1480749725 Firefox extension: https://addons.mozilla.org/en-US/firefox/addon/hacker-smacke...

The interesting part is friend-of-a-friend: if you friend someone who also uses Hacker Smacker, you'll see their friends and foes highlighted too. This lets you quickly scan long comment threads and find the good stuff based on people you trust.

I built this to learn how FoaF relationships work with Redis sets, then brought the same technique to NewsBlur's social layer. The backend is CoffeeScript/Node.js/Redis, and the extension works on Chrome, Edge, Firefox, and Safari.

Technically I wrote this back in 2011, but never built a proper auth system until now. So I've been using it for 15 years and it's been great. PG once saw it on my laptop (back when he was still moderating HN, in 2012) and remarked that it was neat.

Thanks to Mihai Parparita for help with the Chrome extension sandboxing and Greg Brockman for helping design the authentication system.

Source is on GitHub: https://github.com/samuelclay/hackersmacker

Directly inspired by Slashdot's friend/foe system, which I always wished HN had. Happy to answer questions!

ineedasername 4 hours ago | parent | next [-]

I’d encourage a change of labels away from “friend/foe”. It may seem minor but the subtle loaded nature of those paired terms encourages an adversarial stance rather than one of productive discourse. It’s not catchy so there’s probably better than this but, just as an example— “engage/ignore” could better signal to the user a neutral “do I want to bother with this person?”

logicprog 3 hours ago | parent | next [-]

Agreed, independent of where the terminology came from, I think if you're trying to promote healthier engagement both for yourself and others using this extension, then not having such adversarial names it's probably a good idea. It should just end up being a sort of web of trust to help you decide what's worth engaging with — and sometimes perfectly valid people that you're not actually enemies with or anything just aren't worth your time engaging with because of fundamental axiological or positional differences.

jacquesm 4 hours ago | parent | prev | next [-]

That's just Slashdot's influence. They did the same thing at some point.

ineedasername 3 hours ago | parent | next [-]

Ah, okay-- though that doesn't mean the author can't do better, if I'm not just being too nitpicky.

jacquesm 2 hours ago | parent | next [-]

The last thing HN needs is to become more like Slashdot.

avadodin 5 minutes ago | parent [-]

In Soviet Russia, Slashdot becomes HN!

Lerc 2 hours ago | parent | prev [-]

Dot product of opinions? Using a fancier term for the same thing might be a significant axis though.

globalnode an hour ago | parent [-]

maximize your projection onto like minded commenters, create that bubble you always yearned for but until now have never had the add-on to empower the inner-you! finally, you can ignore that filthy plane of delusional outcasts and banish them to the orthogonal abyss forever.

unethical_ban 35 minutes ago | parent | prev [-]

I've wanted something like this for a long time and also thought of the slashdot system. This is directly from that.

tyre an hour ago | parent | prev | next [-]

favorite / potato

Although there are some commenters I would want to follow because they are potato.

There is something so magical about some of the more delulu Take Havers around here.

pavel_lishin 13 minutes ago | parent [-]

potato / tomato?

ting0 2 hours ago | parent | prev | next [-]

That's such a friend thing to say!

rustystump 3 hours ago | parent | prev | next [-]

I like friend and foe far more than engage and ignore. A foe isnt someone you ignore. Ignoring is what builds bubbles. A foe can often be right even if you disagree.

ineedasername an hour ago | parent | next [-]

A foe is also someone you might preemptively punch in the face if they get too close before you could determine if they actually meant you harm right then.

I'd prefer not to label things such that I'm justifying the label's negative potential by the disproportionately small "even if" range of positive ones.

XorNot 2 hours ago | parent | prev [-]

People I want to ignore I usually disagree with as well, but that's not the problem: the problem is they are repetitive and boring.

rustystump an hour ago | parent [-]

I sure hope the disagreement to ignore ven diagram doesnt look like that. If u never engage, how will you ever know you were wrong about something repetitive and boring?

XorNot 34 minutes ago | parent [-]

Which is not at all what I wrote.

Most things are interesting if you look deeply into them. People on the other hand can be repetitive and boring about them. Which would extend to the excessive use of meta-argument: complaining people aren't listeninf but also not actually saying anything of substance.

WorldMaker 2 hours ago | parent | prev [-]

Follow/Distance?

wartywhoa23 2 hours ago | parent [-]

Arian/Non-Arian

scrumper 4 hours ago | parent | prev | next [-]

I wonder what the second order effects of this on the HN karma system will be. It'll create a graph of karmic supernodes perhaps. Say I green-blob someone with a big reputation here, say jacquesm; no doubt lots of other people will do the same. The friends-of-friends icon is going to appear widely but it'll all be a single edge away from Jacques' node. Is that much of a signal? I dunno. That's 30 seconds of thought about it. It's a fun idea though so I'll try it.

Version two: hide foes? Come to think of it, maybe the 'foe' aspect is the fun part...

EDIT: it's like I summoned him.

drcongo 4 hours ago | parent | next [-]

everybody loves jacquesm

cousinbryce 2 hours ago | parent | prev | next [-]

Pagerank

cpeterso an hour ago | parent | prev [-]

> Version two: hide foes?

That's a good idea.

Here's my bad idea: the extension auto downvotes foes and auto upvotes friends. :)

verdverm 15 minutes ago | parent [-]

automations get your account in trouble, it's against the rules

pavel_lishin 14 minutes ago | parent | prev | next [-]

Funny; I wrote a greasemonkey script to be able to highlight certain commenters here, but didn't even once consider adding a "networked" element to it.

zzo38computer an hour ago | parent | prev | next [-]

I would prefer to do the opposite, where everything is displayed in chronological order (with an option to display by threads or not; even if not you can still find what each one is a reply to) regardless of voting and regardless of who wrote them.

aendruk an hour ago | parent | prev | next [-]

I just keep a custom stylesheet that annotates usernames with various emoji. Most of the time I update it as I read, but occasionally I’ll peruse the hidden comments to note e.g. uncharitable participation and revealed bigotry.

omoikane 4 hours ago | parent | prev | next [-]

Related, there is already an extension that allows selected users to be highlighted, but without the shared server data for computing friend-of-a-friend relationships:

https://news.ycombinator.com/item?id=17717598

brodouevencode 2 hours ago | parent | prev | next [-]

502 Bad Gateway

duncangh 11 minutes ago | parent | next [-]

hacker smacker smacked down

sentrysapper 44 minutes ago | parent | prev | next [-]

Same here. Thought it was my firewall at first. Thanks for confirming.

varjag 13 minutes ago | parent | prev | next [-]

HN smacked

TheJuli 26 minutes ago | parent | prev [-]

HN's hug of death

ddtaylor 3 hours ago | parent | prev | next [-]

I created and shared Ethos which is a sentiment and discourse analysis thing for HN and it's been plugging away. You're welcome to use its API if you want. Submit a PR for the CORS to be changed as needed.

Original post: https://news.ycombinator.com/item?id=46993774

Reubachi 2 hours ago | parent | prev | next [-]

A question, per your final comment on being available to answer questions:

What do you feel is the benefit to the community for this that isn't offered by native blocking/existing extensions?

I ask not out of malice, I ask because 2 reasons: 1. I imagine spending time on this/it's working well required you to see the value/benefit to it. 2. We must assume all hacker news commenting follows the rules, IE; good faith comment with relevant experience when required. This seems like a way to promote getting around that.

chatmasta 2 hours ago | parent [-]

> that isn't offered by native blocking/existing extensions

There is no “native blocking” on HN. You cannot block a user or hide their comments and submissions in perpetuity. You can only hide on a per-story basis.

waltbosz 2 hours ago | parent | prev | next [-]

https://github.com/samuelclay/hackersmacker/blob/main/web/im...

How old is that icon set? I swear I used that same peppers icon for a Windows app that I published around 2002.

austinjp 41 minutes ago | parent [-]

At least 15 years, if the git history is to be believed.

ZpJuUuNaQ5 3 hours ago | parent | prev | next [-]

Interesting. I'd love to have a browser extension that automatically blocks all comment sections on every site I visit, so I wouldn't feel the need to interact with anyone online.

nickthegreek 3 hours ago | parent | next [-]

14 days ago - https://news.ycombinator.com/item?id=46991435

alt187 3 hours ago | parent | prev | next [-]

As opposed to OP's extension, I would heartily recommend this one.

efilife 3 hours ago | parent | prev [-]

14 days ago exactly this was submitted to HN: https://news.ycombinator.com/item?id=46991435

https://rickyromero.com/shutup/

cousinbryce 2 hours ago | parent | prev | next [-]

Way down on my list of projects to vibe code is tags for HN users. I.e `Elon Stan` , `smart about aeronautics` , `grumpy` , `reasonable` etc etc. I like reading different opinion but if I formed an opinion about a user id like to record that without using my brain

istillcantcode 2 hours ago | parent | prev | next [-]

I have a text file of commentors I normally disagree with and check in on them from time to time (about weekly). Its good fun and often I find there will be topics I do agree with them on. Reading the same opinions all the time is no fun.

thinkingemote an hour ago | parent | prev | next [-]

I used https://github.com/ToneyAlexander/HackerTagger for a bit almost a decade ago. Data locally stored, good but didn't transfer across machines, not so great.

It had a little text label next to names so you could manually add whatever you want. Recently I've thought about this extension and using it to tag the LLM users, or the humans who tend to pop up to fan the flames or who regularly post thought terminating comments - little tags to remind me to ignore the bots and trolls.

titaniumtown 4 hours ago | parent | prev | next [-]

Installed! Lets see how this goes. I'm going through previous interactions I've had with people.

logicprog 3 hours ago | parent | prev | next [-]

Hmm, I installed this in Waterfox for Android, and I don't appear to be able to tap on the bubbles next to people's usernames

Retr0id 3 hours ago | parent | prev | next [-]

It'd be interesting to run pagerank over the trust graph

ImPostingOnHN 4 hours ago | parent | prev | next [-]

this seems like it would increase tribalism and polarization

subdavis 3 hours ago | parent [-]

Indeed. Why engage with ideas on the merits when you can color (literally) your own opinion of them before even reading.

I guess if you just prefer wearing horse blinders?

sickofparadox an hour ago | parent | prev | next [-]

Another step towards the Redditification of hackernews. This is the exact opposite kind of functionality pages like HN need, we need ways to get people to engage with others' ideas more substantively rather than literally put someone on the "bad guy I won't talk to list".

jonathanstrange 3 hours ago | parent | prev | next [-]

That's weird, I'm reading HN every day and never felt a need for something like that. In my experience, the quality of comments is very high and really bad ones tend to be downvoted or flagged fast. Could this be a time zone issue such that people in certain time zones are less fortunate than others?

alt187 3 hours ago | parent [-]

"Less fortunate" is a generous wording and framing.

goodpoint 3 hours ago | parent | prev | next [-]

what about privacy?

n4bz0r 5 minutes ago | parent | next [-]

Poof!

Retr0id 3 hours ago | parent | prev [-]

It would appear that friend/foe lists are entirely public (the latter feels a bit rude)

elcapitan 3 hours ago | parent | prev | next [-]

Finally someone brings this place the explicit toxicity it had been missing all those years. /s

croisillon 12 minutes ago | parent [-]

If you're on HN and you look in the comments and can't tell who the toxic one is, it's you.

SV_BubbleTime 4 hours ago | parent | prev [-]

I would suggest categorizing the quality of comments by its content and not its creator. Oh, nevermind, that’s a silly thought.

Challenge my core belief? Well… I could rationally evaluate that, or, I could just use a tool to block it from my vision! Bubble thickener.

netsharc 4 hours ago | parent | next [-]

There are some trolls in here that seemingly evade getting banned despite their moronic comments...

Also, many comments just take a wrong premise and attack you (e.g. that not wanting the slaughter of innocent people equals supporting terrorists who want to slaughter innocent people). They don't offer anything more than that, so that IMO taking the time to consider their mostly one-note opinion is just wasting said time.

tomhow 3 hours ago | parent | next [-]

> There are some trolls in here that seemingly evade getting banned despite their moronic comments...

As moderators we can only judge comments according to the guidelines, and can only ban accounts if they repeatedly breach them. You're always welcome to email us (hn@ycombinator.com) about an account that has been continually breaching the guidelines.

XorNot 2 hours ago | parent [-]

I think that's the point though? Plenty of things not worth engaging with also aren't technically violating any rules: but wasting the brainpower on them also isn't worth it in a reliable way.

That's where an ignore system is useful.

ddtaylor 3 hours ago | parent | prev [-]

I have emailed HN before when I spot really terrible things and they have been quick to effect change.

kmeisthax 3 hours ago | parent | prev [-]

There are enough bad-faith commenters on HN that I personally would find this very useful.