About
I grew up with basketball. Then I tried to rank all of it.
Hi, I’m Sergio. I’m an engineer and a lifelong basketball fan. My first trips to an arena came when I was only a few months old. Years later, I spent high school playing, or at least making a determined attempt.
Somewhere along the way, I became fascinated by ELO. I am not a chess player, or even much of a chess fan, but the system itself seemed wonderfully elegant to the engineer in me: give it a stream of results and it can place every player on the same scale.
- What it is
- A personal project
- Built by
- An engineer + fan
- From
- Spain
- Status
- Still evolving
One rating. Many leagues. How hard could it be?
Could the same idea work for basketball? I wanted to see if one transparent rating could put teams from different leagues on the same map, using little more than the games they played.
I began with European clubs. Once that worked, adding national teams and the NBA felt like a natural next step. At roughly that point, the small experiment politely stopped being small.
The formula was the easy part. Naturally.
The interesting part was everything around it: the data, the identities, and the questions that appeared once the rankings existed. This is where a small experiment quietly becomes a data archaeology project.
- First
A simple model
The first goal was simply to compare European clubs using a transparent ELO model.
- Then
The data fought back
Archives disagreed, clubs changed names, competitions changed shape, and source IDs turned out to be suspicious aliases rather than real identities.
- Next
The map got bigger
The NBA and national teams joined the project, along with team histories, game explanations, and tools for testing different models.
- Now
Still asking questions
Coverage is improving, assumptions remain visible, and a better source or method can still change what the site thinks it knows.
Built in the margins, occasionally between everything else.
As an engineer, I like building things. As a father of two small daughters, I rarely have more than 30 minutes at a time, and I also like to leave some room for exercise. AI has allowed me to work on BasketElo without needing to be in front of the computer all the time. Without it, this project probably would not have been possible.
That help does not remove the need for judgment. Provenance, tests, versioned models, and visible warnings still matter. The aim is to show what the ratings use, where the games came from, and where the data still has limits.
Built by Codex. Watched over by a basketball fan.
BasketElo is built with Codex on Blazor and .NET, then built and deployed directly to production on an OVH VPS. It is a surprisingly effective way to make a website when your free time arrives in tiny, unpredictable parcels.
No single line of code has been human reviewed. Or reviewed at all, really. Codex writes, tests, and deploys it directly to production. This is either impressively efficient or a very elaborate way to create suspense.
Enjoy the data. If you have a suggestion, spot something that looks wrong, or have advice, ping me on X or email me at sergio@basketelo.com.