First Triathlon in Words, Pictures, and Visualizations

blog_triathlon.png

Intro

I've always liked running and biking (I also took part in some amateur races) but never could swim any reasonable distance. I learned how to swim when I was a kid but when swimming crawl, I had to stop like every 50 meters to rest and take a breath. That was the main reason why I never thought about triathlon in the first place. My wife, however, is a pretty decent swimmer, plus she likes to run and bike as well, so she was always tempted to try a triathlon. One day she finally decided to participate in one race and I went to cheer on her but I quickly realized that cheering wasn't for me and I resolved that I should race as well. It couldn't be that hard to learn how to swim properly, anyway.

There are many triathlon races which usually differ in race distances – the classic ones are a sprint, olympic, half- and full-distance (but you can also find many other variations besides these):

The typical triathlon distances.

The typical triathlon distances.

 A typical triathlete newbie usually goes for a shorter distance race at first to collect some experience, practice transitions (switching from swimming to cycling gear and from cycling to running, which the pros get done in a matter of seconds), get used to swimming and biking in a crowd, etc. Only after that they move on to the longer ones. Well, I started the preparation for my first triathlon by signing up for a half-ironman distance at the Challenge Riccione, in Italy, i.e. 1.9 km swim, 90 km bike, and a half-marathon on top of that. I realized that I wouldn't be very good at transitions, so I chose a long enough race, where it didn't matter that much :).  

Pre-training

Once I received the registration confirmation, there was no way out and it was time to get to work. The activities I will talk about here start in October 2018 and end with the triathlon race itself on May 5th, 2019. I registered on Nov 23 (thumbs up for Black Friday discounts!) so, in the graph below, you can see how much sport I'd been doing prior to my triathlon journey. My wife registered for the race as well so we trained more or less together. 

In general, if you are reasonably fit you will need at least three months to properly prepare for this kind of race. That meant I still had enough time to prepare for the real preparations, i.e. the intense training that would begin in February, and to work on my swimming skills. I didn't have a sports watch that would record swimming at that time, so there's no available data to share. But there wouldn't have been that much to share, really –  in the beginning, I was able to total around 1K in the pool (resting every 50-100m) and working my way up only very slowly. But it was okay, I still had enough time.

Pre-preparatory phase from October till January (I've registered for the race on Nov 23).

Pre-preparatory phase from October till January (I've registered for the race on Nov 23).

In total, I managed to do 38 activities from the beginning of October till the end of January. I guess it wasn't the worst but I am sure an average triathlete does more. I had to take a break from sports at the end of November due to work, meetings, some travelling, etc. Then – with a new watch (a training which isn't recorded doesn't count ;) – I've managed to focus on swimming in December. My progress in swimming was quite slow. Even though I could continuously swim more than 50 m crawl without a break around Christmas, I knew I needed to do something to improve. In the graph below, you can see how fast I swam (in minutes per 100m).

Swimming pace (Dec 2018)

Swimming pace (Dec 2018)

Was I really getting slower at one point? Impossible. There had to be some problems with my watch or something :)!

Things started getting serious at the beginning of 2019 – I decided to find a coach to focus not only on distance and time in the water but also on my technique (and thus improving the time and distance). I found a perfect coach after the Christmas holidays but had to deal with another setback almost immediately: as I was opening the door at the changing room, I banged it against my head, which resulted in a couple of stitches. Of course, no swimming (and limited activities only) for the following two weeks.

However, everything was still fine, we had a family holiday in the US and a friend's wedding in Portugal planned in the next two weeks, so there wouldn't have been much time to train even if I was healthy.

Gearing up

It's much easier to take a wetsuit off when it's wet.

It's much easier to take a wetsuit off when it's wet.

I kept hearing from various sources that a huge part of triathlon is the gear and I learned it was never too early to buy a new piece of tri equipment. My first acquisition was a ROKA wetsuit. The good news for me was everyone saying that it was much easier to swim in a wetsuit since it makes you float and helps you maintain the right body position in the water. As we were on a vacation in the US, we decided to leverage the fact that you can generally buy the gear much cheaper there than in Europe. Nonetheless, the road to getting our wetsuits proved to be quite rocky – we had to contact a friend of a friend, who had a friend in the US, to whose address we could've had the wetsuits delivered – but in the end, we succeeded and even though there was no opportunity for open water swimming (and I still had my forehead stitched), we had to try them right away! 

A couple of days back from the vacation, we were off again on our way to Portugal. It was the middle of the winter, so no chance of swimming outdoors back at home for at least a couple of months but Portugal has an ocean and a much milder climate so we saw an opportunity there and brought the suitcase along. We found a really nice beach in the southern part of Portugal called Algarve, so we decided to go for a swim. It was my first time to try open water swimming. I already knew how to put the wetsuit on, so it took me only something around 20 minutes. I entered the ocean until the water was knee-deep and it actually felt good – the wetsuit was working and I didn't feel cold (remember we were at the end of January with the water temperature around 14°C).

So I jumped headfirst into the water and thought my head would explode. No one told me that wetsuit didn't work on the head and the water can still be freezing, even when using a wetsuit. Luckily, after a couple of strokes, it got a bit better (my brain probably froze so it couldn't notice the cold anymore). I swam for 1000m and had to admit that people were right – it really felt easier to swim in a wetsuit. I was full of optimism and started looking forward to training and the race. We had to wait until we came back from Portugal and then we could start.

A day after we came back, we went for a run and got sick the next day! So that was it with starting right away. We had to take it easy the following 10 days and gain some physical as well as mental strength. I was starting to get a bit anxious because the time was running and the internet said (everything there is true, right?) that one needed to train at least three months for this kind of race.

We had a personal coach, a friend of ours, whom we met during our year-long stay in Chile and who agreed to train us through WhatsApp. This was great because we didn't have to rely on any “professional” training plans downloaded from the internet. 

Training (or the part of the blog, which justifies posting this story to a data science blog)

We managed to beat the flu in 10 days and it was finally time to really get serious. You can see my full training log in the graph below.

Full training log during the three months leading to the race.

Full training log during the three months leading to the race.

We can see in the graph that, most of the days, we did at least two activities daily. It's also important to mention that I didn't track the strength workouts, core exercises, and stretching, which we did basically every day on top of the rest. We ended up with having one rest day per week, which we were always really grateful for. Altogether, I did 120 tracked activities (swim/bike/run) in 83 days.

The total activity count.

The total activity count.

As you can see in the graph above, our most frequent activity was swimming. That was because swimming is a great complementary sport to the other two activities and it's also a good way of active recovery – even when you run or bike a lot, you can still go swimming to recover. However, I can assure I didn't feel that way. And in part maybe also because our coach was primarily a swimming coach and almost a pro swimmer himself (the type who always takes podiums in local races). 

At work, the triathlon preparation coincided with our data science bootcamp BaseCamp.ai, which we were running in Bratislava and where I was teaching almost every day. You might be wondering how we fit all activities into our schedule. The answer is quite simple, we woke up early or went training quite late when we had to. In the graph below, you can see at what time during the day my training sessions started.

The times of the trainings during the day.

The times of the trainings during the day.

The following graph shows our overall training load. You can see it was increasing only slightly week by week but this growth was also coupled with the increase in the intensity of the sessions. Usually, when people prepare for a longer race, the preparations peak around 2-3 weeks before the race. This was our case as well. Once we reached April 28th, we knew that the hardest part of the training was over.

The overall training load week by week measured in time (minutes).

The overall training load week by week measured in time (minutes).

Let's now take a look at the activities one by one in the same order as in triathlon, so starting with swimming.

SWIM

Swiming sessions.

Swiming sessions.

Most of the sessions were swims. Altogether I swam 53 times (of which 50 were pool sessions) in 83 days so you might say quite often. No surprise that most of our family and friends, who visited us during that time, were saying all the time we smelled like chlorine. Sometimes it was hard, sometimes it was easy but, in the end, I managed to complete all of those swims. Not bad, considering the fact I hadn't been swimming at all only 5 months before. Let's take a look at the progress if there was any.

Swim: Pace vs. distance

Swim: Pace vs. distance

As we can see in the graph (can we?) I managed to sort of steady my pace after getting off the initial pace roller coaster, even though the distance was increasing. However, the values still vary a lot because each training session was different, with some consisting of intervals, some focused on technique, some with the only goal of surviving and being able to finally go to bed (disclaimer: the last bit wasn't part of the official description from the training plan)...

To better see the trend, I computed the regression lines for speed and distance to find their relationship with the date and plotted them together. The result is shown in the image below, where we can clearly see the trends in Pace and Distances during the covered period.

Swim: Pace vs. distance – regression lines

Swim: Pace vs. distance – regression lines

Since my goal was to survive the swimming part so that I could go on to the next sections of the race, I was pretty satisfied and felt quite confident. As the data also proves, I improved significantly in 3 months.

BIKE

Since we started training in winter and the warm spring days were apparently postponed that year (even in Bratislava, where spring typically arrives much earlier than in my hometown), and also due to time constraints, I was obliged to do most of the bike sessions on an indoor trainer (a device where you mount your regular road bike, so that you can workout no matter what the weather has planned for you). In the following image, the blue stands for indoor and red for outdoor biking sessions.

Cycling sessions.

Cycling sessions.

The sessions were getting longer as we were getting closer to the race day. You might've noticed some exceptions to this trend: the outliers, or the short indoor sessions, mean I trained transitions, i.e. shorter bike sessions immediately followed by a short run with a break only long enough for changing my shoes.

It's hard to compare the indoor training with riding outside because those rides were always much longer. Timewise, an indoor session is much more efficient, so the typical way to manage the training load for an amateur triathlete (with a regular job) is doing around 2-3 indoor sessions per week and going out for longer rides on the weekends.  We did more outdoor rides in the later stage of the preparations but there was a simple reason for that - the weather.

RUN

The last part of the triathlon is running. Since I did run a couple of half-marathons before (and at a reasonable pace, too) I wasn't worried about this part. The smallest portion of all training sessions were runs – “only” 29. The short runs in the image below again correspond to transitions.

Running sessions.

Running sessions.

The pace/distance graph below shows that I started with shorter runs and went really slow as well, at first. Here, the pace is in minutes per kilometer. Both lines are quite bumpy, because of the different nature of each training – interval sessions, long runs, transitions. Despite that, I think it's immediately obvious that I managed to run faster in April than during those first runs in February.

Run: Pace vs. distance

Run: Pace vs. distance

But we can check the regression lines again to see the trends more clearly. We can see very similar trends like in swimming which is good, meaning I improved a lot.

Run: Pace vs. distance (regression lines)

Run: Pace vs. distance (regression lines)

As we can see, the training went mostly well, which was quite a relief after the few initial setbacks, such as cracking my forehead or getting ill . Finally, it was time for the grand finale - the race.

The race

Approximately a week before the race, I started regularly checking the weather for the race day. It said 24 °C on Friday, 16°C degrees on Saturday, and 11°C for the race day. I really hoped that the forecast would change but it didn't and it was really cold. Good that we'd chosen a race in Italy in May to be sure to have nice weather.

The thing that we were most afraid of was that they would cancel the swimming part. The organizers were seriously considering it, which can also tell you something about the weather situation. Fortunately, on Saturday evening, the day before the race, they decided that the swimming part would happen because storms were expected only at 11 am. Everyone should be out of the water by that time. In a way, we were happy because to come all this way for a duathlon (a run-bike-run race) would have been a huge disappointment.

SWIM

Swimming race course

Swimming race course

I can still remember the line from the race description on the official Challenge Riccione website saying: “Swimming in the calm waters of the Adriatic Sea”. Well, because the weather was really bad, the water wasn't calm at all. The good thing was that I trained enough swimming.

For the start, my coach advised me to stay towards the back of the racing field, but the starting line was quite spread out and I had a really fast start, which ended up as a bad thing. I managed to get to almost the front of my age group and ended up in the middle of a huge fight for the position. Someone hit my nose with an elbow which wasn't pleasant at all. However, I really didn't want to give up at that point - some 200 m in the race. I had to stop and take two paces to the side, where I could swim at my own pace without being disrupted by others, which allowed me to continue. Let's now take a look at the data from the swim part.

Race swimming pace.

Race swimming pace.

We can see that the beginning was the fastest part of my swim – probably not great, but I survived. There are some weird spikes in my pace during the second half of the swim which I don’t remember. The watch was probably struggling with the GPS signal. What I remember is that the second half was against the waves, which may be one of the reasons I slowed down. But, in the end, I made it through in ca. 41 minutes which wasn’t great (I had hoped to make it under 40'). However, my watch showed 2,100 meters which can basically mean three things:

  1. The course was a bit longer than advertised 

  2. The measurement of the distance was inaccurate

  3. I got lost somewhere on the way

I'll let you guess which had the biggest effect.

I survived the swim!

I survived the swim!

BIKE

The day before the race, we'd driven out to study the bike route. It was a beautiful scenic route leaving Riccione, passing through picturesque local villages and even crossing over to San Marino. The road was mostly freshly paved and smooth since Giro d'Italia was coming there in a couple of weeks. There were two major climbs on the road (x2 since we were supposed to make two laps) but nothing too horrible after all the preparations we went through. Good thing we enjoyed the route from the car because what was to come wasn't very enjoyable.

Bike race course.

Bike race course.

There isn’t much to write about the bike leg, besides that it was super cold. I took some extra time in the first transition, putting cycling sleeves and a jacket on (I knew the weather forecast), and then went on.

Heading to the hills and towards a storm.

Heading to the hills and towards a storm.

In the beginning, it went well, the weather was mild and I was doing nice progress. Then the storm came. A real one. There were small rivers of water flowing down some roads. One had to be extremely cautious, especially during the descents but still I could see some falls along the way. I was sort of expecting for the race to be interrupted at any moment. 

After the race, we heard from our family following the race online that, at one point, the live race tracking was interrupted because “it was impossible to continue streaming due to a huge storm on the track.” As you can imagine, this didn't give them much confidence that everything was fine.

Anyway, I managed to survive the storm but towards the end of the bike part, I started having cramps in my legs, which was a bit too early for my liking. I had to slow down and somehow managed to come, completely frozen, to the second transition. 

RUN

21 K left to go! Two flat laps through the city center of Riccione and the seaside promenade, nothing more. My thinking before the race was – as long as I get to the run part, I should be fine. I had to quickly reevaluate because of those cramps towards the end of cycling. Luckily, at least the storm cleared.

Race running pace.

Race running pace.

As we can see at the beginning of the graph, I had to stop early on because I couldn’t run at all. I was prepared for this to happen towards the end of the race, but I couldn’t crawl 20km to the finish. Fortunately, after slowing down, the cramps went away and I was able to get some speed back. From that point on, it was only getting better. Both I and my wife managed to finish the run and the whole race. YEAH! Hand over the medals and the finisher t-shirts :)!

The last meters before the finish line.

The last meters before the finish line.

Conclusion

I went from no swimming at all to this race in approximately half a year – not bad I think. There were moments when I felt like I would rather skip the pool drill for that day and watch some Netflix but since there were two of us, we managed to motivate ourselves and made it through each training session. Giving up was never an option (well, maybe except for the first minutes of the race when I got punched in my nose and kicked and pushed around – but even then only for a split second ;). Despite some minor complications along the way, I fell for triathlon, and I hope to do some more. There is still a lot of space left for improvement in all areas, including the gear and the weather :).

See you at the next one!

Frozen, exhausted, but happy!

Frozen, exhausted, but happy!

My wife taking 2nd place in her Age group

My wife taking 2nd place in her Age group

Next
Next

Migrating to Open Source: SAS to Python