Блог пользователя kien_coi_1997

Автор kien_coi_1997, 10 лет назад, По-английски

In my profile page, it is +54: http://codeforces.net/profile/kien_coi_1997

In top-contributor page, it is +58: http://codeforces.net/top-contributed

I have checked my comments and posts, none of them have changed score.

What happened?

  • Проголосовать: нравится
  • +3
  • Проголосовать: не нравится

»
10 лет назад, # |
Rev. 2   Проголосовать: нравится +18 Проголосовать: не нравится

Wait some time, it will be OK. Results in top-contributor page are just not updated yet. You lost some contribution because points for this topic was multiplied by 0.5 (because 180 days have passed from day of its creation, read this for clarification).

  • »
    »
    10 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

    thank you

  • »
    »
    10 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

    It still doesn't make sense. Why would the contribution shown in the 2 cases be different? Shouldn't they both just take 1 value that's updated when necessary?

    • »
      »
      »
      10 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится

      Contribution in profile shows actual value (or is updated often enough); list of top contributors updates not so often. That is why value in that list sometimes is out of date. BTW, it already says that contribution of kien_coi_1997 is +54)

      • »
        »
        »
        »
        10 лет назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится

        Contribution in profile shows actual value (or is updated often enough); list of top contributors updates not so often.

        I realize that, what I don't get is why they can't both be updated often enough. Even if it wasn't automatic, what about a script "every 5 minutes: update contributors' list"?

        • »
          »
          »
          »
          »
          10 лет назад, # ^ |
            Проголосовать: нравится 0 Проголосовать: не нравится

          For me that is interesting too. We should probably ask MikeMirzayanov:) Maybe it has something to do with reducing server load, i dont know.

        • »
          »
          »
          »
          »
          10 лет назад, # ^ |
          Rev. 4   Проголосовать: нравится +21 Проголосовать: не нравится

          I think I can guess — note that in the contribution table you need not only maintain the points for users, but also the sorting according to their points.

          Now see, there are about 100000 with tons of comments and posts (well, contribution table contains just about 10000 entries). Recalculation of the points for a given user takes some time, even if it is few milliseconds.

          Does it make sense to update the order of ranking table after each user is recalculated? Not that much because quite soon many other users would be recalculated too. I mean that it is not a good idea either to update just points without updating the order (and have local fragments of table wrongly ordered) or to allow the table to shift its lines due to changing sorting each second).

          So it is just natural to update the table after some significant amount of users were processed. You see, it is only technical issue about implementation.

          Just guessing, I have no relation to CF team

          P.S. Surely it was possible to hide the changing of the rating on the profile pages until the table is updated (to update them simultaneously) to avoid bewilderment, but I suppose it was not considered as an important and necessary feature.

          • »
            »
            »
            »
            »
            »
            10 лет назад, # ^ |
              Проголосовать: нравится 0 Проголосовать: не нравится

            Once again: or after a significant amount of time has passed. Like 5 minutes. The rate at which comments' and blogs' voting for a single user changes is probably much smaller than , so the contributors' list with this change would be very precise.

            • »
              »
              »
              »
              »
              »
              »
              10 лет назад, # ^ |
              Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится

              If there are 10000 users in the contribution table and for each of them the value changes once per 5 minute (for example due to 180 days rule, someone's voting etc) we should expect about 2000 changes to the table per minute, or about 30 per second.

              I do not think there is a sane reason to update the order of the table so often. So it is updated with some arbitrarily chosen period. For comparison note, for example, that statistics at ProjectEuler is updated roughly once per hour.

              Or probably I did not get what you are about?

              • »
                »
                »
                »
                »
                »
                »
                »
                10 лет назад, # ^ |
                  Проголосовать: нравится 0 Проголосовать: не нравится

                You're off by an order of 5. Each day, up to 100 blogs and comments appear on average (more than hundred is really just when a round's been conducted, which is rare), so there'd be up to 100 changes due to the 180 days rule each day, so about 0,01 changes per minute. It's insane to think a user would make a blog post or comment every 5 minutes.

                You should've assumed that a value changes every 5 minutes, not that each contributor's value does.

                • »
                  »
                  »
                  »
                  »
                  »
                  »
                  »
                  »
                  10 лет назад, # ^ |
                    Проголосовать: нравится 0 Проголосовать: не нравится

                  up to 100 changes due to the 180 days rule each day, so about 0,01 changes per minute.

                  I suppose you meant 0.1 since there are only 1440 minutes in the day. ;-)

                  Ok, and how many changes due to new votes? I can't assess it that easily. Should the table be updated after each vote cast?

                • »
                  »
                  »
                  »
                  »
                  »
                  »
                  »
                  »
                  10 лет назад, # ^ |
                    Проголосовать: нравится 0 Проголосовать: не нравится

                  Yeah, 0,1 (0,07 if the 100 isn't taken as just an estimate of order but as a rough reasonable number).

                  I suppose the changes due to votes are about 1 orders higher at best (taking into account that high-voted comments have abs. value of votes about 50, on average it's up to 10 and there shouldn't be more than 2-3 times that many votes in total per comment, plus there are at most 100 comments per day average), which'd make it about 10 changes per these 5 minutes. Updating after 10 changes without performance cost is nice.