I've been working on a quizbowl app for the better part of two months, and wanted to finally share it with the community. If you want to skip all the text and go straight to the app, you can find it here.

What is Neg 5?
In short, Neg 5 is a place for quizbowl tournament moderators and directors to run their tournaments in a collaborative manner. It enables an unlimited number of staffers to work together on the same tournament, and tries to solve the problems inherent with single-person game handling.

What can it do?
Here are some things Neg 5 is currently capable of doing:

Support for Multiple Point Schemes
Any sort of tossup point scheme is supported for tournaments. You just need to define the point value and the type of answer it is (power, base, neg).

Game and Team Entry
Moderators with access to your tournaments are able to manually enter game and team information in a friendly, easy to use interface. These games and teams are added to your tournament history immediately after being entered and can be edited afterwards.

Automated Scoresheet to Game Conversion
Each tournament has its own easy to use scoresheet that a moderator can fill out as a game progresses. The scoresheet automatically calculates scores and tracks player tossups gotten and tossups heard. The scorekeeper just needs to indicate which players are currently active by toggling their names. When the game is done, the scorekeeper can submit the scoresheet to automatically be converted into a game and put into your tournament history. No more running back and forth between rooms and a central control room in between games.

Generate Statistics
Neg 5 is able to generate complete or custom team and player statistics up to date with the latest game entered. Teams don't need to wait for a paper copy to be taped somewhere on the walls of your event venue! They have the ability to go to your tournament statistics link and look at the latest stats at any time. You can also export stats to static HTML pages for offline access and uploading to the hsquizbowl tournament database.

Separation of Different Phases of a Tournament
You can add different phases like prelims and playoffs for your tournament and later combine them into one separate tournament if you need compiled stats, all with the press of a button.

Technical Details
Neg 5 is powered by NodeJS with the Express framework and uses MongoDB to store all user and tournament information. Most of the front-end is handled by pure Javascript and jQuery and is laid out using Bootstrap.

There are lots of things that I would like to add to make Neg 5 the absolute best program it can be and THE go-to tool for tournament management. What better way to do that than with the community's feedback and support? In that spirit, I am making Neg 5 completely open-source with the hope that we can work together to make it the best quiz bowl app EVER. You can find the source code at Github here. If you're interested, feel free to take a look through the code and start contributing!

I haven't been too active with quizbowl since high school, but it's always been something close to me. Figured it was about time to give something back. I hope my app is able to encourage the spread of quiz bowl across the country by giving others a tool to expedite tournament management.

There are still a few issues with the current deployment version of the app that I am aware of, and I'm working hard to fix them! However, if you come across any oddities or things that look like mistakes, let me know by either emailing me at mostafa0104 AT gmail DOT COM or posting in this thread. Of course, if you have any ideas for future features, feel free to let me know about that as well.

Thanks, and I hope you like the app! Let me know what you think. Happy New Year!

Last edited by BlueDevil95 on Mon Nov 20, 2017 11:53 pm, edited 8 times in total.

Can it handle a 60 team tournament or so? We tried running our annual middle school tournament (Charter Challenge) on Abacus two years ago and it crashed (and we lost all stats). I'd love to use this for all of our upcoming tournaments!

Also, can it export to SQBS format so we can put stats on the hsquizbowl database?

Thanks for creating this! It's awesome!

Mohan Malhotra
The Independence School '12
Charter School of Wilmington '16
New York University '20
Wilmington, DE/New York City, NY

Can it handle a 60 team tournament or so? We tried running our annual middle school tournament (Charter Challenge) on Abacus two years ago and it crashed (and we lost all stats). I'd love to use this for all of our upcoming tournaments!

Also, can it export to SQBS format so we can put stats on the hsquizbowl database?

Thanks for creating this! It's awesome!

Thank you for the kind words. The application can easily handle 60 or more teams. Right now the application has about 1 GB of database space to work with (which is a LOT), so unless you decide to add thousands and thousands of teams to a single tournament, it shouldn't miss a beat in loading times or stats generation.

I am working on a way to download statistics as simpler HTML pages akin to what SQBS spits out. Right now, Neg 5 doesn't actually "save" statistics pages. It's all generated on the fly, and that's why teams are able to look at their stats at any time. That's not always ideal, though. Eventually the application will be able to make static pages for download and also export stats as spreadsheets. As for the binary sqbs file the hsquizbowl database asks for, I can't do anything about that since I don't know how SQBS saves its data. I could, however, have some way to export a tournament as a JSON file (which is just a way of storing/sharing data) for uploading to somewhere.

BlueDevil95 wrote:As for the binary sqbs file the hsquizbowl database asks for, I can't do anything about that since I don't know how SQBS saves its data. I could, however, have some way to export a tournament as a JSON file (which is just a way of storing/sharing data) for uploading to somewhere.

At some point I think someone wrote up (partial?) documentation for this. (Maybe one of the Hills? Gordon?) Anyway, you might see if you can find that. If not, figuring it out is an interesting exercise. I suspect being able to export to SQBS will help adoption significantly.

BlueDevil95 wrote:As for the binary sqbs file the hsquizbowl database asks for, I can't do anything about that since I don't know how SQBS saves its data. I could, however, have some way to export a tournament as a JSON file (which is just a way of storing/sharing data) for uploading to somewhere.

At some point I think someone wrote up (partial?) documentation for this. (Maybe one of the Hills? Gordon?) Anyway, you might see if you can find that. If not, figuring it out is an interesting exercise. I suspect being able to export to SQBS will help adoption significantly.

BlueDevil95 wrote:As for the binary sqbs file the hsquizbowl database asks for, I can't do anything about that since I don't know how SQBS saves its data. I could, however, have some way to export a tournament as a JSON file (which is just a way of storing/sharing data) for uploading to somewhere.

At some point I think someone wrote up (partial?) documentation for this. (Maybe one of the Hills? Gordon?) Anyway, you might see if you can find that. If not, figuring it out is an interesting exercise. I suspect being able to export to SQBS will help adoption significantly.

My goal for this app is for it to be a replacement for SQBS, so I don't know how useful in the long run it would be to try and get my database data to play well with whatever format SQBS uses when, in my opinion, the JSON format that I am using now is able to do the job in a fairly intuitive way. What would being able to export to a SQBS-readable format accomplish?

Also, update to the current deployment of Neg 5 : You can now export tournament statistics information to static HTML pages for offline viewing. I think I got it pretty close to the style of SQBS-formatted stats. The filename endings match the endings required by the database stats upload ("*_teamdetail.html", "*_playerdetail.html", etc.), so you should be able to upload them to the tournament database. Round Reports and Scoreboard are coming soon!

If a protest is noted but not resolved on the spot (say tossup 11), is there a way to go back and fix the results of that tossup without having to re-enter the entire second half?

There's no current way to go "backwards" in tossups right now, unfortunately. That's one of the issues I'm working on right now, and hope to have it fixed within the week. The best solution right now is to go the actual game page after submitting the scoresheet and fixing it manually.

dtaylor4 wrote:
ETA: Having sub information entered after the game instead of when they occur seems sub-optimal.

Sub information is automatically able to be tracked. Under the scoresheet you can toggle the player names to "active" (green background) or "unactive" by clicking their names. Only players who are marked as active have their TUH incremented. A player's game played is calculated by dividing their TUH by total tossups in the game after you submit the scoresheet. Looking at the scoresheet now, that's not obvious on first glance. I will make that more clear, sorry.

Last edited by BlueDevil95 on Sat Jan 02, 2016 6:05 pm, edited 1 time in total.

BlueDevil95 wrote: toggle the player names to "active" (green background) or "unactive".

Just a minor thing: please don't make the two states be "green" or "red"; just make it "green" and "uncolored" or "uncolored" and "red" or something along those lines. It seems like you're already doing that, but I think it would be great if you avoided that red/green situation.

BlueDevil95 wrote:As for the binary sqbs file the hsquizbowl database asks for, I can't do anything about that since I don't know how SQBS saves its data. I could, however, have some way to export a tournament as a JSON file (which is just a way of storing/sharing data) for uploading to somewhere.

At some point I think someone wrote up (partial?) documentation for this. (Maybe one of the Hills? Gordon?) Anyway, you might see if you can find that. If not, figuring it out is an interesting exercise. I suspect being able to export to SQBS will help adoption significantly.

I was thinking there was an actual English description ("first line is the number of teams, then for each team there is a line indicating the number of lines describing that team followed by the a line for team name followed by a line for each player…"), but it's possible I only imagined the existence of such a thing. (That said, I just started writing one :-) )

BlueDevil95 wrote: toggle the player names to "active" (green background) or "unactive".

Just a minor thing: please don't make the two states be "green" or "red"; just make it "green" and "uncolored" or "uncolored" and "red" or something along those lines. It seems like you're already doing that, but I think it would be great if you avoided that red/green situation.

Yup, it's working exactly how you described (green and uncolored). I tried the red and green before, did not look very good.

- Neg5 has a new logo!
- Round Report statistics page added.
- From now on, when the scoresheet is used to submit a game, the scoresheet itself is also saved. This was put into place for (near) future support for exporting scoresheets so that question writers can look at the tossup-by-tossup breakdown of their questions and see if they managed to hit their target difficulty. The same support is coming for bonus-part breakdowns (soon, I hope) so that bonus difficulties can also be gauged.
- The "Export to QBJ" button under generating statistics is experimental and was added for support with the new format NAQT is migrating to. I'm waiting for the A-ok to make sure it's correct.

Games submitted through the scoresheet now keep track of each individual bonus part for bonuses as well as answers for each tossup. These scoresheets will be able to be exported in some yet-to-be determined format. This should (hopefully) help question writers better gauge the difficulties of their questions.

On that note, any suggestions for the best way to export scoresheets? My original plan was to just export each scoresheet as its own JSON file, zip all scoresheets together for download and provide a text file describing the format scoresheets are saved as, so that writers could do their own analysis/whatever, but I don't think that's the best approach. Not everyone might be able to deal with those types of files. Any ideas are welcome.

BlueDevil95 wrote:Games submitted through the scoresheet now keep track of each individual bonus part for bonuses as well as answers for each tossup. These scoresheets will be able to be exported in some yet-to-be determined format. This should (hopefully) help question writers better gauge the difficulties of their questions.

On that note, any suggestions for the best way to export scoresheets? My original plan was to just export each scoresheet as its own JSON file, zip all scoresheets together for download and provide a text file describing the format scoresheets are saved as, so that writers could do their own analysis/whatever, but I don't think that's the best approach. Not everyone might be able to deal with those types of files. Any ideas are welcome.

Render an actual scoresheet using PDFjs or jsPDF or whatever the heck it's called? That's easy to interpret, though an actual data format would be nice too.

BlueDevil95 wrote:Games submitted through the scoresheet now keep track of each individual bonus part for bonuses as well as answers for each tossup. These scoresheets will be able to be exported in some yet-to-be determined format. This should (hopefully) help question writers better gauge the difficulties of their questions.

On that note, any suggestions for the best way to export scoresheets? My original plan was to just export each scoresheet as its own JSON file, zip all scoresheets together for download and provide a text file describing the format scoresheets are saved as, so that writers could do their own analysis/whatever, but I don't think that's the best approach. Not everyone might be able to deal with those types of files. Any ideas are welcome.

Render an actual scoresheet using PDFjs or jsPDF or whatever the heck it's called? That's easy to interpret, though an actual data format would be nice too.

Yup, my current plan is to render each scoresheet in a lightweight HTML file and also provide the option for download as JSON (along with a README) in some sort of data format for anyone who would find them useful.

Another update:I plan on removing the registration feature from the application. After mulling it over for a few days, I've realized that there are better tools to handle those types of transactions (be it Google Forms, a custom spreadsheet, etc.). I will focus my app more towards the "during" tournament logistics (collaborative game entry, scoresheets, statistics generation, etc), which is where I think it really shines. I was not a fan of the registration implementation at all.

I think I've notified anyone who I know was planning on using the registration form to transition to a different tool, but I'm announcing it now so that no one is screwed over. I will be taking it out of the current deploymenttomorrow, so please make sure you come up with an alternative method of team signup.

Registrations have been phased out as of me typing this post. Scoresheets are now able to be exported to a compressed zip of HTML files. Each round will have its own separate folder with its scoresheets to keep it organized. I'm not sure if the way I did the scoresheets make the most sense right now; let me know.

I'd like to suggest one thing. On the scoresheet page, you should add the ability to change already-entered scoring on a question. As it is now, making a mistake will almost always cause the scoresheet to be wrong in a way that's impossible to correct until much later.

That's pretty much my top issue to fix right now. The main problem I'm running into with that is being able to preserve information about which team got what bonus part. I'll hopefully have a solution for it by the end of the week; if not, definitely next week.

That's excellent. Thanks again for all your work - this is already wonderful and can easily get even better!

To my way of thinking, the ability to correct input errors is much more important than the ability to track bonus parts, so it might be worth it to shelve the latter for now if it helps get the former up sooner. A good short-term fix might be to add a button a-la "Undo Tossup" to most inputs, so a scorer can always go back to at least the most recent thing they did.

Here are my other notes for stuff I'd like to see, in order of importance:
I. POTENTIALLY SHOW-STOPPING:
*Save partial progress on scoresheet to possibly resume later (currently scoresheet vanishes if power lost or page reloaded.)
*Allow save/load of tournament, so that mistakes by a director (like deleting a team or something) can be undone.
*Warn before deleting a team or round and probably disallow deleting a team with entered games (so noone else is chagrined to discover that fat-finger-erroring the button right next to the one they meant to click does something really bad with no warning!)

II. MAJOR FUNCTION IMPROVEMENTS:
*Show only active players in TU input area.
*Warn if no players active.
*Allow maximum number of active players to be set per tournament (4 or 5, say) and then disallow more than that to be active (and maybe warn if # players on team ≥ # max active players > # number of active players.)
*Allow re-ordering of players in TU input area, so it can reflect physical state of room (a greatly overlooked source of error in scoresheets.)
*Allow changing of bonus scheme during bonus entry for that particular bonus (for the odd non-10/10/10 question) & of default bonus schema for the tournament, a la the tossup scoring schema (for the odd non-10/10/10 format tournament.)

III. MINOR FUNCTION IMPROVEMENTS:
*Widen player summary & activation boxes (currently render too narrow, so usually can’t see important TUH box.)
*Auto-kill tossup if both teams have negged.
*Allow bouncebacks to be turned off in the tournament specification.
*Allow pre-entry of matchups for games.
*Add a box in the scoresheet to specify the scorekeeper.

IV. COSMETIC
*Some special characters don’t render properly in team names ("O'Fallon" shows up as "O'Fallon")
*Default to activating the N (4 or 5) most active players, rather than the N alphabetically-first players.
*Change order in which TU stats are displayed to: highest value, next-highest, ..., lowest value (e.g. power, regular, neg.)

V. LONGER-TERM:
*Give teams the ability to enter their own rosters (this was probably already possible when Neg5 had its registration module.)
*Allow input (or even enable algorithmic generation) of schedule, which can be used to populate soreresheet matchups.
*If schedule can be input, allow input of scheduling rules to move teams to a new phase.

I should note: I've used Neg5 to track my players' 0s in practice, which I score as a type of neg (one worth 0 points.) Obviously, two players negging isn't normally possible (in the usual sense of the word neg,) and most people don't track 0s, so the case where both players have "negged" won't arise in the course of use for most, which makes this a very minor issue.

As a corrolary corresponding to the much more common case: you could make an improvement by having the scoresheet take away the -5 button as an option for team A's players once team B has already negged. However, if other people track 0s as a separate type of neg (for TU schema purposes,) you want to leave those available.

Currently using this at Keith's MS MLK Day tournament, and it's absolutely wonderful.

Only problems we've had have been some games reporting 0.53/0.47 games played for substituted individuals instead of 0.5/0.5 (this could have been user error, as the problem disappeared after round 1), the above-mentioned issue with changing points for a question after its cycle has been completed, and shifting to playoff rounds with carryovers. I couldn't find anywhere to carry over matches, so I ended up creating a new phase, reassigning pools, and then combining that and the prelim file and deleting unneeded games (along with the now-unneeded new phase file). Despite that, I still got to eat lunch with the moderators instead of during round 6, when I usually end up eating, so I'm a massive fan!

For viewing stats, it would be nice to have a page for a tournament from which attendees could view all of the tournament's stat report links. We've issued separate links for the prelims and playoffs, but it would be easier for teams if they could have a single link and go from there to the different tournament phases, similar to the TDB. Uploading the .html files to TDB failed, so we don't currently have that recourse.

TheDoctor wrote:Uploading the .html files to TDB failed, so we don't currently have that recourse.

Could you clarify what the problem was exactly? I'm really excited to use Neg 5, but right now the only thing holding me back is the inability to export database-compatible scoresheets. Not having had the chance to really devote a lot of time to actually Neg 5 yet, I can't tell if it's a bug or something the creator hasn't built in yet.

Raynor Kuang
quizdb.org
Harvard 2017, TJHSST 2013
I wrote GRAPHIC and FILM

TheDoctor wrote:Uploading the .html files to TDB failed, so we don't currently have that recourse.

Could you clarify what the problem was exactly? I'm really excited to use Neg 5, but right now the only thing holding me back is the inability to export database-compatible scoresheets. Not having had the chance to really devote a lot of time to actually Neg 5 yet, I can't tell if it's a bug or something the creator hasn't built in yet.

That would be my fault. I still need to make the HTML rendering adhere to what SQBS outputs so that the database can accept it (my original thoughts on how it worked were wrong). I've gotten the requirements I need to add from Jeffrey Hill and will take a look when I get a chance.

Just gonna edit this in: If you're interested in helping out, let me know. This semester's gonna be terrible (recursive assembly, yay!), so I'm not entirely sure how much time I can afford to split between this and classwork.

TheDoctor wrote: Despite that, I still got to eat lunch with the moderators instead of during round 6, when I usually end up eating, so I'm a massive fan!

HERESY! I pay you TOP DOLLAR to eat the scraps of leftover pizza from the moderator hospitality room (which you've never seen), delivered cold to the library!!

I crave your mercy, Gracious Tournament Overlord! Your stats rooms are, of course, without compare in all the land! Please allow me to beg your forgiveness and pray that the rain of Girl Scout Cookies fall once again upon the people.

1. When creating a new phase, it would be greatly helpful to have an option to carry games forward or not. Even better would be to have an option to specify which games to carry forward. In our format, we only carried forward games from prelims that occurred between two team that both went to the same playoff group. I had to re-enter the games that were being carried forward which was less than ideal. I saw the solution noted above of creating a new phase and then merging prelims with the new phase, followed by deleting the unwanted games and unnecessary phase. This is a good workaround, but is still less than ideal.

2. When doing live scorekeeping in the room, there needs to be a way to correct an error on a previous toss-up. This probably needs to be priority number 1 as it is the one issue that is most hindering to the ability to run a tournament safely without the use of paper scoresheets. Errors can only be corrected at the end which requires a paper copy of the scoresheet, so NEG5 does not eliminate the need to have a paper scoresheet yet.

3. You appear to be storing the scores (or maybe just the total scores) as some sort of floating point value. The total score and total opponent score on the "teams full" stat page reflect some floating point error accumulation.

4. Data entry does not have bounds checking implemented as many boxes that should not allow negative input do.

5. The dead tossup button needs to be moved closer to the data entry box and probably protected with an Are you sure? style query until the ability to correct errors is incorporated.

6. Merging of playoffs and prelims was smooth... except that I had to hand delete the repeat games created when I had to carry games forward from the first phase manually. If carry over of games from phase to phase is implemented correctly, the merging process should be able to recognize repeat games and only include them once in the final stats package.

NEG5 was a little frustrating to use at times, but the potential to be a fantastic tool for tournament directors is definitely there. I hope that you are able to take the criticism as constructive criticism, because I would love for this tool to reach the great potential that it has. If you want any more feedback from our use at our tournament on Saturday, please e-mail me.

I tried this out at a high school tournament we hosted yesterday from the perspective of using it to track the results from paper scoresheets. Here were a few of the issues I ran into:

• Team details: Hitting enter on entering a new player causes the page to refresh
• Team details: New player textbox should reset to nothing after you add a player
• Team details: Back button on edit teams should take you back to team dialog rather than overview
• Add a game dialog shouldn’t have default text for 10/15/-5, it’s confusing. Just make those blank values. The labels are already in the column headers.
• The add game button doesn’t clear the default values. The only way I could find to clear them was to refresh the page and then navigate back to this dialog.
• I'd prefer that the default order of point values be 15/10/-5 rather than 10/15/-5
• There aren't any labels for fields on the edit game page

The forms not getting reset were probably the biggest usability issues I saw, but there were a lot of small fit and finish things that would make this program more practical to use. That said, it's a good foundation.

Edit: When I get some time, I'll likely make a few contributions to this project.

Thanks for the feedback! I'll implement the suggestions as soon as I get a change.

On another note, you can now fix previous errors on the scoresheet for both tossups and bonuses by clicking on the specific tossup or bonus box. I tried to make the scoresheet more intelligent in that regard. Here are some things the scoresheet checks for:

1. The input for "Round" now defaults to the max round of all previously entered games + 1.

2. When editing a previous bonus, you can specify which specific bonus parts were gotten to preserve information about individual bonus parts. So, if Team A got bonus parts 1 and 3, and Team B got part 2, the row for 1 and 3 will be highlighted for Team A, and row 2 for Team B. Giving Team A all three bonus parts will remove any bonus points Team B might have gotten on that tossup-bonus cycle. Or if you give Team B bonus part 3, then Team A will only have bonus part 1 and Team B will have parts 2 and 3.

3. A bonus for a previous tossup-bonus cycle can only be edited if there is a correct tossup up on that cycle. Removing all correct answers from a previous cycle will remove any bonus points Team A or Team B may have gotten on that cycle and will disallow editing that bonus (since there are no longer any correct answers).

4. Only one "correct" (i.e. not a neg) answer can exist for a tossup-bonus cycle, so you can't add multiple answers from players on the same team. If you need to add an answer from the opposing team when a correct answer already exists, the only options the select dropdown will have are "neg"-type answers. If a tournament doesn't use negs, nothing happens and the select dropdown will not appear. Similarly, if a team has negged on a previous tossup, the only options that the select dropdown will have for the other team are "non-negs".

5. Bounceback points are transferred and calculated correctly. So, if you need to transfer the correct answer from Team A to Team B, Team A will be considered the team that got bouncebacks.

Feel free to play around with it, tell me if it makes sense or makes too many assumptions. I think this was the biggest issue with the application. Hopefully this helped!

Ability so save scoresheets to safeguard against reloading/power outage is coming soon.

Quick reminder to SCT hosts: Neg 5 is not currently an acceptable format for reporting SCT statistics (please use SQBS instead). We're working on the ability to upload Neg 5 output to naqt.com and hope to have that functionality available later in 2016.

This is really, really cool, and I'm excited to see how it can get even more versatile.

I spent a little while clicking around, and I wrote up some issues in this document. A lot of them aren't major at all (I tried to do some pretty stupid stuff, but I test software for a living and can't help it), but given how widely Neg5 is being used already, it should be as robust and easy to use as possible.

All I looked at were the tournament setup screens, but If I have time later this week, I'll take a look at the actual game entry and scorekeeping workflows.

Mostafa, if you have any questions about what I wrote, feel free to PM me.

Ndg wrote:This is really, really cool, and I'm excited to see how it can get even more versatile.

I spent a little while clicking around, and I wrote up some issues in this document. A lot of them aren't major at all (I tried to do some pretty stupid stuff, but I test software for a living and can't help it), but given how widely Neg5 is being used already, it should be as robust and easy to use as possible.

All I looked at were the tournament setup screens, but If I have time later this week, I'll take a look at the actual game entry and scorekeeping workflows.

Mostafa, if you have any questions about what I wrote, feel free to PM me.

Thank you so much for developing this!

That's awesome! Thanks for writing that up, it'll definitely help me make the application easier to use. In particular:

I got around to implementing a permissions feature today based on some of the feedback Andrew provided, so not everyone you add as a collaborator has the same capabilities (like volunteer scorekeepers from the hosting high school, etc). Check it out and let me know if it's useful or could be more specific! I don't think I broke anything while doing it.

Also, game editing pages now come with labels and do more sanity checks (no negative or > 1 game played allowed, both scores must be entered before a game can be submitted, stuff like that).

I think I've hit upon a serious bug. In the stats for a tournament my team played (Mahomet Mini 1/27/16, if you can see it,) someone put the wrong team in a game and saved the scoresheet (don't ask me!)

I have admin access to the tournament, so I tried to fix this by changing the team from the "Details" page, but that failed: the replaced team's score wouldn't save as other than 0. Therefore, I deleted the game and made a new one to try and fix that. That did fix that one game, but then 3 other teams' scores in other games were set to 0! The stats and scoresheets seem to be intact - question-by-question results from "Export Scoresheet" are good, except that the final score is wrong, for example. What happened?! Can it be fixed?

PS: Maybe for bug-tracing purposes it's useful to note that I have admin access but the scoresheet I was trying to fix had been entered by someone logged in as the Director.

Is it possible to add FB login? It would make it easier to get staffers to sign up the day of the tournament, rather than running around and making sure everyone registers ahead of time so that I know their usernames and can add them. I've never used mongoose, so I don't know how complicated getting OAuth working would be for you, but in general I've found FB endpoints to be pretty accessible.

Raynor Kuang
quizdb.org
Harvard 2017, TJHSST 2013
I wrote GRAPHIC and FILM

Captain Sinico wrote:I think I've hit upon a serious bug. In the stats for a tournament my team played (Mahomet Mini, if you can see it,) someone put the wrong team in a game and saved the scoresheet (don't ask me!)

I have admin access to the tournament, so I tried to fix this by changing the team from the "Details" page, but that failed: the replaced team's score wouldn't save as other than 0. Therefore, I deleted the game and made a new one to try and fix that. That did fix that one game, but then 3 other teams' scores in other games were set to 0! The stats and scoresheets seem to be intact - question-by-question results from "Export Scoresheet" are good, except that the final score is wrong, for example. What happened?! Can it be fixed?

PS: Maybe for bug-tracing purposes it's useful to note that I have admin access but the scoresheet I was trying to fix had been entered by someone logged in as the Director.

I should also add that I can't change the scores from 0 in the newly afflicted games.

Captain Sinico wrote:I think I've hit upon a serious bug. In the stats for a tournament my team played (Mahomet Mini 1/27/16, if you can see it,) someone put the wrong team in a game and saved the scoresheet (don't ask me!)

I have admin access to the tournament, so I tried to fix this by changing the team from the "Details" page, but that failed: the replaced team's score wouldn't save as other than 0. Therefore, I deleted the game and made a new one to try and fix that. That did fix that one game, but then 3 other teams' scores in other games were set to 0! The stats and scoresheets seem to be intact - question-by-question results from "Export Scoresheet" are good, except that the final score is wrong, for example. What happened?! Can it be fixed?

PS: Maybe for bug-tracing purposes it's useful to note that I have admin access but the scoresheet I was trying to fix had been entered by someone logged in as the Director.

UlyssesInvictus wrote:Is it possible to add FB login? It would make it easier to get staffers to sign up the day of the tournament, rather than running around and making sure everyone registers ahead of time so that I know their usernames and can add them. I've never used mongoose, so I don't know how complicated getting OAuth working would be for you, but in general I've found FB endpoints to be pretty accessible.

I don't know how easy it would be to implement a FB login, but I am not sure that it is really necessary.

I found the registration process to be very easy and intuitive. I was able to add people very quickly and easily by typing in their name into the search feature. I was able to find people using first names, last names, portions of last names, portions of e-mail addresses.

Seeing this for the first time from a player's end today. My biggest suggestion would be allowing a feature to name tournaments so the links to view stats aren't a series of numbers and letters, as well as the ability to search for a specific tournament via the main page (allowing TD's to have access to hide their tournament if they choose).

I'm not sure how easily these changes can be implemented, but they would go a long way to helping players access stats from tournaments.

Michael Etzkorn
Illinois Mathematics and Science Academy '16
UIUC '21

"Whosoever would undertake some atrocious enterprise should act as if it were already accomplished, should impose upon himself a future as irrevocable as the past."

Joker wrote:Seeing this for the first time from a player's end today. My biggest suggestion would be allowing a feature to name tournaments so the links to view stats aren't a series of numbers and letters, as well as the ability to search for a specific tournament via the main page (allowing TD's to have access to hide their tournament if they choose).

I'm not sure how easily these changes can be implemented, but they would go a long way to helping players access stats from tournaments.

I agree with this; doing so would make neg5 a complete system, allowing for easier player access of the stats. On the whole though, neg5 today at Huskie Bowl was great! Speaking from someone who was moderating, everything was very nice and simple.

One thing I had a comment on, though, was the button to lock teams. What's the point of that button? I didn't use it the entire day and just submitted all my rounds without ever pressing it. If the point is to make sure you can't change the teams in the middle of entering stats (which I guess would be by accident, since idk when anyone would actually want to do that), then I think you should have to lock teams before actually being able to enter in stats and start the round. Of course, this is a minor comment.

Young Fenimore Lee
Stevenson High School 2017
Stanford 2021
PACE Member
"A small Korean boy with a big heart" - Ali Saeedyoungflee.xyz

It's been a while since I've last posted, but I wanted to give some updates as to where Neg 5 is currently headed. There are three main things I'm working on:

1) Different phases of a tournament will now be in the same tournament view. You will no longer need to create separate tournaments to manage different phases and then merge them together. Everything related to one tournament will be in the same place. This is basically done and will be added to the current version soon.

2) Compatibility with the QBJ format so that tournaments using NAQT sets can actually send those results to NAQT.

3) Stat reports compatibility with the hsquizbowl database so that results can be uploaded here.

I'm also adding a way to search for tournaments. Should be hopefully added sometime soon after this week.

Huh, that was weird. Seems like Mongolab (my database service provider) had an issue with database uptime today. I've restarted the server and was able to log in to view my information. Can you confirm that it's working on your end?

Since I can get back in again, I can see that "/" is rendering as "&#x2F;" in both tournament names and descriptions. (Obviously not very important.)

A couple other usage notes/suggestions, after using Neg5 to enter stats from paper scoresheets for a 40-team tournament Saturday (couldn't get enough computers to keep score with it this time):
*It would be most useful to be able to enter QP/TUH rather than GP for players in the "Add a Game" dialogue. In fact, that should be the default.
*" doesn't render properly in team names (just like ' and /.)
*A switch to rank scorers by P/TUH (or P/20TUH or whatever) would be useful. I'd say the program should default to that.
*There's no good way to enter an overtime game or forfeit without messing up a team's PPB, some players' TUs, or maybe both.
*It'd be good to warn if impossible BC values or whatever are being input.

I have just used Neg 5 at the GVQBT III Tournament, and I have to say, it is a wonderful piece of software and it has made my life so much easier. However, I do have a few complaints/suggestions. I have put some of these up as issues in the Github.

1. When doing manual entry, there needs to be some error checking for negative numbers, similar to what SQBS does. Something like the bonus points checking and PPB checking that SQBS does.

2. Autosave scoresheets so that accidentally closing a tab doesn't delete everything that has happened. Along with that, it could also enable others to check the progress of a game without being able to change anything and not having to be in the same room.

3. Auto-reload the games page, or at least have a reload button on the games page to reload the games that have been submitted to see them in real-time. Alternatively, hitting refresh shouldn't always return you to the overview tab and changing tabs should reload the data so you don't have to keep hitting refresh to reload the data.

Number of teams
REPEAT FOR EACH TEAM:
Number of following entries for team and player names
Team name
Player names (multiple)
Number of matches
REPEAT FOR EACH MATCH
Match Id
Index of team 1
Index of team 2
Team 1 final score
Team 2 final score
Tossups heard
Round number
Team 1 bonuses heard
Team 1 bonus points
Team 2 bonuses heard
Team 2 bonus points
6 0's
REPEAT 16 TIMES
Player index on team (-1 for blank player)
Player games played
Player powers scored
Player normals scored
Player negs scored
1 0's
Points player scored
THE FOLLOWING (FOR SETTINGS BUT I DON"T REALLY KNOW WHAT THEY DO):
1
1
3
0
1
2
254
0
1
1
1
1
1
1
0
1
1
Tournament name
4 Blank lines
The number: 1
File suffixes for html report
1 blank lines
Number of Divisions
Division names (multiple)
Number of teams
FOR EACH TEAM IN THEIR RESPECTIVE INDEX
Index of division
Point break downs (multiple (15, 10, -5))
2 0's (For what IDK)
Number of Teams
0 for each team (For what IDK)
1 blank line