The goal of this project is to strengthen my Python skills while exploring a topic that genuinely interests me: the role of luck—specifically birth timing—in the developmental success of football players in Colombia.
In Colombian youth football, players born earlier in the calendar year are more likely to succeed, due to structural age group cutoffs that favor relatively older individuals in each category. This advantage increases their access to better coaching
The main argument I’m trying to make is that, in Colombia, being born in certain years or months can significantly benefit individuals in terms of development, which in turn increases their chances of making a professional debut.
I’m going to use the year 2012—when I was 17 years old—as an example. The main national tournament was structured as follows:
These categories were aligned with the age limits of international tournaments in which the national teams were participating. For example, if the U-20 World Cup allowed players born in 1993 or later, the national tournaments would be structured accordingly.
Here’s the key point: I was born on December 26, 1994. Someone born in early January 1993 could be nearly two years older than me, yet we would belong to the same age category. Meanwhile, someone born just six days after me—on January 1, 1995—would fall into a younger category.
This creates a major advantage (or disadvantage), especially during developmental stages. When competing for a spot on a national or regional team, the individual with more training hours and physical maturity has a clear edge. Of course, factors like dedication, talent, and discipline also play a role—but it’s undeniable that luck (or randomness) can significantly influence the outcome.
First, load the env variables which includes the API key.
from dotenv import load_dotenv
import os
load_dotenv()
api_key = os.getenv("API_FOOTBALL_KEY")
Using the API, we’ll fetch the ID for Primera A, Colombia’s top football division.
import requests
url = "<https://v3.football.api-sports.io/leagues?country=Colombia>"headers = {
"x-apisports-key": api_key,
}
response = requests.get(url, headers=headers)
data = response.json()
# Print league names and IDsfor league in data["response"]:
print(f"Name: {league['league']['name']} | ID: {league['league']['id']}")
Name: Primera A | ID: 239
Name: Primera B | ID: 240
Name: Copa Colombia | ID: 241
Name: Superliga | ID: 713
Name: Liga Femenina | ID: 712