Build Track & Field Ranking Program/Tracking Parser
Budżet: -
HOURLY / PART_TIME
⭐ 0.00 (0)
USA
google-sheets, dashboard, data-visualization, javascript, php, java, web-programming, database-design, algorithm-development, rankings
I need help building a track & field team ranking system. The idea is to take final team standings from track meets and convert them into team wins and losses, similar to other sports. For example, if a school finishes 3rd out of 15 teams, they would receive 12 wins and 2 losses for that meet. Over the season, the system would track each school’s record, win percentage, head-to-head results, strength of schedule, meet strength, and quality wins to create overall team power rankings.
The first version should only focus on overall team rankings. I do not need athlete rankings or event group rankings in version one. I need a simple application where I can create a meet, enter or paste the final team standings, review/edit the data, save the meet, and generate updated team rankings.
This is not a normal sports app. I want to build a track & field team ranking system that ranks schools based on how they perform against other schools at meets.
The main idea is to take normal track meet results and turn them into a win/loss record, similar to other sports.
Instead of only saying:
Beavercreek scored 82 points at a meet
The system would also say:
Beavercreek went 12–2 at that meet
That means Beavercreek beat 12 teams and lost to 2 teams.
The system would track those results across the season and create overall team rankings.
Main Concept
Each meet has a final team score.
The system looks at the final team standings and assigns wins and losses to each school based on where they finished.
Example
Meet results:
Place Team Points
1 Mason 110
2 Centerville 95
3 Beavercreek 82
4 Wayne 70
5 Fairmont 62
This creates these meet records:
Team Meet Record
Mason 4–0
Centerville 3–1
Beavercreek 2–2
Wayne 1–3
Fairmont 0–4
So if a team finishes:
Finish Meet Size Record
1st 20 teams 19–0
2nd 20 teams 18–1
10th 20 teams 10–9
20th 20 teams 0–19
This allows track teams to be ranked more like teams in other sports.
What the System Should Do
The system should:
Store schools/teams
Store meet information
Import or enter final team standings
Calculate team wins and losses from each meet
Track season records
Track head-to-head results
Adjust for strength of competition
Rank teams overall
Allow manual editing and correction
Export rankings
Ranking Factors
The ranking system should not only use raw wins and losses. It should also consider the quality of competition and Division of the teams.
1. Team Record
Each team gets a season record based on how many teams they beat or lost to across all meets.
Example:
Team Season Record
Mason 61–4
Centerville 58–8
Beavercreek 49–16
Wayne 45–20
2. Win Percentage
The system should calculate winning percentage.
Win Percentage = Wins / Total Matchups
Example:
Team Record Win %
Mason 61–4 .938
Centerville 58–8 .879
Beavercreek 49–16 .754
3. Strength of Schedule
Not all wins should count the same.
Beating strong teams should matter more than beating weak teams or beating different Division Size teams.
The system should give extra value when a team beats schools with strong records.
Example:
A 3rd-place finish at a strong invitational may be worth more than winning a weak 5-team meet.
4. Meet Strength
Each meet should receive a strength rating based on the quality of the teams entered.
Possible meet strength factors:
number of teams
average ranking of teams in the meet
number of highly ranked teams
historical quality of the meet, if can be determined
postseason level, if applicable
Example:
Meet Strength Rating
State Meet 100
Regional Meet 90
Major Invite 80
Conference Meet 70
Small Local Meet 45
5. Head-to-Head Results
If two teams compete in the same meet, the system should track which team finished higher.
Example:
At one meet:
Mason beat Centerville
Mason beat Beavercreek
Centerville beat Beavercreek
Beavercreek beat Wayne
Over the season, the system could show:
Matchup Record
Beavercreek vs Wayne 3–1
Beavercreek vs Centerville 1–3
Mason vs Beavercreek 4–0
This makes the ranking more credible because it is based on actual meet results.
Final Ranking Score
The system should create one overall team rating.
Possible formula:
Team Rating =
Win Percentage
+ Strength of Schedule
+ Quality Wins
+ Meet Strength
+ Head-to-Head Results
+ Recent Performance
Example output:
Rank Team Rating Record Win % Strength
1 Mason 96.2 61–4 .938 91
2 Centerville 92.8 58–8 .879 88
3 Beavercreek 89.5 49–16 .754 84
4 Wayne 86.1 45–20 .692 82
Data Import Problem
There may not be a clean CSV file for track meet results.
The system needs a simple way to enter or import final team standings from sources like:
copied meet results
pasted webpages
PDFs
timing company results
Athletic.net-style pages
MileSplit-style pages
manual entry
spreadsheets when available
The first version does not need perfect automation. It needs a way to enter team standings, review them, fix mistakes, and save the meet.
First Version Should Be Simple
The first version should only focus on:
schools
meets
final team standings
team points
wins and losses
head-to-head results
strength of schedule
overall team rankings
No athlete rankings.
No event group rankings.
No individual event database yet.
MVP Workflow
The first working version should do this:
Create a meet
Enter meet date and meet name
Enter or paste final team standings
System identifies schools and team points
User reviews and fixes the standings
System saves the meet
System calculates wins and losses
System updates season records
System updates overall rankings
User can view and export rankings
Short Upwork Version
Otwórz na Upwork