Well, we do seem to have digressed. I wonder if we might get back to thinking about ASL Player Ratings . . . perhaps in a less metaphysical way, and think about what features a system might have?
Maybe create a new thread for this, since we're no longer talking about Aaron's APCR...?
My $0.02...
It's also important to consider processes and workflows.
We want to avoid the previous situation where one person was doing all the work, and eventually gives up, so the work has to be distributed over multiple people. This means user accounts and permissions.
Let's say Joe is TD for the ASL World Championship 2021. He obviously needs to be able to enter results, but what if there are players who are not currently in the system. Should he be able to create new player records for those people?
And what about the tournament itself? Should he be able to create a new tournament within the system? Or do we have super-users who can do that, then give Joe permissions to update it?
Or perhaps we have the concept of a tournament series i.e. a super-user can create the "ASL World Championship" series, and Joe is allowed to create the "2021" edition, "2022" edition, etc.
What happens if Joe doesn't enter the results? Is another TD allowed to do it, or does it have to be done by a super-user? Data entry is always messy and error-prone, so do we have a process that requires someone else to check the data before it goes live?
Allowing player records to be created by someone other than the player themself also opens another can of worms, because will the record contain information the player might want to change? They then need to have an account themself, and some way of connecting their account to the already-created player record. This last bit would need to be done by a super-user (to avoid abuse) i.e. a manual process :-( You could have the person send a request to the sysadmin to have the information changed, but that's more manual work.
Someone else mentioned GDPR, and this is a real consideration. I don't know much about this, but my understanding is that people have the right to request their personal data be deleted. Not made private, deleted. Are game results considered to be personal data? I don't know, talk to a lawyer. Name and country? Surely. What effect does that on the system overall, not being able to have
any information on a player at all?
It might actually be a good thing, since it will force the design to handle it. The current AREA site has the concept of a private player, but I think that just means they don't appear in the list of players. However, their game results (including their name) still appear on the tournament pages; IOW, not really private, just somewhat obfuscated.
So OK, a player Fred competed in this tournament and had a player record created for him. He then asks for it to be removed, so we now know him as player #123, with no identifying personal information whatsoever, just his game results. But when Fred plays at the European Championships, how does that TD know that Fred is player #123, and he should use that player record, instead of creating a new one?
Or even worse, Fred tells the TD up-front that he doesn't want to be in this new AREA. How does the TD enter his game results, assuming Fred's opponents want their results recorded?
I think all this points to a need for the system to be able to handle anonymous players e.g. the ability to record a game result like "Mike beat someone". But how can a rating system possibly work if you don't know who one person is?
This is incredibly messy, but it's a people problem, not a technical one. The underlying issue is: what do you do when one person doesn't want to have their game results recorded, but the other one (and TD) does? Decide that, and that will then drive the technical design.
Do we
require people consent to have their game results recorded? Would that even fly under GDPR? And while some people have said that this is heavy-handed, I can't imagine there's a single serious competition in the world that lets you compete, but also refuse to have your results recorded. If we want to say that ASL competitions are always friendly, relaxed affairs, then so be it, but some people do take their ratings seriously. What happens when one person really doesn't want to be in the system, but the other person really wants the points? Maybe we have AREA-required and AREA-optional tournaments, but that doesn't really solve the design problem, because we still have to be able to handle the AREA-optional tournaments.
On a more technical note, it would be nice if this thing
wasn't designed as a new AREA, but instead a generic system for recording game results and calculating ratings. Then clubs could use it to manage their private ladders.
Pluggable engines to calculate ratings would be good, as well. Then we could have the classic AREA ratings, Aaron's thing, somebody else could come up with something new.
I never really saw the point of recording who is "attacker" and who is "defender". It's possible that an algorithm might take it into account when calculating a rating, but how would it work if both players are attacking? Or not recorded?
Even more pointless is "Axis" and "Allies". We saw how people can react to this (a fair consideration, IMO), and it's hard to see how a ratings algorithm would need this information, so why bother? Just note for the record that Alice had the Laotian Communist Freedom Fighters, Bob the People's Front of Judea, and be done with it ?