Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Change the ordering of competitors (at least for final rounds) #182

Open
julesDesjardin opened this issue Aug 25, 2023 · 6 comments
Open
Labels
enhancement New feature or request help wanted Extra attention is needed public Public-facing part of the app spectator Improves the live viewing experience for spectators

Comments

@julesDesjardin
Copy link

Hi,

When following finals of a big competition, it's quite difficult to navigate between results to follow who's in the lead and who has a chance to podium. Right now, until a mean/average is complete, people are ranked on best (and when someone has completed an average, they're before everyone who hasn't yet). But sometimes someone gets an excellent single but has no chance of winning, so they kinda "clutter" the top spots for following who's winning.

For French Nationals 2023 (before US Nats!), we implemented a live scoretaking system on Google Sheets so people could enjoy seeing the finals, and competitors could know immediately their ranking when they were finished. You can see an example here with a reaction of a final: https://youtu.be/Pr_CTjB7_dY?si=EpkbeDfxy0qDb3fH (Feel free to go later in the video, around 40:00 for example, to see how it looks like while it is being filled). As a competitor in some finals who had a shot at winning/podiuming, it was very nice to see how far ahead/behind I was after finishing a good average, and most competitors did look back at the screen right after finishing their average to know how they placed.

The main interest of it is how it is ranked: Based on how many solves a person has done, they get a "current result", which is:

  • With 1 solve: that solve
  • With 2 solves: the mean of the 2 solves
  • With 3 to 5 solves: The average of the 3/4/5 solves (for mo3 events, we obviously use the mo3, and for bo3 we use the best).

This is imperfect, but still a better representation of who is currently ahead in the round than using the best time.

After seeing US Nats and WC, and seeing I underestimated how WCA Live would be used for scoretaking, I've been thinking about replacing the sheet with a webpage displaying that ranking querying results from the WCIF. But actually, instead of doing that, it would be easier to simply have it natively on Live!

There is another huge argument in favor of doing such a change: by projecting a WCA Live webpage on the screen and on stream, the number of queries should drastically drop down, because people in the venue and watching the stream won't keep updating Live every second. (this is already true with the current WCA Live, but less spectator-friendly). This can be an issue if people look at the screen between solves, it's not very fair but it's not properly forbidden by the Rules either (and it's drifting a bit from the main point of this issue)

The only downside I see about it (except the time spent to implement it of course) is that people will keep jumping up and down. But it's also the fun of it: we see in real time who is ahead of who. It can be annoying for big 1st rounds with many people, but those are usually scoretaken with the usual method of entering all times at once, so everyone will be ranked by average as usual.

I'm not sure if you have time to implement such a feature, I have a good experience of coding (sadly nothing web-related) so I can give it a go and make a pull request if that's what you prefer.

@dunkOnIT
Copy link
Collaborator

@maxidragon do you know if your newly-implemented BPA/WPA feature will affect results page ranking? I think it makes sense to rank people by BPA/WPA.

@julesDesjardin not sure if you've seen Maxi's recent PR, but we now show BPA and WPA on WCA Live - I think simply sorting the page by one of these (I'd suggest BPA) would address the issue?

@maxidragon
Copy link
Contributor

@dunkOnIT No, I didn't change the sorting. I don't think it's a good idea to impose one type of sorting (some users prefer BPA others WPA). Also, we calculate WPA/BPA on frontend, and AFAIK the sorting is done on the backend side (someone correct me if not). @jonatanklosko what do you think about it?

@jonatanklosko
Copy link
Member

Hey @julesDesjardin, thanks for the suggestions.

I agree with @maxidragon that we should not reorder competitors based on WPA/BPA in the default view. I would prefer a separate view with a distinct name (e.g. forecast view), just like we have presentation view for a specific use case. In that separate view I'm fine with reordering and any additional calculations.

AFAIK the sorting is done on the backend side

This is correct (ref), although computing ranking is straightforward, most of the complexity is computing the average to rank by, and we already do this on the client anyway. The only gotcha to keep in mind is tied results.

PRs are welcome :)

@dunkOnIT dunkOnIT added enhancement New feature or request public Public-facing part of the app help wanted Extra attention is needed spectator Improves the live viewing experience for spectators labels Aug 28, 2023
@maxidragon
Copy link
Contributor

Okay, so I would like to work on the forecast view, but I have one question: when we're sorting, for example, by BPA, what should we do about people with completed average? Should we rank person A with a BPA of 2.99 first, or person B with completed average of 3.00?

@jonatanklosko
Copy link
Member

For sorting we can compute an estimate average as Jules described and sort by that (we can show BPA/WPA in parentheses or elsewhere). Mixing people with finished and unfinished average is fine, we are trying to estimate the ranking based on whatever information is currently available :)

@julesDesjardin
Copy link
Author

I'm glad to see that this has raised interest :)
I also think that sorting by the estimate average and still having BPA/WPA (which are still very valuable information, especially if some people have finished but not everyone) written somewhere is the best way to do it.
A small thing I forgot about this view is that it should include flags, like the projector view: since this will mostly be used for championships, knowing nationalitites would be helpful for championships that only recognize locals as eligible for prizes (it might even be possible for OBS or other stream softwares to recognize a flag, allowing a stream to emphasize locals/reduce the visibility of foreigners, so it's even more clear who is winning the championship and not the competition. This shouldn't have to be done in WCA Live since it sounds kind of difficult, is not suited for all championships and not that useful, we're used to knowing when foreigners shouldn't be counted when looking at a podium)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request help wanted Extra attention is needed public Public-facing part of the app spectator Improves the live viewing experience for spectators
Projects
None yet
Development

No branches or pull requests

4 participants