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.
Same with me, I doubt I've used the f word in comments.
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 also had a badge for the F-word about 30 mins ago), which I am pretty sure was wrong. However, having checked again just now it has disappeared.
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!
Oh apparently you have to use fuck in two comments. And it has to be over a certain percentage of your total comments. Also you can get a badge by mentioning Rick Astley. Hilarious.
> Oh apparently you have to use fuck in two comments. And it has to be over a certain percentage of your total comments. Also you can get a badge by mentioning Rick Astley. Hilarious.
Great fun! The gamification and cutesy badges are basically the opposite of the HN aesthetic, which gives the whole project a fun sort of tongue-in-cheek feel.
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.
Xkcd uses alt text or titles, can't remember which, to pop up an accessibility tooltip. Clever and fun but it's quite dated and doesn't work on most (all?) mobile browsers.
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!"]);
> badges.push(["mute", "Mute", "Less than 10 comments."]);
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.
> > badges.push(["mute", "Mute", "Less than 10 comments."]);
>
> 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
I'm just glad HN doesn't (yet?) have strict (puritanical, think of the children/advertisers, etc) language rules. I mean we're all adults here, we can use adult language to each other.
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.
I think I've seen it on sexual education-like videos on Instagram, too. People censored the names of genitals, probably so that automatic filters won't ban them or whatnot.
It's not that, it's more that there are words in general that TikTok does not tolerate, and there's no definitive list of those words. Some of them: gun, pissed, penis, vagina, any swear word, etc.
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.
Indeed, and it's not as if we use those words every day in informal context. Yet when it's slightly more public it's suddenly a big deal? It's a bit hypocritical to pretend to be offended by something that everyone really does.
Even the "think of the children". Are there any children that don't know these words?
This is one of those topics I tend to agree with in principle.
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 ;)
"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."
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?
Especially TikTok has very aggressive content filtering, so if you want people to see your content about such topics, you need to use terms the filter doesn't yet penalize.
I’m a bit confused by the recent adoption in saying “unalive” instead of “suicide”, I’m genuinely not sure what it accomplishes. They sound similar and mean the same thing.
At least on TikTok "unalive" is used as a replacement for "kill" in a way to circumvent the automatic language detection from banning/quarantining your content.
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.
That's pretty cute, and from looking at some of the badges I can see that a decent bit of work was put into coming up with some unique and meaningful badges. Nice work!
From what I remember from University anyone can have an internet. It just won’t be THE Internet. So feel free to set one up. If you are at the border of two countries chuck a network cable over that border.
But remember, it is your internet, so you don't have to peer equally with everyone. You can allocate bandwidth to those you prefer while limiting to those you don't. Just like THE internet.
Just FWIW you can’t hover over things on mobile, that’s a pretty bad way to reveal what the badges are for. It would be better to just show what the badge is for in smaller italics text under the badge name.
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 :)
Bug! Badges have descriptions in the title attributes on the <li> elements, but <li>s contain <img>s which also have an accessibility title and that's what gets displayed (on my Firefox 91.0.2), so I have to look at html to read the badge descriptions. I love this, btw!
It wrongly thinks that I have a Bitcoin address in my about page, and thus gives me a "Bitcoiner" badge, which… I really do not want, and almost take offense at.
More seriously, I think the app is confused by the Tor Onion v3 address in my profile.
Kudos for running your site on Tor. I’ve been wanting to do that as well, but I’ve been putting it off because I don’t have any good enough content at the moment to warrant maintaining a site for. So currently I just post stuff to TikTok and Reddit etc. But when I make something good enough and I put it on a site of my own, I will make my site run over Tor also in addition to clear net.
(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?
Thanks for the feedback - the karma thing is on purpose - you don’t lose the 4 badge because you got the 5, ironically as if gaining karma is a game of some kind!
Very neat app! One other bug report: I have a "programmer" badge for mentioning a programming language in my about page, but such isn't the case. Not sure which part of my bio it might be mistaking for a language?
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.
Well, now I learned that there is apparently a way to change the header color and I have enough karma to do so. And I got a Gordan Ramsey badge for swearing ;)
Bug report: On my badge profile [0], it looks like the Keybase proof link is correctly detected, however, I think it's also being interpreted as a bitcoin address (I do not have a BTC address in the profile despite having the badge).
Great work! You need some caching and a few more badges:
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.
It seems the names are case sensitive. While HN itself is case insensitive. Also: Is there any documentation about what different badges mean?
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
Comment karma is not visible (it used to be and it was terrible...). But submitted story karma is public so it's possible to sum it up and negate it from a user's public total karma.
So got side-tracked - but pg has 156K karma, but is not on the leaderboard (/leaders). I assume that dang etc are not there either but I had not really thought about it.
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 :-)
Colourful badge is for those with enough karma to set their header colour. If you hover over the badge title, it describes the badge itself. Many people have mentioned that you can't hover over text on mobile so you might need to visit the site on a desktop to find out the rest.
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.
"Hover over text for description ..." does not work on tablets. And the displayed badges are heavily distorted in the vertical direction. That's while reading this with the Materialistic app on an Android device.
"Social media" has no real definition, I suppose, but I don't consider a crowd-sourced link aggregator with comments to be that. You probably at least need primarily user-generated content and some way to explicitly follow specific people and customize the information view based on a user's personal network. We have no networks here. Also, no avatars, sparse profiles many don't even fill out, all leads to users who are less memorable than even the old vBulletin days. I can think of exactly two users off the top of my head whose user names I'd even recognize. I think that is part of the point, too. You're supposed to focus on the information content here, not the person who submitted it. It's backwards compared to what I would consider social media, where the focus is very much on who.
It's a third party service that's entirely external, separated from and unaffiliated with HN, so your illusion of not using social media can remain undisturbed :).
What is classified as the "F Word!"?
I have alledgedly used it twice giving me the badge, but glancing through my comments I cannot see any mention of what I perceive as the american "F word"
Love the use of vanilla js framework, truly bleeding edge. I suggest you try using the css media query framework as well and add some margins on mobile :p. Otherwise great way to tickle my narcissism!
There are media queries (take a look!) but although it might appear ugly I like to use full width on mobile devices to make the most of the space. The phone case is the margin!
> 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.
It might be but nope I don’t track (no analytics at all). I have no idea what traffic went to the site. Hosted on netlify who as far as I know don’t track or provide access logs.
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.