Playing With Our Sports Data With Eleventy and Strava

This month Apple wants me to walk ten point three kilometres with the Apple Watch 10 times. Garmin and Strava want me to cycle 8000m uphill, 800km horizontally, and more. Apple, Garmin and one or two other companies want me to walk 300,000 steps per month.

Now, I have two ways of achieving these goals. The first way is to wear a Garmin watch to keep up with Garmin challenges, An Apple Watch for Apple challenges, a Suunto watch for Suunto challenges.

Alternativaly I could write a few lines of Javascript in my Eleventy-Strava project that allows me to track Garmin inspired, Suunto inspired and Apple inspired challenges, whilst wearing just one watch, rather than three.

The rational is simple. Of course, I could settle for Strava challenges, and wear a single watch, but where’s the fun in that. Suunto has one way of tracking fitness progress, Garmin has another, and Apple has a third. Apple also has an entire ecosystem of third party apps, for 25 CHF per year, up to 130 CHF per year if you’re eccentric. That cost is per app, not in total.

People feel that Garmin Connect+ is expensive at 75 CHF, and Strava at between 75 CHF solo, and 130 CHF with Runna, is also expensive. The cheapest gym membership is 49 CHF per month, but paid at once, and for a minimum commitment of a year.

The Fun Part – Personal Challenges

I live by the Jura so it’s normal, during the cycling season to ride up and down the Jura at least once per week. We could have a “Climbed the Jura” challenge. We could then count how many times I do it in a month. Another metric could be to count how many times I walked from Nyon to Geneva, distance wise.

I could also count how many centuries I do in a month. A metric century is a 100km ride.

Several apps track whether you run a 5k, 10k, 21k or 42k run. It would be easy to have a count of how many of each we accomplish per month.

Achievement Fatigue

I am just three days away from having closed all my rings 2250 times with the Apple watch and yet I rarely look at it these days. I look, at least once per month to see what the month’s challenge is, but other than that I grew less interested in it. If I mention adding this to the Strava-Eleventy experiment, it’s to see the code that would make this work, and as practice for prompt “engineering”. It’s about experimenting, and coming up with new projects.

In my summaries page, per year I could have “I ran ten 5k, three 10k, one 21k” and I cycled 50km or more twenty times, 100k or more, sixteen times and more”.

People, at the end of last year said “paying premium for the end of year summaries wasn’t worth it. With my playful idea, you’d have that yearly summary, all year long, and for as many years as you have been tracking sports.

Whether To Look Forward, or Backwards

At the moment I’m working from the Strava activities CSV, and each time I go for a run, walk, or cycle, I export it, add the strava event number and ad a line to the activities csv. It is then reflected on the site.

The questions are whether I want to check if various challenges are met for each future activity and if so how do I want to use that information. Do I want it to be checked on each build, or do I want to make it persistent? Yesterday I added a script to log tyre changes.

For runs I could have a script that checks “if a run is more than 5k, but less than ten mark it in the 5k list, if it’s between 10-21k mark it as 10k, and if it’s more than 21.1k mark it as 21k. It can function outside of the eleventy build process since this can add to the build time.

With the blog there was a long build time, due to some logic running for each build. When it was cached, then the build time was shrunk, and then shrunk again. That’s part of the learning process.

And Finally

The key strength of the Eleventy-Strava experiment is that once rendered it is tremendously fast. I can find information conveniently, without much waiting. If I use Garmin’s yearly summary displays as inspiration I could replicate what I find interesting. I will then see how figures changed through the years. The last two years have seen a lot of cycling. Previous years would have seen hiking, climbing and more.