I have this ongoing theory. We, profs, teach what we can’t do. For instance, I teach decision making under uncertainty. A key idea when deciding under uncertainty is that there’s no certainty. Nothing is ever at 100% (except death and taxes, as Ben used to say).
Temperatures in the Mediterranean are low enough in early summer that Ironman France has always been wetsuit legal for its 17 years. Therefore it will be wetsuit legal in 2025. That’s a certainty. So I don’t need to train for a non-wetsuit swim, taking solace in knowing that on race day my buoyancy will be helped by 2.5kg of neoprene. What can possibly go wrong?
To be fair, it did reduce my stress during months of training, all the way until exactly 8 days before the race, when I realized that temperatures across Europe were significantly above the seasonal range. A quick check online showed that in Nice the sea was 6ºC hotter than usual, already flirting with the 24.5ºC max at which wetsuits are prohibited. And that was one week before the race, with a full week of sunny, hot days forecasted.
So, just like that, there was a good chance that the swim would be non-wetsuit legal. “Yo, coach, too late to train for a non-wetsuit race?,” did I type furiously to François, knowing full well what the answer would be.
Cue in the cold sweat and a really, really bad night. Did I just screw up my entire season because I failed to check a basic hypothesis?
Getting to the start line
I competed in Ironman Switzerland in early July in 2023 and 2024. But the Swiss race moved to late summer, which isn’t great. I wanted to find something in late June or early July. The beauty of racing in Thun is that it’s easily accessible by train from Lausanne. Well, getting to France isn't as easy, but easy enough by car, so, Nice it was.
Equipment-wise, last fall the Px got a new cockpit and a new disc, and I modified my position on it quite extensively, so I was hopeful to see some improvements. Oh, and most important, it also got a Lake Monster sticker, because the Vermont Lake Monsters' logo is so cool that it might as well be a dragon.

Final tweaks on the bike. Nice, 27 June 2025.
Not racing much more than once a year, my training blocks are pretty long. This one was uneventful. No drama, illness, or anything major keeping me away from training consistently. But work was particularly challenging, especially in the final weeks ahead of the race. Directing a cohort of Global Management Foundations right up until the week before the race wasn’t my best idea, but this cohort was just so-damn-good that what I got in extra stress trying to add some training on top of 14-h days I more-than-received in good vibes.
Another big change compared with the last two years was that I didn’t have any Achilles pain. The secret? Stretching. It’s. That. Simple. The moment I became more serious with my stretching, all pain vanished. Who knew? And it only took me 50 years to figure this out. Yep, I’m that fast a learner.

The build to IM France 25 worked out pretty nicely.
Swimming should be a year-long sport. Duly noted. But do you know how difficult it is to motivate yourself to ride in the dark and rain at 6:30am on a January morning to go swim laps? Not in the cards. Nope.
That might explain why I only got a couple of months of half-decent mileage before each of my last two races. Finally accepting that is just not acceptable, I started swimming earlier in the year. Not in January, but March. Judge all you want—looking at you, Monty!—you’ll be right, too. But that was that.

There’s what you need, and there’s what you do. Those are often two completely different things. For instance, I need to swim more, but I do other things. Still, 2025 was a better mix than previous years.
The resulting volumes will get the proper fishes laughing, but the 36h of swimming since the beginning of the year is actually a distinct increase over, well, just about any year since 2018, really.
Leslie and I rented a car and we headed to Nice three days before the race. There, I got a chance to squeeze in a couple of open water swims. It was comforting that my speed wasn’t much off my regular wetsuit-assisted open-water speed. It seems that switching from Lake Léman to the rather salty Mediterranean goes a long way in keeping this body close to the surface. So, my anxiety reduced and I just focused on making race day work, wetsuit or not.
IM France 2025 – Race plan | Predicted |
Swim | 1h20min ± 5min |
T1 | 5min |
Bike | 5h45min ± 10min |
T2 | 10min |
Run | 3h25min ± 10min |
Overall | 10h45min ± 25 min |
François and I finalized the plan the day before the race. Pretty straight foward: find a pair of faster feet and stay in the slipstream for the swim, chillin’.
Ride at a 200W average, which should get me through the 170-km course in 5h45 or less.
As for the run, the temperature projections were now upward of 33ºC. Great. Back in my Houston days, we called that Thursday, but I hadn’t trained in this heat in ages, so I planned on starting conservatively (5min/km) and picking it up if that was in the cards.

It’s hard to believe the city of Nice isn’t trolling athletes when they flash their advisory sign the day before the race announcing unusually high temperatures and advising to “limit your physical efforts, …, stay in the shade, and avoid going out during the hot hours.” Right. Nice, 28 June 2025.
Although our hotel was rather noisy (we stayed at the Westminster on the Promenade des Anglais; do yourself a favor, do not stay at the Westminster—but that’s a different story), I had a pretty decent night ahead of the race. At the risk of jinxing future races, it feels that after having gone through a dozen of full-distance races or so, I no-longer get super stressed the night before.
So I got some breakfast and Leslie and I headed to the transition area. Now at Nice, the Ironman Group in its infinite wisdom runs both a half- and a full-distance races on the same day. Which means that there are over 4,500 athletes running around. Which means that the transition is huuuuuge. And the full-distance event starts after the half, at a late 7:30AM, so we don’t get the benefit of racing during cooler hours. And the place is just too crowded for spectators, so they must be kept away from us. Shame. Luckily Leslie, Fred and I managed to connect ahead of the start.

Hooking up with the absolute best race-day crew I could dream of—both Leslie and the better half of Kirby-sur-Seine, Fred Houville. Life is good on the Riviera. Nice, 29 June 2025. Photo credit: Fred Houville.
Swim – 1h17 – (2m03s per 100m)
I seeded right around the 1h15min group. We got funneled swiftly through the start line, and with the water getting deep rather quickly, it only took a step or two (on Nice’s wonderful rocks, that’s always enjoyable!) before I was swimming.
The first few minutes were business as usual: get situated, find your rhythm. Heading out due south, we had the rising sun on our left, so it was mostly right-side sighting for the first leg. I was wearing FORM goggles, which help keep track of my heading, swim cadence, time in the water, and heart rate. All those were useful and comforting and, you know, absolutely essential (triathletes will just buy any and every gadget conceivable).
Except that my right goggles was taking water. I stopped a couple of times to empty and adjust it but it was soon obvious that I wouldn’t be able to use my right eye or whichever info the goggles were giving me (since they only show on that side). Oh well. I guess, we’ll do it the old fashioned way.

Despite getting no reading from the FORM goggles for most of the swim, I had a pretty good trajectory. My Polar recorded 3,885m, so not much more than the advertised 3,800m.
There was a bit of contact; a little more than I would expect for a non-wetsuit swim. Nothing alarming but a heel banged my right ring finger, which I’ve broken a couple of years ago, and it was unclear whether it was broken again. (Sitting here three days later, it’s still swollen, but I think it’s only banged up. Let’s say it’s only banged up.)
Making a left turn at the first buoy and another left soon after, we were on our way back towards the shore. I got a couple of good feet to jump on, and I took full advantage of that.
The course didn’t have us exit the water at the halfway mark. Instead, we took a sharp left to head south, south-west for the second loop. Here I found a wonderful set of feet. The fella was clearly faster than me, so I had to work a bit to get into the slipstream, but once there, it was comfortable to hang on. I did that for a long while until he punched it. I stayed on the first time, but when he punched it again a bit later, I just gave up. No point redlining so early in the day.
By then my right goggle had cleared up enough that I could see the timer. I estimated I wouldn’t be much faster than 2min/km if I picked it up a bit, so I got into a rhythm.
In fact, I exited right on that mark, one of my fastest open-water swim. Cool!

Exiting the swim. And, yes, a nose clip is a lifesaver for this big allergy sufferer. Nice, 29 June 2025. Photo credit: Sportograf.
Getting to my bike meant running through the entire transition area of the 70.3, which took forever. Not only that, but I got to my bike gear right at rush hour. It was rather crowded, so getting my bike stuff wasn’t super smooth. I also got stopped by a commissaire who didn’t like that my race number wasn't showing properly. He helped me fix it up, and I cleared T1 a hair faster than seven minutes.

Pumped, getting out of T1. Pumped!. Nice, 29 June 2025. Photo credit: Fred Houville.
Bike – 6h14 – 163 AP / 184 NP
The bike course starts with 10 km of flat. The ride is smooth and flat. That’s the good news, particularly for those of us who opted for a TT bike. The bad news is that the lane is fairly narrow and there’s a lot of riders. So it’s a good time to fuel, hydrate, and get situated but not really for leveraging any aero advantage.

Getting out of town at rush hour. The fella in the back picture won the M70-74 age group, and he would fly by me in the first tough climb of the day. Super impressive. Nice, 29 June 2025. Photo credit: Sportograf.
And that’s during the “get situated” part that I noticed that my power was running super low. So low, in fact, that I wondered if my Garmin wasn’t just picking up the signal of just one pedal (as it had on a training ride just two weeks before; yep, this is the legendary Garmin reliability in action for you). Sadly, I couldn’t blame Garmin on this one; I was just not producing much power.
I didn’t feel tired after the swim, so it wasn’t a matter of overcooking it in the water. There was just no mojo. So I could either try to stick to the plan—200W average, 220W on longer inclines, 240W on shorter ones, or go by feel. Given that I couldn’t access the dynamic plan I had created on BestBikeSplit—another techbro failure!—I figured any attempt of relying on technology would be counter productive. Better to rely on feel. Oh well, I guess we’ll do it the old-fashioned way (do you see a pattern emerge?).
Another big change this year was that I was going to take my fueling seriously. No, I know I’ve said it before, but this time I mean it. I had 12 Maurten gels 160 (780g total of which 580g of carbs) in three flasks and 3 bottles of Maurten 320 (234g CHO). That’s some 800g of carbs.
For those of you who understand only some words in the previous paragraph, what I’m saying is that I spent almost as much as I would have on a Michelin-starred meal in state-of-the-art engineered nutrition to get a bunch of sugars that would not be enjoyable. But that maybe, just maybe, would keep me going.
I went through my first bottle during the first 20 km or so. That was easy, since I hadn't had a drink in 90 minutes of racing. Gels were pretty easy to eat, too, this early in the day. Now, the course in Nice goes up pretty quickly after the initial 10 km, so I knew I’d be carrying two extra bottles—so, some 1.5kg—extra, but I preferred doing this than stopping at the special needs stations. I had my calories with me, the aid stations would be for fluids.

The course goes up, but at some point it goes down. And some of those downhill sections are stunning. Nice, 29 June 2029. Photo credit: Sportograf.
So, good plan, right? Yes, I thought so, too. What I didn’t plan for was French-quality roads. You know, potholes and more potholes. Yep, the kind that can shake your bottles free. So after carrying two full bottles up the first climb, I lost them both in rapid succession. I did all the hard work and collected none of the rewards. Yep, that’s how I roll. Not only that but in the space of a few seconds, I had no fluids on the bike. I’d have to manage like that until the next aid station.
When I got there, I was surprised by how many people were stopped. Who stops at aid stations? Grab what you need, ride on! I found that if I bypassed the first table, it was easy enough to grab stuff—water and electrolytes, mainly, and maybe the occasional gel—at the far end of the stations, so that’s what I did at all of them. By now the temperatures were soaring, so staying hydrated was essential.

With most of the climbing occurring in the first third of the course, being able to see where I was helped manage my effort. Nice, 29 June 2029.
The course-profile sticker is always good to keep handy. But the Ironman Group, in its infinite wisdom, seems to think that riders can read a size-3 font while managing to stay upright. Luckily, with a few handmade enhancements I had made the sticker much easier to read.
Now, my launching water-bottles-all-over-the-French-countryside adventures didn’t stop after I jettisoned my first two bottles. I ended up losing at least two more (or was it three?) over the next couple of hours. Luckily I never really got into dehydration.

I swear I was in aero position for some of the flat portions—and even some of the descents—but nothing that got caught on camera! Nice, 29 June 2025. Photo credit: Sportograf.
The descents were fast. That’s fine, we have some of those in Switzerland, too. What surprised me was how bad the road condition was in some of the sections. On the plus side, the organization did a good job signaling the most deteriorated parts, but the poor conditions made for a bumpy ride and required us to be fully focused on the road.

Going downhill and in the shade felt like double bonus. Nice, 29 June 2025. Photo credit: Sportograf.
François and I had discussed the choice of bike. The S3 would have made it much easier to climb, especially since my Px has a 1X configuration with the smallest development being a 48x33. That’s not exactly friendly for a hilly course—I guess that’s a downside of buying a bike from a pro when you can't do a 3h ride at 300W and call it a regular day at the office.

I was pushing the watts on the first climb. Then I came to my senses—or my limits.

Overall, I spent almost 40% of the ride in zone 3 or higher. I don’t think I could have pushed much harder.
Oh well, the Px might not be optimal it is just too cool, and if you leave it home because you think it’s more cool than functional, then you don’t have your priorities straight! The course leaves a few sections where I was glad to be riding a time-trial bike. All told, I wouldn’t change the equipment, even if that came with a handful of minutes saved.

T2 was all mine but the sun was mean. That foreshadowed a tough run. Nice, 29 June 2025. Photo credit: Leslie Farnsworth.
Transition 2 was deserted when I got there. I remember trying to estimate how many bikes were already racked back (and therefore get a read on how many people were in front of me) but I don’t remember how many that was. At least an empty T2 meant that it was much easier to get my run setup. I had a quick bathroom break—yes, I still refuse to pee on myself, call it the limit of my dedication to this sport—and I was on my way.
Run – 3h40 (5min21s/km pace)
The run is where I compensate for all my swim and bike slowness. At Nice, the course is 4 laps of 10.5 km each. You go to the airport, turn around, come back to T2. Rinse, repeat. And there’s not a single spot of shade. Everything was going to be under direct sunlight with heat also radiating from asphalt, and 33ºC or whatever the temps were at by then. So the plan to take it easier and then maybe pick it up felt more appropriate than ever.
Except that it never happened.

The run was experimenting with a controlled explosion, trying to limit the decay. Each vertical drop in the pink line is walking through an aid station. The longer one at 2h20 is having a few words with Fred while contemplating my life’s poor choices …
An Ironman run is always the same. The first couple of kilometers, everything hurts. As Chrissie said, that you just ignore. Then it’s a matter of getting into some sort of a rhythm. Mine quickly became running in between aid stations and stopping at just about all of them for water, water, coke, water. Even starting easy, I could already feel that I had started too hard. I decided not to gamble, re-hydrating at all stations.

Doing what it takes. Calling that fun would almost be a stretch … Nice, 29 June 2025. Photo credit: Sportograf.
By then the sun was brutal. It took me a while to realize that ice was available—or maybe ice didn’t become available until then. The first time I found some, it felt I had won the lottery! I shoved one full cup in the front of my jersey, another in the back of my jersey, some under the cap, and … perhaps most enjoyably in my shorts. That felt glorious, and I even picked up the pace for a bit. Clearly I was dealing with overheating.

There's always a time on the marathon where you feel that you need to punch it harder. Judging from my face in this picture, this was it; at 16h15, I was working. Nice, 29 June 2025. Photo credit: Sportograf.
I also picked up the pace when some fella decided to run right behind me, barely a few centimeters away. That happened a couple of times, in between aid station. Always the same fella with a somewhat noisy shuffle. He clearly thought I was useful for his pacing, but he bothered me, being right there. When I called him on it, asking that, at least, he run to the side, he actually shouted at me. Ok, fine. That hurt my ego, so I surged (or, rather, "surged"). Let's see if he manages to hang on—hey, you use what’s available to you! It was nice to see that he could not match the pace.

The late start and the slow ride / run meant that on my fourth lap I had some blissful shadows. That felt glorious!Nice, 29 June 2025. Photo credit: Fred Houville.
The four laps meant that I got to see Leslie and Fred quite a few times. I was also delighted to find Oleksii who had come all the way from the Italian riviera to cheer me on in the name of the GMFers. How cool!
Despite the wonderful support, the sun was taking its toll and, frankly, I was bummed by my absence of mojo on the bike. I was not going to drop out, but I was ready to take it easier. Passing Fred, I asked him to look for splits. When I saw him the following lap, he had the intel: I was in 57th place in my age group on the swim (out of ~130—cool!), down to 15th on the bike. Wait, 15th on the bike? That was unexpectedly good. I guess it's not me out of mojo; it's everyone! So I decide to give it a serious go, and see what I could make stick.
The answer is, not much. But that’s what I had. The finishing shoot was long and nice. Leslie was there, and I could take it all in, for just a bit.

The best part of the day. Nice, 29 June 2025. Photo credit: Sportograf.
Putting it together
So, the swim was good. Much better than I feared. And no wetsuit, no problem. Cool!
Predicted | Actual | |
Swim | 1h20min ± 5min | 1h17min ✔︎ |
T1 | 5min | 7min |
Bike | 5h45min ± 10min | 6h14min ✘ (missed) |
T2 | 10min | 6min |
Run | 3h25min ± 10min | 3h40min ✘ (missed) |
Overall | 10h45min ±25min |
The bike was slow. Significantly slower than I thought. And the run was slow, too. But it was a hot day and every one was probably a good thirty minutes slower than expected.
In the end, it bought me sixth in the age group. That was seriously good news! It looks like I end up at 161 overall (out of 1,443 finishers / 1,711 starters) with a 15% drop rate.
Swim rank is 850 (so, top 50%); bike rank is 297 (so, top 17%); run rank is 101 (so, top 6%). That seems fairly standard for this old, run-centric guy.
Overall placing | |
Swim | 850 |
Bike | 297 |
Run | 101 |
Overall | 161 |
Looking back
Qualifying for the world championship has always been back of my mind, starting with my first go at the full distance in Florianopolis in 2009.
I got close a couple of times. I also qualified via roll down in 2023, but I never qualified out right.
Race | Time | Placing | Qualified | |
1 | IM Brazil 2009 | 11h54 | 149 in M35–39 | Nope |
2 | IM Texas 2011 | 11h22 | 43 in M35–39 | Nope |
3 | IM Texas 2012 | 10h15 | 19 in M35–39 | Nope |
4 | IM Texas 2013 | 10h30 | Nope | |
5 | DNF | DNF | Nope | |
6 | 9h01 (swim canceled) | 1st overall | N/A | |
7 | 9h07 (shortened bike) | 25th in M40–44 | Nope | |
8 | 9h39 | 18th in M40–44 | Nope | |
9 | 9h32 | 5th in M40–44 | Missed slot by one place, 2min9s | |
10 | 9h09 | 19th in M40–44 | Nope | |
11 | 11h05 | 18th in M45–49 | Yep – roll down | |
12 | 10h52 | 17th in M50–54 | Missed slot by one place, 3min4s | |
13 | IM France 2025 | 11h25 | 6th in M50–54 | Yep – outright 😁 |
Well, this time around I qualified outright, getting sixth place when the age group had seven slots. So, the purists will explain that this is Nice and not Kona—therefore not as popular—that the field isn’t as competitive, that …
Looking forward
And they will all have a point. But in my book the world championship taking place in Nice is a feature, not a bug. I wouldn’t want to go to Kona. It’s too far and too expensive. It has never been my dream. I’m not saying I wouldn’t have gone ever—last year, if I had been 185s faster, I would have taken the slot. I’m saying this isn’t the bucket list item that it seems to be for many triathletes.

Recovering my stuff after a long day in the sun. Nice, 29 June 2025.
I'm saying I wouldn't have gone this year Oh, and I have no desire to travel to the US right now. None whatsoever.
But getting to a world championship, why the hell not? Especially since it will be returned to Hawaï starting next year, so it’s probably my one and only time to experience the vibe.
So, Leslie and I will head back to Nice on September 14. At least now I know where the potholes are on the bike course …
So what can this decision-making prof learn about decision making through this year’s journey? In the end, wetsuits were prohibited but that didn’t matter, as I produced a good-enough swim. Worrying about it only created stress. Sure, a few more swims with no pull buoys / wetsuits would have helped, but really I should have trusted the process a little more. Especially after having gone through a dozen IM races or so. Yep, overconfidence is dangerous, but under confidence can be crippling, too.
Olivier Sibony has this wonderful line about decision making: Trust your intuition when your intuition is good. What he means by that is, trust your intuition when it applies to a problem you’re reasonably familiar with. If there’s a lesson I’ll take out of IM France, it’s that after a dozen full-distance tris, I have a well-enough calibrated intuition for racing long-distance tris. I won’t overcook the swim, bike, or run aiming to make an unrealistic plan stick. I’ll adapt the plan in light of new evidence. Come to think of it, it seems that I have this decision-making stuff somewhat dialed in. Maybe I need to find something else to teach …
It takes a village
I’m super lucky to have friends who are taking interest in my crazy hobby. Special thanks to Stéphane F., Louis, Ze FrED, Albrecht, Olivier, Michaël, Caroline, Jean-Philippe, Phil, and Amit. Thanks also to Jérôme Jaquier at Ashtanga yoga Lausanne for your swim and yoga advice and Thibaut at TNCE for taking such good care of the Px!
I’m also extremely grateful to all 18 members of the GMF 1 2025 cohort—Muthu, Delia, Faisal, Kasper, Sabine, Alexander; Saleh, Peter, Dolon, Marc, Matthias, Anzhela; Oleksii (double thanks!), Abdulaziz, Wissam, Anette, Camrin, Honora. They all happily engaged in a case study we conducted a few weeks ago on where Ironman should hold its world championship. And instead of running away when that was finished, they doubled down their support during the program’s final week ahead of the competition and on race weekend. Thank you all, I could feel your support and good will under Nice’s baking sun!

Accepting my slot. Nice, 29 June 2025. Photo credit: Leslie Farnsworth.
François, dude. Thanks for taking me through one more of those. I hope we get to run together in Lausanne this fall; it’s been too long since last time.
Fred Houville, you’re a rockstar! Coming all the way from Houston (or at least from Annecy) to be here on this day makes it very, very special. Without you, it’s just not the same. Please come back in September and bring your guitar for a Kirby-sur-Seine Euro 25 tour! 😉
Finally, my dearest and wonderful Leslie. You give me all the time I selfishly want to train for this nonsense, and then you indulge me by staying in subpar hotels when we could be doing something that’s actually fun. I'm most lucky to have you. Merci !
