Friend/foe individual writers on Hacker News

Friend Neutral Foe
Friend of a Friend Foe of a Friend

Synopsis

Hacker Smacker helps you identify quality authors and filter out obnoxious commenters on Hacker News. Three little orbs appear next to every author's name and you can choose to either friend or foe them.

If you friend people, and they also use Hacker Smacker, you'll see all of your friend's friends and foes. This helps you identify commenters that you want to read as you quickly scan a comment thread.

I've found that this reduces the time I spent on Hacker News, as I can glance at long comment threads and just find the good stuff.

Hacker Smacker is directly inspired by Slashdot's friend/foe system. Hacker Smacker is also open-source and is available on GitHub.

Field Observations

A standard neutral orb next to a Hacker News comment
A friend or foe has not yet been made. The standard orb.
The orb expanding to show friend and foe options
Choosing a friend or foe. Animation provides a nice slide out.
Multiple comments showing a mix of friends and foes
A blend of friends and foes illustrating the transformative experience of Hacker Smacker.

Get the Extension

or, install manually
Chrome
Download .crx

Drag into chrome://extensions

Firefox
Download .xpi

Drag into Firefox to install

Safari
Download .safariextz

Double-click to install

Great comments to start your collection

Background

Hacker Smacker was built to learn how FoaF (Friend of a Friend) works. The idea is that not only do you want to surface content from your friends, but if you chose your friends well, they can help you surface more great content by highlighting comments from their friends.

The impetus for building a small system where the primary goal is simply to quickly show relationships was that I wanted to build the same system for NewsBlur, a visual RSS feed reader with intelligence. The backend is built using Redis sets and CoffeeScript/Node.js. NewsBlur's social layer, which was built immediately after this project, uses a very similar backend.

Learning how to build this project was the main reason, as I am now able to bring this technique to other projects.