FRC Group Tracker


Troy 1 2024 MI District Event Teams

Hi everyone!

My name is Sarah, and I’m a programmer on team 1188. I recently created the FRC Group Tracker, a web app ideated by @czb that generates an interactive graph of statistics for a set of teams and year ranges. The MEZ (Michigan Engineering Zone) is adopting this software as a means to visualize trends in their expanding group of 20+ teams. Our scouting team on 1188 is also using it to pre-scout and compare events. There are many potential use cases and it’s now public for everyone to explore!

Some notes about V1.0:

  • Only district teams can be inputted. Implementation of regional teams will be part of a near-future release.
  • You can enter teams from multiple districts.
  • The app will only look at years a team competed in a district. For Michigan teams that means the first year is 2009, but other districts will have different start years. If a year range is specified that is longer than a team was in a district, non-district years will be ignored for that team.
  • The app uses TBA to obtain a district ranking for each team, which is then converted into a percentile rank within their district and used to calculate the statistics displayed on the graph.
  • Click on a year to view more statistics not displayed on the graph, such as the total number of teams that played, the number of returning veterans, the number of rookie teams, and more.
  • In addition to the input UI, the teams and year range are reflected in the URL, which means you can easily bookmark or share links to your use cases.
  • The app is functional on desktop only. In future releases, a working mobile version will be included as well.

Please let me know if you have any feedback, feature requests, or questions. If you discover any cool use cases, drop the search query here too! We’d love to see how you or your team might apply this to learn something new or draw a neat conclusion.

13 Likes

This looks great!

2 Likes

I love this!

What I would really love to see would be a search option for teams name maybe backed by blue alliance for the adding a team to the list part.

Additionally if there was a way to put in a postal code and seek out graphs for different geographic groupings like country, state, county, city. Obviously showing several hundreds teams at a time is gonna be a mess, but for like the MEZ example what if we wanted to look at all of the teams in Wayne County in a time range and include teams that might not be around anymore, but were located in this area at one time.

Edit: side note your teams High school (I think) was built on top of Kimball where my dad went to school. Small world.

1 Like

This is so cool! Would love if there was a way to quickly add all teams attending an event.

How do you calculate team percentile? Is it just based on district leaderboard ranking? I’ve tried similar systems in the past and had decent results, but feel like it can be too volatile unless you look for a trend over a few years (which your site does perfectly).

3 Likes

I’m really glad to hear that you’ve had a better experience on this site than on others! Out of curiosity, what systems are you referring to? And your suggestion is noted! An event search would have certainly made the graph query screenshotted in my original post quicker to input.

You are correct about the team percentile calculation, it’s based on district leaderboard ranking. Any teams that earned zero points for the season are excluded from the calculations.

2 Likes

Great ideas, noting them all. I think @czb was interested in a similar use case to searching for all teams in a location regardless of whether they exist anymore or not.

And yes it is a small world!

2 Likes

Mostly in-house stuff - loose event “predictions” / trying to gauge whether an event is relatively “stronger” or “weaker” by the percentile of teams attending. Nothing too serious but tl;dr it’s something I’ve considered in the past but never taken too deep of a look into.

2 Likes

Thank you all for the feedback! And, a huge thank you to Sarah, who wrote 100.0% of the code for this.

As Sarah mentions, this is one of the motivations for the app in the first place, and something we would like to add. We chose not to focus on search features for the time being because power users can URL-hack queries with a list of teams that they compiled elsewhere. For example, I did run this for all teams in Michigan at one point (warning, this will take a couple minutes to complete if you try it, it’s a lot of TBA requests…) and I did that by copying all of the teams from TBA into a text editor and then mass-inserting commas. Only took a minute to put it together. It would certainly be a better user experience to have this functionality in-app; we will just need to find the time to make it happen.

Entering an event code is definitely another thing we want. Same story with copy/pasting from TBA and inserting commas, but again, it’s a much nicer experience to just enter a code. Great suggestion!

The biggest priority for the next major release will be to add regional teams and the ability to compare teams with a method other than district rank, because right now, for example, you cannot compare two overall districts/regions to each other, and we think that this would be both fun and useful for those who run those districts/regions.

This isn’t possible when using rank within a district, because regional teams have no such rank at all, and if you look at an entire district, the average rank will always be ~50th percentile if all teams that played that year are included*. We have ideas for how to solve this, but programming our actual robot is probably going to the number one priority for a little bit :slight_smile:

*If you put in all current teams, you’ll generally see a decline over time (see Sarah’s image of 2024MITRY as an example) due to survivorship bias.

Bottom line - we’re happy that you’re enjoying it thus far and excited to get more features live when we can!

4 Likes

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.