Settings

Theme

Ask HN/PG : Why are comments ordered like this?

32 points by pig 15 years ago · 27 comments · 1 min read


See http://news.ycombinator.com/item?id=1162965

pg's comment, with just 17 points, is placed above brh's comment, which has 110 points. Both the comments are from 262 days ago.

Why is this so?

zck 15 years ago

Looking at the arc 3.1 source, I'm not sure why that's the case.

The real work here is done by * frontpage-rank* . It's implemented as follows:

  (def frontpage-rank (s (o scorefn realscore) (o gravity gravity* ))
    (* (/ (let base (- (scorefn s) 1)
            (if (> base 0) (expt base .8) base))
          (expt (/ (+ (item-age s) timebase* ) 60) gravity))
       (if (no (in s!type 'story 'poll))  .5
           (blank s!url)                  nourl-factor*
           (lightweight s)                (min lightweight-factor* 
                                               (contro-factor s))
                                          (contro-factor s))))
realscore subtracts any votes that are noted as "sockvotes" from the item's raw score.

The first few lines here won't change too much here for either comment. Obviously, the 110 point comment will have a higher base score than the 17 point comment. They're about the same age, so (expt (/ (+ (item-age s) timebase* ) 60) gravity) will be about the same for each of them. So the division will come up with a number that's a few times higher for brh's comment.

The interesting part is the multiplication here. I don't think either would be considered a story, so neither is being multiplied by .5; neither has a blank url, so they're not getting hit by nourl-factor.

It comes down to the final part, whether one is considered "lightweight", and what the contro-factor* of each is. It takes into account the number of children of the comment (the visible-family call). It shouldn't make a difference, though -- neither of the posts has more than 20 children, so contro-factor for both should be 1. I think I'm missing something, as what I've said wouldn't explain the ordering.

Notably, though, it doesn't take into either account karma or average karma of the poster to determine rank.

Edit: as ChaosMachine pointed out, it does take into account users' average karma: http://news.ycombinator.com/item?id=1923716 . Ey pointed out that pg's post is here: http://news.ycombinator.com/item?id=1398764

  • seancron 15 years ago

    HN uses a modified algorithm to calculate the ranking. PG posted it on a story somewhere, but I can't seem to find it right now.

    It takes the user's karma score into account in the ranking.

  • TeHCrAzY 15 years ago

    I want to point out that I have never looked at arc the language before, and yet the snippet above is very easy to quickly understand.

meric 15 years ago

Interestingly, the author of the 110 point comment has no submissions and only one comment - that one.

  • bmelton 15 years ago

    That reminds me so much of the article about the guy who fluked the highest ever recorded Scrabble score.

    Oddly enough, I THINK (I'm not looking it up, and if I'm wrong, let me believe the lie) the first word he dropped in that game was 110 points as well.

chaosmachine 15 years ago

Average comment karma of the poster plays a significant role in determining comment order.

  • palish 15 years ago

    Yuck. I hope it's a rolling average (i.e. the average from the last 30 days). My account is 1368 days old! How the heck am I supposed to change my average in any significant way?

    • zck 15 years ago

      The average is calculated by taking your most recent 50 comments, dropping the first five, dropping the max, and averaging the rest. Yours is currently 7.14 (it's in your profile), a very high average. For comparison, of the 100 people on the leaderboard, there are only nine with a higher average.

      • AgentConundrum 15 years ago

        Slightly off topic, but do you have any idea how often the average is recalculated? I only ask because I've noticed that my average hasn't changed since it appeared in the top bar, yet I've doubled my total karma in the last two weeks.

        Based on the formula you just gave, my average should be 3.27, but it still shows 2.55.

        I realize it's a bit of a meaningless metric, but it's something I've been idly pondering for a few days.

      • cubicle67 15 years ago

        ah, that explains why a few days ago mine dropped from 8.x to 5.07 overnight. I just assumed the algorithm had been tweaked.

  • zck 15 years ago

    I can't find anything in the arc source to support that. Can you point me to something?

dkokelley 15 years ago

Possibly still due to the time decay function. I don't know exactly when each comment was created, but pg's comment may have been more recent (within 24 hours). I haven't looked at the inner workings, but I imagine that upvotes might also be weighted more for how recent they are. Example: pg's comment may have received 17 upvotes within a minute of posting, and his post was 4 hours after brh's, and brh's upvotes happened slower, or before pg's comment.

This is all speculation. Maybe someone who has looked at the code could confirm or debunk this.

  • andre3k1 15 years ago

    I not certain, I am under the belief that the function that is applied to the comments pages is very closely related to the function that is applied to the main page.

    I.e. a bit of time decay, overall karma activity (Karma score + comment karma score), number of sub threads, etc.

pigOP 15 years ago

Link for easy clicking : http://news.ycombinator.com/item?id=1162965

JoeCortopassi 15 years ago

The karma points are probably weighted by user, so that users with higher karma carry more weight per point.

blasdel 15 years ago

Note that pg can do whatever he wants in the REPL.

I haven't noticed any thread ordering tomfoolery before, but he's definitely hidden posts from the index pages before without [dead]-ing them.

  • RK 15 years ago

    And comments were occasionally altered in the early days.

evanrmurphy 15 years ago

Is it because pg's comment has a more developed (and karmaful) subthread?

  • pigOP 15 years ago

    sum(pg's thread) = 80 points

    sum(brh's thread) = 130 points

auston 15 years ago

More comments on pg's thread.

As an experiment; let's upvote chaosmachines comment to 5 add 1 comment, leave mine get mine to 3 & add 3 comments.

Keyboard Shortcuts

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