Settings

Theme

Show HN: Hacker Smacker – spot great (and terrible) HN commenters at a glance

hackersmacker.org

59 points by conesus 2 days ago · 49 comments · 2 min read

Reader

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 3 hours ago

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 2 hours ago

    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 3 hours ago

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

    • ineedasername 2 hours ago

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

      • jacquesm an hour ago

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

      • Lerc an hour ago

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

  • WorldMaker an hour ago

    Follow/Distance?

  • ting0 an hour ago

    That's such a friend thing to say!

  • rustystump an hour ago

    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.

    • XorNot an hour ago

      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 a few seconds ago

        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?

zzo38computer 17 minutes ago

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.

scrumper 3 hours ago

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.

omoikane 3 hours ago

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

ddtaylor 2 hours ago

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 an hour ago

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 an hour ago

    > 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.

brodouevencode 29 minutes ago

502 Bad Gateway

waltbosz an hour ago

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.

cousinbryce an hour ago

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

ZpJuUuNaQ5 2 hours ago

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.

istillcantcode an hour ago

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.

titaniumtown 3 hours ago

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

logicprog 2 hours ago

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 2 hours ago

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

ImPostingOnHN 3 hours ago

this seems like it would increase tribalism and polarization

  • subdavis 2 hours ago

    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?

SV_BubbleTime 3 hours ago

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 2 hours ago

    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 2 hours ago

      > 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 an hour ago

        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 2 hours ago

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

  • kmeisthax an hour ago

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

jonathanstrange 2 hours ago

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?

goodpoint 2 hours ago

what about privacy?

  • Retr0id 2 hours ago

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

elcapitan 2 hours ago

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

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection