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

Create a spreadsheet-like view of the Code Jam participants #54

Open
camcaswell opened this issue Jul 18, 2022 · 3 comments
Open

Create a spreadsheet-like view of the Code Jam participants #54

camcaswell opened this issue Jul 18, 2022 · 3 comments

Comments

@camcaswell
Copy link
Contributor

We have bot commands for moving people between teams, but we use a manually-updated spreadsheet to figure out where to move them and who to replace as leader, etc. If we generated a view of the participants in the database we don't have to worry about maintaining two sources of truth.

Participants should be grouped into teams, and teams should be ordered by timezone. It should include whatever background info we have about each participant such as experience-level estimate, leadership preferences, timezone, and maybe even notes.

The actual implementation of this is open-ended.

@D0rs4n
Copy link
Member

D0rs4n commented Jul 19, 2022

That sounds like a great idea. However as of now, the Code Jam Management system does not store timezone information.
My main question regarding that is.. whether you want this spreadsheet-like view to be editable, or just read-only.
Being editable would mean, that we would have to interact with the discord API, and upon interacting with the spreadsheet it would edit the roles as well. This is the hardest version, at least in point of implementation.
The read-only version would just be a generated "front-end".

@ChrisLovering
Copy link
Member

successful qualifier submission -> push submission ID to a MessageQueue -> sir-robin digests queue to add to CJMS using the forms API, fetching all the background info that Cam mentioned above.

After qualifier run a (new) command that spawns a persistent view with a confirm/unconfirmed button. This marks the user a confirmed in the DB.

After some time run another command that removes this view and runs the script auto-generation script against the database and returns a CSV of the suggested teams.

Manual changes are made, the CSV is then reuploaded to update the teams as needed.

Then you run the command to create the teams using teams in the database

@ChrisLovering
Copy link
Member

Make sure the button has some cool down, so users can't spam confirm/un-confirm

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants