Viper Scouting App 2024

The scouting data on all team’s private Viper servers hosted by us now have nightly backup. The database was already running as a multi-AZ RDS instance, so the data was already protected against hardware failure. The new backup exports the data to the CSV format used by the Viper when not using a database, checks it into git, and transfers it to a private git repository that isn’t hosted in AWS. This new backup should protect against:

  • DB administration mistakes that accidentally delete or corrupt data in the database and the replica.
  • Catastrophic AWS outages or loss of the AWS account.

It also means that all hosted data and its nightly change history is readily available for export. If any teams want a full copy of their data they can ask me for it. There isn’t currently an self-service solution for this. Viper only has export functionality that works one event at a time.

There is also a way for an administrator to recover data that a team accidentally deleted or corrupted. If this happens to you, again please ask me to help.

1 Like

I’m currently working on making the graphs on the stats page customizable. You will be able to add your own graphs, and remove any of the existing graphs. The admin user on the server will be able to set the default graphs for the whole team.

If you use Viper, or would like to use Viper, what features do you think we should work on next?

  • Additional types of charts and graphs available for stats (bubble, pie, line,…)
  • Customizable scouting interface (you can choose what data your team collects)
  • Data sharing with other teams through the Purple Warehouse
  • Ability to use QR codes to upload scouting data
  • Android and iPhone apps versions
  • Merging pit scouting and photo scouting together
  • Ability to pull in stats like OPR to supplement scouting data
  • Populate team numbers on match predictor and whiteboard by choosing a match number
  • Improve the graphic design, colors, and fonts
  • Usability testing and ease of use improvements
0 voters

Feel free to comment with other ideas as well.

I cast my votes as someone who uses python for data science/visualization tasks on a daily basis. I am likely in the minority on this one, but care more about easily/accuracy collecting what I see as useful and not over-collecting data such that accuracy suffers.

*Personally * I have no problem visualizing fused datastreams. That may be more of a challenge for others.

Customizable graphs have been released. Try it out: Demo, week zero stats.

You can click on the tools icon beside any graph heading.

image

That will give you a menu like this:

image

The top section is for managing the graph you chose, and the bottom section relates to all the graphs.

Admin users can save their graph configuration to the server so that everybody on the team that hasn’t made personal graph configuration changes will get the graph customization rather than the default graphs that come with Viper.

Choosing the edit option allows you to:

  • Change the name of the graph,
  • Change the type of graph
  • Add data sets
  • Remove data sets

1 Like

The score predictor and match planner pages now have a match selection drop down menu on them to populate the teams from the match schedule:

They each now have a button to clear all the current teams which will show the match drop down and team buttons.

They layout of the match planner has also been improved. Previously the stats on the right had been limited to a 400px width. Now they can grow as wide as they need to be to fill the space next to the whiteboard. This eliminates word-wrapping for most screen sizes allowing the stats to fit better vertically. Here is a typical horizontal tablet layout:

User/team configurable stats have been added to the match planner. I added a configuration button with a gear icon (:gear:) that allows you to choose which fields show up. The interface looks very similar to the user interface for adding graphs. It ends up being a little simpler because there is only one section to which stats can be added rather than many individual graphs each of which could have multiple stats. You can test in on the Week Zero Planner on the Demo Site.

From a code perspective, all the user interface for custom fields for both the match planner and the aggregate stats is now in a single file include from both components: stats-config.js It is flexible enough to deal with pages with a single section (the match planner), pages with multiple graphs (aggregate stats, team stats), and pages with multiple sections (score predictor). I’m planning to use this on the team stats page and the score predictor page shortly. Everything is in place such that making those two additional page types have customizable stats should be pretty easy.

1 Like

Configurable stats on the match predictor on the team stats are now available. Click on the :hammer_and_wrench: icon next to each section to configure them. The team stats has a new download link the data on each graph in that dialog.

Demo:

1 Like

Uploading via QR codes is implemented. QR Codes can be used to get scouting data from devices that don’t have internet access. As long as the scouter is able to open the scouting page ahead of time when they have internet, they can use QR codes to provide their data without needing to reconnect to the internet.

Try it out: Scout a match in the demo

Then look for the “QR Code” button in the end game tab. Once you use a QR code once, “QR code” will become the biggest button in place of “Next Match”.

image

Clicking on it will show the QR Code.

image

The QR code contains a URL that will transfer the scouting data to another device. If the scouting data is too big for a single QR Code, you will have to hit the “next” button and scan another one.

Once the QR code is scanned, hitting the “next” button will store the match data in the upload history. If the data needs to be scanned again, it can be retrieved by clicking on “Upload Data” in the hamburger menu.

On the import side, scanning the QR Code gives a URL. You can scan the QR code above to test it or click on this link which has the same URL. It will transfer the scouting data to the scanner from which it can be uploaded to the server.

2 Likes

Thanks to a suggestion by @Footie you can now see the team info when you hover over the team number in the match schedule.

This feature relies on data provided by the FIRST API for the event. The tool tip isn’t available until the API data is downloaded.

You can see this in action on our public data site for Battlecry at WPI.

1 Like