I've made a quick and dirty website for viewing the AFL fixture called footyfixture(.txt). Check it out if you're sick of bloated websites filled with tracking and gambling advertising.
Couple that huge size with a total of 25 different domains being connected to, at least 17 of which are used for serving ads or some other sort of tracking. If you leave the page open for 5 minutes it ends up making > 200 HTTP requests for various things. In amoungst those requests are constant check ins with analytics services, refreshes of the betting odds for the matches and information about your browser session being sent to performance monitoring tools.
To battle that, for my own personal use, I've made a plain text version of the fixture. This is inspired by Plain Text Sports, F1 Calendar and my continuing push towards more modest and minimalist web experiences.
Footy Fixture has some very simple goals:
- Show the full fixture for the men's AFL competition
- Show when the games start and where they are being played
- Show the score for completed games (but, importantly, don't worry about live scores or this being added quickly)
- Try to be < 10 KB compressed
- Generate automatically, ideally with official data as the source
The data comes straight from afl.com.au via their afliapi.afl.com.au endpoint for listing matches. You can see this endpoint being called repeatedly from the official fixture page. Check out Julia Evan's deep dive into using undocumented web apis for a strategy you can use to discover and use these sorts of APIs. In this case there's definitely some rate limiting or bot detection in place – I'm only calling this API once every 5 seconds, and only building the project a couple of times a day to avoid being blocked.