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

Автор Rubanenko, 9 лет назад, перевод, По-русски

Несколько недель назад на просторах блогов CF было очередное обсуждение на тему "почему так долго не обновляют рейтинг!?!?". В своем ответе MikeMirzayanov назвал несколько причин: 1. читеров проверяют руками; 2. раунды, как правило, проводятся вечером и Майку нужно потратить какое-то время, чтобы добраться домой; 3. иногда его маленькая дочь просит поиграть с ней и Майк, конечно же, не может отказать.

После того, как 1k_trash, Maxim и я узнали о третьей причине, мы начали думать, что можно с этим сделать. Немного подумав, к нам в голову пришло решение, которе делают счастливыми и участников, и дочь Майка. Решение заключалось в создании браузерного расширения, которое пересчитывает рейтинг в любой момент соревнования, когда вы обновляете страницу. Как-то так:

К счастью, CodeForces дал нам все карты в руки: API и детальная реализация метода пересчета рейтинга.

Раньше мы практически ничего такого не делали, но нам очень хотелось сделать что-то для CodeForces. В конце концов, мы не пожалели и получили много фана в процессе создания расширения. Сначала нам не удалось заставить расширение работать для больших контестов, вроде див2 и общих раундов. API не мог обслуживать тяжелые реквесты относительно начального рейтинга участников. В итоге, нам пришлось свичнуть все на бэкграунд при запуске браузера. Другими словами, при запуске мы выкачиваем начальные рейтинги всех юзеров, чтобы не делать это при каждом обновлении страницы.
Когда мы закончили с этим, было ясно две вещи:

  • на 5к участников наше расширение работало около 30 секунд. Да, мы писали его на JS :)
  • рейтинги были посчитаны неправильно!

К счастью, мы могли сравнить нашу реализацию с реализацией Майка чуть ли не по буквам. Проблема была в типах: официальное решение юзает int, а мы...var :). parseInt почти везде решил проблему, вот и хорошо :)
К этому моменту у нас был правильно работающий пересчет, но он был очень медленным. Наша команда немного приуныла, поскольку мы были уверены, что CF юзает самое быстрое возможное решение, и что у нас нету шансов как-то ускорить процесс. Однако, немного подумав, мы увидели, что "int везде" дает нам возможность сделать некоторую меморизацию. В итоге у нас было решение за O(min(N * K), N2 * log(N)), где N — количество участников раунда, а K — количество разных целых значений рейтинга. В текущих реалиях, K лежит в районе 3-4k, таким образом решение ускорилось раз в 20! В конце концов, мы закончили некоторые мелкие детали и выкатили расширение в хром стор.

Установить расширение

Everybody is welcome to contribute to our Github repository.
Hope you love it!

UPD

Thank you all guys for your feedback. After the extensions attracted so much attention we have no choice but to do our best in order to make it better. We will make a lot of changes this week: fix bugs you reported, add requested features, switch to backend in order to decrease pressure on CF servers during the contest.
A special shoutout goes to people, who contributed to our repository. We are very grateful and will look at every pool request these days.
A big thanks to Mike Mirzayanov for being friendly, ready to collaborate and giving few pieces of advice.

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

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

Насколько я понял, оно не работает на прошедших контестах. Я установил, решил попробовать на каком-нибудь из прошедших контестов, а оно мне 0 иногда показывало, хотя в реальности там было ненулевое изменение рейтинга.

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

    Нужно подождать пару минут. Причина описана в посте)

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

      .

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

        На большой таблице порядка секунды работает. На див1 моментально.

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

          .

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

            Людей,знающих js, у нас ровно ноль, поэтому явно не оптимально) контрибьюшн приветствуется)

            Ребята говорили, что в скорости первоначальной выгрузки от нас не много зависит.

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

seems awesome!!! I think everybody will love it :)

PS: It would be great if you develope the extension for other browsers such as Safari or FireFox :D

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

А расширение не будет давать дополнительную нагрузку на кф? Вроде же при обычном обновлении скачивается только часть ранклиста.

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

Только у меня проблемы появились с "показывать неофиц."?

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

    нет

    оно еще и считает неправильно

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

      Неправильно считается только для старых контестов, так как скачиваются текущие рейтинги, а не те, которые были до соревнования. Для текущих контестов все работает.

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

      Вероятно, так показалось из-за того, что рейтинги обновились, и дельты, которые видны, взяты относительно новых рейтингов,а не тех, которые были до контеста.

»
9 лет назад, # |
  Проголосовать: нравится +3 Проголосовать: не нравится

Было бы весело использовать NBHEXT вместе с виртуальными контестами, чтобы узнать возможное изменение рейтинга. Таким образом можно самому себе организовывать в каком-то смысле "рейтинговые" контесты.

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

    Мы планируем это запилить, если расширение будет достаточно популярным)

»
9 лет назад, # |
  Проголосовать: нравится +5 Проголосовать: не нравится

Awesome :)

Sorry I have a question ?! Why you don't calculate rating after contest just once and save it in a file or database, then extension must just download data from your host and use them without calculation ?

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

    Thanks for your review! We thought it will be interesting to know how the contest is going right now. Sure, we will move our data to own host if current solution won't work well. Thank you again and have fun solving problems!

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

    We are glad that you like it:)

    We think that seeing the rating change during a contest is pretty exciting :)

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

      sorry, I didn't read it carefully. you're right , really exciting :)

      But how about server high pressure at middle of contest ? Maybe this extra requests (for downloading whole scoreboard) for server will decrease the speed of loading pages or ... ?

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

        We don't think it will cause some visible problems. Anyway,will see tomorrow)

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

          I can't understand this statement clearly :

          So, actually, you have to wait around two minutes after you turned on the browser in order to let the extension download current ratings of all the users. Don't worry, it happens only once the browser has started.

          It means extension will download standing page just once and will calculate ratings!? or each time we open standing page must download it ?

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

            Only once, when the browser is launched. All other requests work no more than a couple of seconds.

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

            Extension will download all users ratings (with inactive users too) once when browser launched. It takes about two minutes. Actually, it reloads every 12 hours (in case if you keep your computer on and browser launched constantly). Standings data loading every time you open standings page.

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

Thanks for the extension, it's awesome! There is a small bug. If you uncheck the show unofficial box, then an HTTP 403 error message is showed.

»
9 лет назад, # |
  Проголосовать: нравится +6 Проголосовать: не нравится

А нельзя сделать так, чтобы оно только после контеста показывало прогнозируемые рейтинги? Чтоб во время контеста не отвлекаться :)

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

.

»
9 лет назад, # |
  Проголосовать: нравится +115 Проголосовать: не нравится

Looks like 1k_trash has an interesting pastime activity! :p

»
9 лет назад, # |
  Проголосовать: нравится +1 Проголосовать: не нравится

Someone converting to Safari?

I'd love to try my hand at it if no one else is already working on the same...

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

    Oh sure, that would be great, thank you! And don't forget to make a pull request when you are done.

»
9 лет назад, # |
  Проголосовать: нравится +1 Проголосовать: не нравится

Спасибо парни, прикольная штукенция! А он для командных рейтинговых приспособлен уже?

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

    Еще нет, пока только для личных контестов. Поддержку командных соревнований обязательно запилим в следующей версии.

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

Круто! Полезная вещь! Вы круты!

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

»
9 лет назад, # |
  Проголосовать: нравится +8 Проголосовать: не нравится

Обнаружил баг:

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

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

      Спасибо! Действительно, такой баг есть, но он срабатывает только на новых пользователях Codeforces. На расчете рейтинга для аккаунтов, с которых был написан хотя бы один контест, это не отражается.

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

        Или все же отражается? По результатам контеста изменения заметно отличаются от тех, которые прогнозировал скрипт. Для новых пользователей — в худшую сторону, для всех остальных — в лучшую (наверное, именно за счет новых пользователей).

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

          Спасибо. Судя по всему, вы правы. Определенно разберемся и пофиксим в следующей версии. Как вам в целом расширение и идея?

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

            Может быть, проблемы из-за неправильного стартового рейтинга новых пользователей?

»
9 лет назад, # |
  Проголосовать: нравится +31 Проголосовать: не нравится

А теперь расширение для предугадывания результатов системного тестирования...

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

    пусть авторы выкладывают набор тестов минут через 10 после конца контеста, тогда задача станет на много проще)) и параллельно решиться вопрос с длинными тестами, которые не отображаются

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

After system test, the extension was showing that I will get -8, but instead I got +6. I think there is difference between your and Codeforces' algorithm (unless some people was banned from leaderboard because of cheating after systest; I'm not sure about that)

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

    We will definitely investigate it.

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

      I am actually got +199 ratings, but your plugin showed that I should get +150. How about that? Any help? Thanks.

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

    Also, according to the extension, several unrated coders were supposed to get +800. Perhaps this bug is indirectly affecting rated coders?

    Edit: Btw, the fact that the extension is underestimating the rating change in most (all?) cases gives some supporting evidence towards this, as lowering the expected places of unrated coders would increase the expected places of rated ones and therefore cause them to be awarded less points.

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

      You are right. Rating for unrated users is 1500. We are changing rating from 0 to 1500 in our scripts. On testing data results were 100% correct. But accidently new users were not in rating list and their rating was undefined instead of 0. So their rating still were 0 instead 1500. Didn't catch it during our testing. With no doubt we will fix shortly.

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

        Oh, thanks!

        By the way, thank you all for the extension! Knowing my expected rating change during the contest was very cool!

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

      Fixed and tested it locally. Results are absolutely correct.

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

Неправильно сработало. Предсказывалось +50, на самом деле +66

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

    Будем разбираться. Когда тестировали — было стопроцентное совпадение.

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

Расхождения были из-за того, что рейтинг новых пользователей считался нулем. В формулах он должен браться как 1500. Если это исправить — результаты совпадут.

Мы это учитывали и меняли 0 на 1500. При тестировании все сходилось. Но мы не учли, что новых пользователей нет в списке зарегистрированных. При тестировании такого случая не могло быть, так как соревнование уже пересчитано. Исправим (собственно, локально — уже).

»
9 лет назад, # |
  Проголосовать: нравится +3 Проголосовать: не нравится

Hey, great work guys. Also, shouldn't the extension be under "productivity" in the Chrome store and not "accessibility"?

»
9 лет назад, # |
  Проголосовать: нравится +13 Проголосовать: не нравится

Hello, I had a doubt. If I go to the standings of some past contest, the delta column I see there is completely different from the actual rating changes shown in the RATING CHANGES tab.

Is it because you calculate the rating changes of the past contests using the current rating of the participants and not the actual past ratings before the specific contest.

I know that this extension is actually meant for only live contests. But just a confusion why is it inconsistent with the past contests.

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

    That's right, it always uses the current ratings.

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

    Hello usaxena95, thanks for your reply. You are right, now the extension always uses current rating for calculation. We will fix it in the next version, since we will move everything to our own server. So deltas for past contests will be calculating correctly. And also virtual contests will be supported.

    Thank you for the interest, stay tuned!

»
9 лет назад, # |
  Проголосовать: нравится +9 Проголосовать: не нравится

У супер красных рейтинг не пересчитывается.

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

It's really awesome !! Loving it !! :D

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

If i try to check the Show Unofficial box in the standing, it doesn't work and gives an error while keeping enabled the extension.

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

Во время вчерашнего контеста предсказываемое изменение рейтинга было 0 у всех, прождал 5 минут. Начало работать только после того, как рейтинг уже пересчитался (Но возможно, проблема не в расширении, у меня вчера с кодфорсом куча багов было: невозможность дорешивать до обновления рейтинга, долгий переход на страницу "Отправить", долгий переход на страницу рейтинга и т. п.).

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

    Спасибо за отзыв. Да, это нормальное (ну как "нормальное", скорее "обоснованное") поведение, ведь при запуске браузера мы единоразово выкачиваем рейтинги всех пользователей Codeforces. У нас при тестировании это занимало около двух минут, а у вас (учитывая, к тому же, вчерашнюю небольшую нестабильность CF) все пять.

    Этого не будет в следующей версии, так как работу с API перенесем на отдельный сервер, который будет постоянно поддерживать текущие рейтинги, дельты и все такое.

    Удачи!

»
9 лет назад, # |
  Проголосовать: нравится +21 Проголосовать: не нравится

после установки расширения пропала возможность просматривать чужие решения(по двойному щелчку на результат). это только у меня?

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

    Нет не только. Правда, не совсем пропала, а скорее, они грузятся теперь очень и очень долго (по крайне мере у меня)

»
9 лет назад, # |
  Проголосовать: нравится -9 Проголосовать: не нравится

That doesn't look neither like changes that happened at time of the contest or like changes that should happen if this was current contest — deltas are way too high (like 2 times?). Screenshot was taken on #317 if that's of any relevance.

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

    You know that rating formulas have been changed since then, right? :)

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

      Yes, I know, I have taken that into consideration — "That doesn't look (...) like changes that should happen if this was current contest" ;). How do you think that should explain such high deltas? Current changes seem to be smaller than previous ones.

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

it does not work for me. all the numbers are 0

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

Respect very nice idea

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

Для сегодняшнего контеста (329), мне предсказывалось +53, но стало +61

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

    Спасибо за наблюдательность!

    Если прочитать комменты сверху, или апдейт к посту, то можно заметить, что на втором дивизионе сейчас есть куча спецэффектов, и что на днях мы очень много всего поменяем.

»
9 лет назад, # |
  Проголосовать: нравится +3 Проголосовать: не нравится

мысли, как улучшить плагин. Никогда таким не занимался, но вроде бы часть кода (т.е. пересчет рейтинга за O(n2)) можно переписать на C++, используя NaCl — должно работать (наверно) гораздо быстрее.

Еще хорошо бы избавиться от JQuery — в паре мест, где оно используется, вполне хватит и обычного javascript.

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

    Как написано в апдейте, мы все переносим на сервер, а там уже мы не ограничены javascript-ом)

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

I think there might still be a minor bug in the extension, since I was supposed to get a +96 but got a +103 instead. I restarted my browser before the contest. Is there anything else that I should have done?

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

Not a correct output :).

However I guess that this one probably can be easily explained — I guess it didn't catch up after my submission of C? #bugreport

(I still wait for an explanation of my previous screen, which is still a mystery for me)

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

I disabled the extension before contest and during the contest i enabled it. But, now it's not showing any rating change. Showing 0 for everyone !! :( what's wrong ??

UPD: Now it's working. :)

»
9 лет назад, # |
  Проголосовать: нравится +5 Проголосовать: не нравится

Чет эта штука не работает(

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

    В посте написано, что сейчас не работает для див2. В скором времени будет апдейт.

»
9 лет назад, # |
  Проголосовать: нравится +22 Проголосовать: не нравится

Интересно, сегодня у меня одного расширение не показывало изменение рейтинга вообще?

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

    Могу предположить, из-за чего не работает: вероятно, из-за того что MikeMirzayanov недавно добавил списки пользователей.

»
9 лет назад, # |
  Проголосовать: нравится +44 Проголосовать: не нравится

Is it only me or it isn't working?

»
9 лет назад, # |
  Проголосовать: нравится +8 Проголосовать: не нравится

У всех не работает сегодня? или только у меня?

»
9 лет назад, # |
  Проголосовать: нравится +1 Проголосовать: не нравится

Сегодня все нормально работало!!!

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

.

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

    На 6к участников, вероятно, долго работало. Если пару минут после обновления страницы подождать, то все равно не обновляет?

    Вообще мы решили сделать все хорошо сразу, а не выкатывать маленькие апдейты, поэтому текущая версия не идеальна и почти не отличается от самой первой.

»
9 лет назад, # |
  Проголосовать: нравится +5 Проголосовать: не нравится

почему только на Chrome? будет ли на Firefox?

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

Why does this show slightly different rating changes most of the time? And occasionally, it's completely off.

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

    Looks like it only doesn't work for legendary grandmasters.

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

      That's strange, considering it was made after LGMs were introduced. And I think it worked for them before (can someone confirm/falsify this?).

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

    I'm slightly saddened that you decided to screenshot my implementation failures for C and D for eternity :(

    I'm also happy to see I wasn't the only one to do that :)

»
9 лет назад, # |
  Проголосовать: нравится +13 Проголосовать: не нравится

Possible bug: on standings page, when i double click in any cell to view submission history, it doesn't get loaded (the 'loading' icon keeps on rotating). This doesn't happen when i disable the extension.

»
9 лет назад, # |
  Проголосовать: нравится +83 Проголосовать: не нравится

Lately I'm just getting 0s for everyone all the time. Is it just me?

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

    Seems like there are some shenanigans with the Codeforces API and calling the following method fails for some reason.

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

      So that means we should notify MikeMirzayanov to have it fixed, right?

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

        yes, there seems to be some issue when activeOnly is set to false. activeOnly=true is working fine. Also, the extension starts showing non-zero changes (although incorrect, of course) if that parameter value is changed from false to true in the extension package.

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

          Thanks. Sent him a private message, let's hope it gets fixed soon. :)

»
8 лет назад, # |
  Проголосовать: нравится +43 Проголосовать: не нравится

Stopped working again, all 0s on today's contest :/

»
8 лет назад, # |
  Проголосовать: нравится +15 Проголосовать: не нравится

Can this extention be made for Firefox ???

:)

»
8 лет назад, # |
  Проголосовать: нравится +11 Проголосовать: не нравится

It doesn't work, shows 0s for everyone and when I double click on a cell to view the submissions it gets stuck on the loading page.

»
8 лет назад, # |
  Проголосовать: нравится +31 Проголосовать: не нравится

Seems to be a problem with the CodeForces API once again, the URL used by the extension (http://codeforces.net/api/user.ratedList?activeOnly=true) gives Error 503 Service Temporarily Unavailable. (This time also with activeOnly=false.) Messaging MikeMirzayanov to make sure he's aware...

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

Recently I noticed that the extension gives 0 for all handles :\

»
8 лет назад, # |
  Проголосовать: нравится +19 Проголосовать: не нравится

Ребят, ваше расширение сейчас не работает. Проверял на разных браузерах, скачивал с разных источников.

Пример: Codeforces Round #390 (Div. 2), количество участников 4к, время ожидания 15минут, а показывает для всех 0. Можете пожалуйста исправить это) Было такое офигенное расширение для браузера)

»
8 лет назад, # |
  Проголосовать: нравится +64 Проголосовать: не нравится

Nice app. But it usually doesn't work. Could you please fix it?

Rubanenko Maxim 1k_trash