Show HN: HN Badges – Displays game-like badges for your HN profile
hnbadges.netlify.app
hnbadges.netlify.app
The user RiderOfGiraffes is claimed to have used the F word. Searching through their comments I can find no such usage, but the replies to their comments are consistent with the count given. I think the count is incorrectly including occurrences in replies by other people to comments.
Added in edit:
Following the suggestion from elsewhere I've tracked down the problem. It's counting the "Fuk" in Fukushima, the "funk" in "jazz funk", and the "Fack" in "Fack to Brunt".
So that's wrong, being mislead by the results from the search engine's false matches.
But holy cow! Close to 15k submissions now.
The karma/comment ratio is obviously with total karma (including submission karma). I think if you only counted comment karma (no idea if that's possible) I wouldn't have either of the comment badges.
I'm not sure what to make of badges being bestowed on HN. It's rather like walking into a civil service interview and finding the panel wearing Hawaiian shirts and drinking colourful cocktails. A generous gesture, regardless, and it brought a smile to my face.
Edit to add: just noticed that while I was commenting, quickthrower2 posted to say that they'd fixed the problem. Nice one!
Congratulations on reaching your quota :)
Edit: Oh, apparently that's not what "Colorful" means at all.
Perhaps, but it would be a bit immature to do so. Or even to quote someone else doing so.
> Perhaps, but it would be a bit immature to do so. Or even to quote someone else doing so.
Yeah I shudder to think about how gamification in this way will change the discourse here.
>> Perhaps, but it would be a bit immature to do so. Or even to quote someone else doing so.
>Yeah I shudder to think about how gamification in this way will change the discourse here.
So do I. There could be some serious fucking repercussions from this.
Because I don't have anything more constructive to say, I'll just point out what looks like a small error: the text for the "Early Adopter" badge always seems to say "NaN" in place of the user's name.
https://news.ycombinator.com/user?id=NaN
Edit:
They work fine on Firefox though.
badges.push(["story-teller", "Story Teller", "Has submitted a story to Hacker News."]);
badges.push(["inquisitive", "Inquisitive", "Has submitted an ask HN."]);
badges.push(["show-off", "Show Off", "Has submitted an show HN."]);
badges.push(["out-of-park", "Out of the park!", "Has submitted anything to HN with at least 100 upvotes."]);
badges.push(["won-the-internet", "Won the internet!", "Has submitted anything to HN with at least 500 upvotes."]);
badges.push(["market-researcher", "Marker Researcher", "Has submitted a poll HN."]);
badges.push(["self-describer", "Self Describer", "Has written something in the about section of their profile. Thanks for sharing, " + user + "!"]);
badges.push(["memior", "Memior", "About section has over 1000 characters."]);
badges.push(["has-a-life", "Has a life", "Hasn't interacted with HN for over 180 days."]);
badges.push(["fword", "F Word!", "Has used the F word in at least 2 comments and more than 0.1% of comments. " + user + " has " + fWordInfo.nbHits + " such comments."]);
badges.push(["gordan-ramsey", "Gordan Ramsey", "Has used the F word in at least 10 comments and more than 1% of comments. " + user + " has " + fWordInfo.nbHits + " such comments."]);
badges.push(["rick-roller", "Rick Roller", "Has mentioned Rick Astley in a comment."]);
badges.push(["motor-mouth", "Motor Mouth", "Has over 10000 comments."]);
badges.push(["mute", "Mute", "Less than 10 comments."]);
badges.push(["flag-powers", "Flag Powers", "Has enough karma to flag submissions."]);
badges.push(["colorful", "Colorful", "Has enough karma to set their header color."]);
badges.push(["downvote-powers", "Downvote Powers", "Has enough karma to downvote other users. This doesn't necessarily mean they have downvoted you!"]);
badges.push(["4-figure-karma", "4 Figure Karma", "Has reached or exceeded 1000 karma points."]);
badges.push(["5-figure-karma", "5 Figure Karma", "Has reached or exceeded 10000 karma points."]);
badges.push(["earthly-nirvana", "Earthly Nirvana", "Has reached or exceeded 100000 karma points."]);
badges.push(["pretty-good-commenter", "Pretty Good Commenter", "Has a karma/comment ratio of 5 or higher."]);
badges.push(["substantive-commenter", "Substantive Commenter", "Has a karma/comment ratio of 10 or higher."]);
badges.push(["og", "OG", "An original user of HN, by my arbitrary definition: someone who joined before 2008. " + joinSentence]);
badges.push(["early-adopter", "Early Adopter", "An early adopter of HN, by my arbitrary definition: someone who joined before 2010. " + joinSentence]);
badges.push(["necro-linker", "Necro Linker", "About page links to defunct service, e.g. hnchat.com."]);
badges.push(["call-me-anytime", "Call Me Anytime", "Profile has a US telephone number."]);
badges.push(["bird-of-a-feather", "Bird of a feather", "Has a Twitter link/reference in about page."]);
badges.push(["corporate-drone", "Corporate Drone", "Has a Linked in URL in about page."]);
badges.push(["tim-berners-lee", "Tim Berners Lee", "Has a link in about page."]);
badges.push(["git", "Git", "Has a Github link in their about page."]);
badges.push(["programmer", "Programmer", "Mentions a programming language in their about page."]);
badges.push(["top-secret", "Top Secret", "Has a Keybase link in their about page."]);
badges.push(["open-book", "Open Book", "Has an About Me link in their about page."]);
badges.push(["beggar", "Beggar", "Has a Patreon Link in their about page."]);
badges.push(["bitcoiner", "Bitcoiner", "Has a Bitcoin Address in their about page."]);
badges.push(["friend", "Friend", "Has a link to this very site!"]);If I understand this correctly, all new users will get this badge, and then lose it as soon as they post their 10th comment. Seems to me a badge should be something you earn and then can never lose.
Then again, all of the "Has a _____ in their about page" badges can be lost by removing the relevant items from the user's about page. But that seems OK to me, because the user is at least choosing to remove the item.
> badges.push(["og", "OG", "An original user of HN, by my arbitrary definition: someone who joined before 2008. " + joinSentence]);
> badges.push(["early-adopter", "Early Adopter", "An early adopter of HN, by my arbitrary definition: someone who joined before 2010. " + joinSentence]);
And these are badges no one can ever earn, who doesn't already have them.
>
> If I understand this correctly, all new users will get this badge, and then lose it as soon as they post their 10th comment. Seems to me a badge should be something you earn and then can never lose.
I think that is the case for the Mute badge. I have it and I have more than 10 comments
Really inspired me to think about integrating something like this in one of our systems.
Likewise, I don't get the recent trend of self-censoring words like suicide, police or kill. I think it's mainly a thing on tiktok? But it's leaking out from there as well.
It's a difficult problem, I think.
edit - I guess Tiananmen Square isn't available in spell check
So since there's no definitive list and you can't make one because the content is not outright deleted (algorithm just ignores it), you end up in a situation where TikTok users self-censor just in case.
This is similar to what China does internally, but the list is definitely different.
Even the "think of the children". Are there any children that don't know these words?
Like monad or functor?
Edit: I'd be more worried about using a word like "monad" incorrectly on HN than swearing.
You know, the kinds of topics they flag as "adult situations" in TV.
A rock is most definitely 'unalive', but it didn't commit suicide, nor was it murdered.
As technologists we're tuned the idea that if you throw enough code at a problem it can be solved, but currently it's very clear that the content filtering 'AI's that are out there on the big platforms are not very good at their jobs.
And then every time I run into someone who feels very strongly about it ... the rate of me thinking about how it should be a rule based on their usage alone.
One of those weird things where i agree and then you meet the folks who have very strong feelings about it and I start to have second thoughts ;)
Granted I don't yet feel that way.
I presume this is to that their postings won't be censored/shadow banned/deleted/muted/whatever. Kind of reminds you of China, doesn't it?
Happy to add any suggestions. I don’t want to make too many more api calls to algolia though!
It would also be cool to see a list of all possible badges.
That being said, enough of the world is gamified already… this is nice work and a fun diversion but I’m glad it’s not a real feature of HN :)
I fixed the biggest cause of confusion, the F word search is now fixed, and so getting a Gordon Ramsey should be a pretty rare occurrence.
More seriously, I think the app is confused by the Tor Onion v3 address in my profile.
/^(?:https?\:\/\/)?[\w\-\.]+\.onion/But it looks cool and works well! Nice effort!
(I'm also distraught about some of the numbers. I know I have a HN problem, but seeing it laid out like that...)
I second the "hover text" issue other commenters brought up - it would be great if badge details were accessible in other ways (e.g. expanding hidden text or a popup when the user clicks a badge or its main text).
EDIT:
s/Call Me Anytime/Call Me Maybe/ for extra meme value?
Karma length check seems to be wrong. 5 figure karma und 4 figure karma can be had at the same time
s/marker researcher/market researcher/
At least I think that those are valid corrections...
Fun project
edit: found it, it's reacting to the fact that my keybase ID happened to have a "VB" in the middle. You might want to change some of those language checks from |vb| to |\bvb\b| or the like.
That makes sense. If you have more than 5 figure of karma you also have more than 4 figure of karma.
Examples that others use: https://news.ycombinator.com/topcolors
https://i.imgur.com/WugZOTS.png
Works fine in Chrome though.
You can fix it by adding:
height: intrinsic;
to the img CSS selector `.badgecontainer ul li img`Also, is this open sourced and am I allowed to use this in my HN Client?
https://play.google.com/store/apps/details?id=com.pranapps.h...
https://apps.apple.com/ca/app/hack-for-hacker-news-developer...
1. Distinguish people with more karma from comments vs posts if you haven’t already:
- substantive commenter for comment upvote average above xy.
- engaging commenter for high comment replies on average.
- great content curator for high average upvote on submitted content
- engaging content curator for lots of comments received from submitted content
- badge for people whose carma is mostly from comments instead of posts. (content sharing increases the karma quickly, but those with lots of karma from comments have the best insights and that’s worth recognizing)
Then show a leaderboard per each badge that merits it.
Edit: As it turns out you need to hover over the text to get an description, while the icon only shows "icon for x" on mouseover.
Addendum: Would it be possible to split karma into submit and comment karma? My gut says it'd not be possible as HN uses some kinda curve + only displays the combined karma on the profile
https://hn.algolia.com/cool_apps
I submitted a pull request to add your site to the list.
If this gets popular I might have to try and find my first HN login - I want that OG badge. :-)
Which kind of is the point - I dont really want to worry about those sort of things - I am glad HN is staying off this course. But it is fun :-)
Inquisitive - Has submitted an ask HN
Show Off - Has submitted an show HN
Out of the park! - Has submitted anything to HN with at least 100 upvotes
Won the internet! - Has submitted anything to HN with at least 500 upvotes
Marker Researcher - Has submitted a poll HN
Self Describer - Has written something in the about section of their profile
Has a life - Hasn't interacted with HN for over 180 days
Memior - About section has over 1000 characters
F Word! - Has used the F word in at least 2 comments and more than 0.1% of comments
Gordan Ramsey - Has used the F word in at least 10 comments and more than 1% of comments
Rick Roller - Has mentioned Rick Astley in a comment
Motor Mouth - Has over 10000 comments
Mute - Less than 10 comments
Flag Powers - Has enough karma to flag submissions
Colorful - Has enough karma to set their header color
Downvote Powers - Has enough karma to downvote other users
4 Figure Karma - Has reached or exceeded 1000 karma points
5 Figure Karma - Has reached or exceeded 10000 karma points
Earthly Nirvana - Has reached or exceeded 100000 karma points
Pretty Good Commenter - Has a karma/comment ratio of 5 or higher
Substantive Commenter - Has a karma/comment ratio of 10 or higher
OG - An original user of HN: someone who joined before 2008
Early Adopter - An early adopter of HN: someone who joined before 2010
Necro Linker - About page links to defunct service, e.g. hnchat.com
Call Me Anytime - Profile has a US telephone number
Bird of a feather - Has a Twitter link/reference in about page
Corporate Drone - Has a LinkedIn URL in about page
Tim Berners Lee - Has a link in about page
Git - Has a Github link in their about page
Programmer - Mentions a programming language in their about page
Top Secret - Has a Keybase link in their about page
Open Book - Has an About.me link in their about page
Beggar - Has a Patreon/Hypage/Buymeacoffe/Indiegogo/Liberapay/Kickstarter link in their about page
Bitcoiner - Has a Bitcoin Address in their about page
Wow, I guess I cannot ignore my addiction anymore. I haven’t taken a 6 months break in 8 years of HN commenting?!
Wait, what?
Achievement unlocked?
Typo or Wekman?
What exactly are you trying to achieve with this?
Looks like pg got that one too. Which makes me think this would benefit from a caching layer somewhere. I doubt I’m the first person who looked at pg’s page today, and I doubt the badges change very frequently.
The project is just HTML/css/js and uses third party apis.
But, does it mean that HN is now a proper social medium? Or can I still brag about how I don't use social media at all ever (except linkedin)?
processing time 2
I don't want it to be part of HN though, I like HNs minimalism as it is.
Also, what the long term prospects of this project? If I bookmark it, and return in 5 years time, will it still be up ?
I recently went through my bookmarks (900+, oldest bookmark from 9 years ago) and about 20% of the links still worked (2xx status code) while only half of those actually had the same content as the one I bookmarked.
So yeah, if you bookmark X and return in 5 years time, it's very unlikely to still be there. The web is suffering from huge bitrot scenarios right now with no fixes in sight so far. I personally started backing up content locally with `wget --mirror $URL` to prevent this for myself.
There seems to be a bug...(Firefox on linux)
Feedback - a small bug - somehow it misses / hides the "½" character in my bio (profile description).
...the text wraps around nicely, unlike here :)