Before We Begin
As mentioned previously on my Ethics page, I use Claude as a thinking partner, not as a replacement. In the interest of transparency, I want to explain how I used Claude in this project.
When working with Claude, I do all of the deliverables in separate programs. That means that I created each table and image was created myself, with Claude only providing assistance when I came across problems. In this project, that looks like having Claude make sure my writing makes sense, debating what criteria should be considered, and finding realistic solutions that I come across while working on this project.
This project is specifically being used as a tool to teach myself the necessary skills used in data analytics, and that means that I am not posting any work that I did not create myself.
FRC Scouting Analysis System
| Project Name | FRC Scouting Analysis System |
|---|---|
| Author | Charity Eiland |
| Data Source | The Blue Alliance API |
| Initial Dataset | 2025 FRC Arkansas Regional |
| Primary End User | FRC teams during alliance selection |
| Tools Used | Python, SQL (SQLite), Tableau |
The Problem
Alliance selection is the most consequential decision a team makes at any FRC event. With strict rules around offer denials, seeding shifts, and a rapidly shrinking pool of available teams, decisions that take too long or rely on a static list can leave a team scrambling. The data analysis stage of scouting doesn’t end when the meeting does — it has to keep up with a competition that moves fast.
The Solution
This system automates the analysis stage of scouting using a gap-weight scoring system. Rather than just ranking teams, it identifies which available teams best fill the gaps your current alliance leaves. Data flows from Python for cleaning, into SQL for calculations, and out through Tableau dashboards for fast, readable outputs during the pressure of alliance selection.
Alliance Selection Criteria
The criteria that will be used when evaluating teams will be as follows:

This project is currently in progress. Check the blog for updates as development continues.