Can’t Stop – Won’t Stop

I went for a run today. I probably shouldn’t have. Couldn’t help myself. People say that running is hard, but for runners, not running is just as hard. My left knee needs a break, and I have been pretty good about letting it rest, but with some mild winter weather we’re having, I couldn’t help myself. It feels better, or maybe feels good enough to give a short run a try.

I chose my typical route to the forest preserve, and within the first quarter mile, I was already feeling some knee discomfort. I thought about shutting it down, but my previous experience with this injury told me that it would loosen up. Fortunately, it did; my pace picked up, and I carried on my merry way. The catchall “runner’s knee” type injury can mean several things, but this one seems to let me actually run. It’s just the post-run knee achiness that gives one pause.

Five hours post-run and my knee is feeling sore again. I’ve never been a running gizmo guy, but after trying and having some success with the knee straps I have been wearing (which I unfortunately forgot for today’s run), I saw an advertisement about red light therapy on Facebook. I swear, Facebook can read my mind, or is spying on me. I did a little googling into it and found some on the almighty e-tail website that everyone uses, with some good reviews, so I bought one to give it a go. I wrapped the dumb thing around my knee and hit the ON button, which brings it to life and starts to warm and massage my knee slightly, in addition to zapping me with whatever red light and near-infrared light thing it has. The jury is out on this gizmo, but I have only used it for two days now. We’ll see.

The coach-wife says I need to stretch more. She’s probably right. I stretched at work for a little bit today. I’ll try to remind myself every day to do that.

When runners who love to run can’t, they do a lot of crazy things to keep themselves going, everything that is except the thing they need to do – stop running. But running is life for me, and I can’t just stop doing it. I won’t stop doing it.

2025 Running Year In Review

2025 Running Year In Review

  • Total Miles – 1060 miles / 88 miles per month / 20.4 miles per week
  • Total Runs – 157 runs / 13 per month / 3 per week
  • Total Time – 184 Hours / 15:23 per month / 3:33 per week
  • LIFETIME TOTALS – 33,763 total miles run / 5807 total lifetime runs / 4783 total lifetime hours run

2025 Mileage by month

January – 38 milesMay – 111 milesSeptember – 130 miles
February – 50 milesJune – 87 milesOctober – 91 miles
March – 88 milesJuly – 64 milesNovember – 96 miles
April – 95 milesAugust – 153 milesDecember – 57 miles

It’s December 27, 2025, and I have decided to listen to my knees for once and give them the break they deserve.  I’ll be taking the rest of the year off from running, hoping to let my sore knees recover a little before I start beating them up again in 2026.  Thanks, knees, you served me well this year.

I was hoping to improve on the 800 total miles I ran in 2024, and exceeded that goal by 260 miles, getting to 1060 total miles for the year. Passing the 1000-mile mark for the year is always the goal. Four races were placed on the calendar this year, with a return to an Ironman event and a new experience of gravel bike racing. I went back to Iowa again for one of my favorite races, and also back to the November 25K trail race to wrap up the season. Here are the summaries and links to the race reports:

2025 Ironman 70.3 Rockford Race Report – I hadn’t raced a half-iron distance triathlon since my first one at IM Muncie in 2014. When Ironman 70.3 in Rockford, IL, was announced as a brand new location for the half-iron circuit, I jumped on it as it is very close to home.  It was a hot 🥵 🔥, but I somehow survived.  After finishing, I was telling my wife I was done with this type of craziness, but I immediately signed up again the day it opened for next year.  

Finish strong, then collapse.

Little Apple Gravel Race 50K – Race Report – Other than in triathlon, I had never raced my bike in a bike race before, and when my local friend Jim suggested this local race, I decided to take the fitness I had left over from racing the 70.3 and try gravel bike racing.  I had a great time and will think about returning to this one in August.

2025 Broken Anvil Backyard Ultra Race Report – This was my fifth time at Broken Anvil BYU in Iowa, and it is always fun.  Managed 10 loops this year, matching last year’s total.  

2025 Paleozoic Trail Runs – Cambrian Fall III 25K Race Report – I had felt pretty good going into the race, but somehow hit the wall hard with plenty of race to go.  Thankfully, a gel my wife insisted I carry with me got me to the finish line in one piece.  

Coming into the last little bit of the race.

I was on the cusp of being in good running shape this year, but the injuries wouldn’t stay away. As I built up to the 70.3, I was hoping to go sub-6 hours overall and run a sub-2 hour half-marathon split, but the heat on race day derailed that plan. A couple of weeks later, I was running an easy five miles, and my right hamstring got painfully sore with about a mile to go. That set my running back, so I focused on riding my gravel bike and eased back into running. After the gravel race, I figured I’d better stay away from any sort of speed work as I built up mileage for the backyard ultra. I had made some early-season predictions that I hoped to go well into the night at Broken Anvil, but the lack of mileage set me back. Next year, I will try to focus on building more mileage and time on my feet. I want to take another crack at 100 miles, whether it comes at Broken Anvil or possibly a return to Tunnel Hill. I’m sure the wife will love reading that.

On to 2026 and Year 37 of running!

Probably Go For A Run

A couple of days ago, my coworker, knowing that I have my afternoons off, asked what I was going to do that afternoon. She also probably already knew the answer as well.

“Probably go for a run,” was my response.

“Really? It looks so cold and dreary outside.”

She knows that I run, and it shouldn’t be a surprise to her that my response would include a run in my spare time. But her questioning my commitment to running in what looked like less than ideal conditions was making me rethink going for a run. I had run seven miles the day before, and that day was exactly like today. Truthfully, I was already committed to running regardless of whether the sun was shining or not.

I got home, and as usual, I walked the dog around the neighborhood. I was feeling chilled, and was now thinking about maybe just going for a walk instead. Once back from the dog walk, I went upstairs and immediately changed into running gear. Sometimes you just have to commit to something, and this was one of those times.

I overdressed for the run – no surprise there – based on being cold on the walk with the dog, but since I was going at a slow pace, I was comfortable and not sweating too much. By the time I got home, I was glad that I had made the effort to go for a run. Most runs end with me patting myself on the back for following through on completing a run, especially when I really didn’t want to do it. I’ve always said that the hardest step of any run is that first one. I’m glad I took that step today. The run was really enjoyable. I’ll probably go for a run again tomorrow.

2025 Paleozoic Trail Runs – Cambrian Fall III 25K Race Report

  • November 8, 2025
  • 25K Trail race held at Palos Park, Illinois – Cook County Forest Preserve
  • 21st Place overall, 3rd in M60-69 Age Group
  • 2:24:23
  • Race Results

I was so glad to wrap up my 2025 racing season with this fall trail race again.  As I was running the early part of the race, I was thinking about how similar things were going for me from last year’s race, and that I could probably just cut and paste last year’s race report and just change a few things.  But the latter half of the race certainly was different than last year.

I don’t even know why I try to make a pre-race plan, because I never stick to it.  I had pre-run half of the course last week, and the rest this week, and my pace plan and how I felt during those two runs told me I need to dial it back from the start.  But did I?  Nope, gunned it too hard and would end up paying for it later.

Heading out with excitement and trying not to step in a hole.

The day seemed perfect for racing, maybe 45℉ at the start, calm wind, and the course was in really good shape.  The first mile netted me a split of 8:09, and I knew I would regret that.  But the hills soon came and forced me to slow down and rein myself in.  Once I got to four miles or so, I finally had dialed myself in and was on autopilot. 

After getting passed by other runners who had started slower than I did, I found myself running behind a guy running at about my same pace.  Blue-sleeved Guy, as I named him, would gap me a little climbing hills when he was jogging strongly up them and charging hard down them, neither of which I was able to do.  But I would slowly reel him back in on the flatter portions of the race.

As we got to the 7.75-mile turnaround, Blue-sleeved Guy hit the portapotty, and I went straight to the aid station to refill my water bottle.  I had seen in the pre-race email that Tailwind would be at the aid station, but oftentimes it’s diluted too much.  I asked the volunteer at the aid station if it was mixed to a good concentration, and he responded like he had been asked before, saying that most everyone had said it was spot on.  I trusted him, filled my bottle, and turned back to the trail.  I kept looking over my shoulder for Blue-sleeved Guy, but he never materialized.

Out-and-back courses give you an advantage to see how many are ahead of you and how many are behind.  I felt pretty good about seeing fewer faces heading out as I did after turning around.  I figured I was in the top twenty or so.  I settled back in and kept chugging away at the miles at a comfortable-hard race pace for me.  

I felt pretty good up until 11 miles into it.  I could feel myself starting to struggle.  A guy passed me around the 12.5-mile area and said, “Even the small hills are feeling like large hills now.”  I couldn’t have agreed more.  I told him that I was gassed, but I kept trudging along.

My mile splits had been holding steady, but at 13 miles, I hit the wall.  My wife, Kari, had said before the race started that she had put an extra gel in the zippered pocket of my hydration belt for me.  I honestly didn’t think that I would need it, seeing that Tailwind had been working great for me, but boy, was I wrong.  I was blowing through my hydration and was concerned that I would drink all of it too soon.  I reached in and grabbed the gel and ate it.  It would have been worse for me had it not been there for me.  It was a race saver.  

Coming into the last little bit of the race.  The trail was filled with beautiful fall foliage.

I started having some foot cramps, and knew that could spell trouble.  It was at the last two miles that I decided that the “race” was now just to get to the finish.  As I came off the main trail and onto the grass, I was passed by a guy who was my age, and I asked him if he wanted a sprint finish.  He said, “Sure,” and I chuckled.  I said, “I’m going to make you earn this.”  😄  But honestly, I couldn’t keep pace and was just glad to make him earn it.  The second year in a row that I was out-kicked in the final quarter-mile of the race.  Oh well, I guess that’s racing for you.

So dead and done with the race that I was stopping my watch even before crossing the mat.

Kari was awesome once again, taking pictures, making sure I had what I needed, and getting my very sore body back to the truck for the drive to Pop’s for some much-needed lunch replenishment. She ended up walking 8 miles of trails while I was out there punishing myself.

The slogan of this race is “Finish or Fossilize,” and I was certainly glad that I didn’t fossilize. Came close. 😄 Time to recover and plan out my race schedule for next year.

Changing Seasons

Fall is in full swing here in the Midwest, and I’m still chugging along. I have one more race on the calendar for the year, a 25K trail race in November, so I am trying to build a little speed while hoping I don’t reaggravate some dumb running injury. I’m also hoping to run over 1000 miles this year, something I didn’t do last year, only hitting 800. I’m confident I can get that done.

I had two decent runs this week, a 10.5 miler on Wednesday and a 12 miler on Friday. I was happy with both efforts, running them straight, without taking any walk breaks. Even though I am still running the A/C at home due to some lingering warm fall temperatures, both Wednesday and Friday were cooler than what I was used to. In typical “me” fashion, both days resulted in my overdressing for the run. You would think that in my thirty-plus years of running, I would know how to dress myself for running success. Nope. On Wednesday, I wore shorts and doubled up on top with a long-sleeve shirt covering a short-sleeve one because I was worried about being too cool. By mile two, I had warmed up nicely and was sweating heavily and cursing myself for not dressing smarter. Then I went and did the same exact thing on Friday.

It’s been a struggle for me year in and year out. Every year, I promise myself that this will be the year that I keep some sort of journal on what to wear for the weather to be comfortable. I neglect it every year.

Wearing layers is the smart thing to do, and that is something I don’t fail at. If you get too hot, you can take off a layer and put it back on if necessary. But it’s not just about knowing how many layers to wear; it’s also about wearing the right things, as well. When I started running in the late 1980s, there wasn’t any sort of industry-wide clothing for runners. We had cotton shirts, shorts, socks, and you wore what was comfortable. If you signed up for a race, you were given a cotton shirt. I wore them like badges of honor, even though they held on to sweat and became miserable. According to Google, Nike didn’t debut its Dri-Fit clothing until 1991, and it took a while to convert us running neanderthals. When tech fabric (generally made of polyester) became widely available, it made a huge difference in running for me.

This is a much younger me running the 1999(?) Jenny Spangler Trustmark Marathon in Lake County, IL. The shorts and top are some of my early tech running gear. I still have the shirt. I wore it on Friday. The hat was a cotton Univ. of Kentucky hat. Apparently, I hadn’t made the switch to visors yet.

It’s interesting to see how others dress when the temps get cooler. I saw a woman running the other day in shorts, a short-sleeve shirt, and an ear covering headband, clearly worn to keep her ears from getting cold. In the fall, when the temperature hits the 50s, people start wearing pants and sweatshirts. In contrast, on the same type of weather day in spring, they won’t be wearing anything like that, happily enjoying their runs in shorts and t-shirts. I guess going from cold to warm is an easier transition than warm to cold. The picture of me above was what I wore on a spring day. Looks like I was ready for the warming temps.

Well, since I don’t have a handy-dandy reference log to tell me how to dress perfectly for the changing seasons, I guess I will just keep changing clothes with the seasons.

2025 Broken Anvil Backyard Ultra Race Report

09/20/2025 ~ West Point, Iowa ~ 10 hours/loops/yards ~ 41.6 total miles

It’s my fourth time at this event, and it’s become an addiction. I love the backyard ultra/last runner standing format, and I love pushing myself to new distance goals. Broken Anvil is a great event, and if you’re looking to find out how far you can go, this is an awesome way to do it.

My wife, Kari, decided to join me this year – not just crewing, but also running – the second time for her, and my fourth here at Broken Anvil. We arrived on Friday night and set up our tent in the same spot we were in last year. We also set up our collapsible canopy next to it, as the tent can get warm. We spent most of our time with our chairs under the canopy in between loops.

Checked in Friday night.

The day was forecast to have some rain, and there was a little bit at the start, but then it let up for a few hours. Most of the midday, afternoon, and early evening was spent running in a steady light rain, with the occasional bit of heavier rain thrown in. Honestly, it didn’t bother me at all. When I run, I sweat, and the rain didn’t make it any worse. The temperatures were also mild, which helped keep the day manageable.

Morning sunrise in southeastern Iowa.

I was using my typical two-minute run/two-minute walk pacing plan from the start, and found that I was bringing up the rear. Most of the pack was finishing ten minutes ahead of me, if not more. But my pace plan has worked well for me in the past, and I kept chugging along.

On the second loop, it is not yet raining.

I made the switch to Tailwind this year as my primary hydration/nutrition, and it was working great for me. Gels tend to give me a sugar rush and then a blood sugar crash. Tailwind eliminated that issue, and I felt great on each loop of the race. I supplemented every loop with snacks in camp – pretzels, grapes, chips, a yogurt, bananas, etc.

Our camp setup – we spent most of our few minutes in between loops in the canopy.

As the guy coming in with less than 10 minutes to spare before the hour was up, I found myself worrying about anyone who was behind me. Sometimes they would squeak in under the cutoff, but I knew when I didn’t see them on the last out and back portion of the course that their day was probably done.

The field getting ready for the top-of-the-hour start.

Kari went out for the fifth loop, and she had been ahead of me for most of the loops for the day. It wasn’t long until I passed her, and then I became worried that she might not make the hour cutoff. I made it back to the tent, grabbed a couple of sandwiches, some chips, and refilled my handheld water bottle, and heard the 1-minute warning whistle. It was time to head back to the start corral for the next loop. Kari hadn’t made it back yet.

Kari and the rest of the runners were ahead of me, as usual.

But as the seconds ticked down, the runners ahead of me started cheering, and I realized that they were cheering for Kari, making it across the line just as Loop 6 began. Others were encouraging her to “Do One More!” loop (a sort of motto for this type of race), but she had collapsed on the ground. Now I had some concerns. I offered to walk her back to the tent, but she was having none of that and encouraged me to continue on with the race, insisting that she would be fine. I’m not sure if she crawled back or was dragged back to the tent, but when I returned to the tent, she said that others had assisted her in getting back on her feet, both literally and figuratively. When I came back in from that loop, she had changed clothes and looked refreshed. An impressive 20.8 miles, a personal best distance for her.

Sometimes hilly, sometimes flat – a little grass, asphalt, dirt & concrete.

I swapped to my backup pair of shoes when it was clear the rain was going to be around for a while. The pain I have been having at the top of my left foot made an appearance around Loop 4, so I popped a couple of Ibuprofen pills to take the edge off. Other than that, I had really no issues with strains, pains, chafing, or other issues that are typical for me. I used a product called Salty Britches anti-chafing ointment, and it performed really well. I would also add some Squirrel’s Nut Butter occasionally, as it was less hassle to apply, and to keep any chafing at bay.

Whispering Pines Trail is mostly dirt, pine needles, and tree roots, but it offers a definite walk break opportunity.

On Loop 8, I was getting pretty tired of running and was thinking of pulling the plug on the day. Loop 8 is a popular drop point in this race format, as it gets you an ultra-distance finish of over 50K. But I pushed myself back out there to the starting line to “do one more” loop. While in the corral awaiting the start of Loop 9, I met Matthew, who was wondering if he could join me for the loop. He was attempting his first ultra and was hoping to reach 50 miles before dropping. I advised him of my pace plan, and he was cool with going along with me at that pace. We chatted, and for the first time in the race, I wasn’t running mostly by myself. It was a relief not just to be in my own head for the first time. There were a few runners in the field like Matthew, who were there learning as they went. I am eight events into this type of race, and I am still learning as well.

Matthew and I paced through Loops 9 and 10, and upon finishing Loop 10, I decided that I had had enough. Matthew continued on and got his 50 miles/12 loops done. Pretty impressive. Well done! Also impressive were the runners who made it past 100 miles. The winner was Nick S., with an impressive 33 total loops and 137.5 total miles. The assist went to Keely Y., 32 loops, 133.2 total miles.

Out of the running and sitting in our chairs, waiting for the rain to stop. It’s tough packing up after 41.6 miles of running.

Kari and I hung around in the tent for a couple of hours, waiting for the rain to stop before tearing our tent down and heading back to the hotel for well-earned showers and some solid sleep. Another great experience at the Broken Anvil Backyard Ultra, and I hope to be back again next year.

RESULTS: 2025 Broken Anvil Race Results

POST-RACE NOTES FROM THE RACE DIRECTOR

  • 83% of the field completed the ultra-distance
  • 60 % of the field completed 50 miles or more
  • 100% of the field are badass humans
  • 3 out of the top 10 (distance-wise) were females (just got goosebumps typing that)
  • We had an age gap of 53 years from the youngest to the oldest participant (16 – 69 years young)
  • A total of 5,000 miles were collectively run during the raceThat’s like running across Iowa 17 times

NOTES FOR NEXT TIME

I am really fond of my 2-minute run/walk pace plan, but maybe I am a little too faithful to it. The goal is to get in before the hour, and I was doing that, but I was also not leaving myself much time to regroup for the next loop. I may play with a 3-minute run/1-minute walk, or maybe stick with 2 minutes of running and only 1 minute of walking. Lots of time to try it out.

Our tent is great, but it might be time to buy a 10’x10′ canopy for easier setup and takedown. It’s miserable having to try to get everything packed up after running 40+ miles.

Caffeine! I totally forgot about adding some caffeine into the mix. I had about 5 ounces or so of Coke at noon with my sandwiches, but that was it. I might have gotten an extra loop or two more done with some caffeine in me.

Photos by Austin Roe | Mile 90 Photography

PHOTOS FROM THE EVENT: Mile 90 Race Photos – 2025

Thanks for reading. See you next year at the Broken Anvil BYU in West Point, Iowa. I’m already signed up.

Gimme Shelter!

I gambled and lost. I thought that I could sneak in a 12-mile run before a predicted thunderstorm, but how dumb is that? You don’t just sneak in twelve miles. Two or three, maybe, but not twelve. However, that is what I tried to do, and I hoped that the radar on my weather app, which was showing nothing, was correct.

It was sunny as I headed out for this run, and I even put on some sunscreen before leaving – 😄. It was a warm and humid day, and I was contemplating which route to take: the shady out-and-back on the main trail, or the trail along the road that I had been running lately, which had a headwind. I found myself pondering what was more beneficial for a long run on a day like this. Would shade keep me cooler? Or would having a breeze blowing on me feel cooler? In the end opted for the breezy route and skipped the main trail because I’m getting tired of having bikes whizz past me. As you can see, getting caught in a thunderstorm was not even a consideration.

Storm or no storm, I was soaked by mile five. Sweat was dripping from my visor, and I had almost drained my water bottle dry. At mile 6.5, I stopped and refilled my water bottle, and could clearly see that the skies were no longer clear and sunny. But it wasn’t looking threatening at all, so I soldiered on.

As I got off the trail that runs along the roadway and hopped back onto the main trail, I heard my first little rumble of thunder. As I got to mile 8.5, I could feel a rain drop or two, and I decided that maybe I should stop taking the walk breaks and start hoofing it back in. At about 9 miles into the run, the thunder and lightning were now becoming very common. I could handle running in the rain, but the lightning was becoming very, very frightening! I knew that the nature preserve up ahead had some shelters to get out of the storm, and I hot-footed it there as quick as I could. As soon as I got there, the skies unloaded.

I sat down on a metal chair under this small shelter and thought that maybe that wasn’t the best place to sit. There was a guy walking up the trail, and I was waving him over to join me, but he had other ideas. Soon after, a runner that I see on the trail frequently also blew by my invitation to join me. I wonder how that turned out for them? It was pouring now, and the wind was blowing the downpour directly at me, so I got up and found the smallest dry spot that I could find to stay out of the rain. Between the temperature drop that accompanied the storm and the winds blowing misty rain at me, I was now starting to feel a little cold.

It doesn’t look like much of a storm, but it was angry while I was in it.

I spent about five minutes there, and when I could sense that the rain was letting up a bit, I decided I would be better off in the larger picnic shelter not far away. I took off, and the rains picked up again, naturally. Upon reaching the picnic shelter, I was met by a cyclist who chuckled at me coming in laughing. He wasn’t wet at all, and frankly, I was wet from sweat prior to this storm happening. But now I was wet head to toe, and I was glad to have a companion to wait the storm out. We chatted about bikes a little bit, and then he pulled out his phone and declared that the radar was showing that the storm was almost over. It had let up a little, and as he pushed his bike back to the trail, I figured that I could make it the two miles home fairly quickly.

I wasn’t a half-mile into the run when the thunder and lightning returned, and the rain started coming down hard again. I climbed the hill and decided to head under the canopy of the many trees. Being under trees in a downpour is useless, as I was getting soaked. As I watched the rain cascade down the paved path on the hill, I saw a frog joyfully hopping across to the other side of the trail. This storm is starting to become weird. After about five minutes standing there, I started getting attacked by mosquitoes, so off I went down the trail again, only to be greeted with more lightning and thunder directly over me. Back to the canopy of trees! I waited there for about 10 minutes and could sense the rain coming to a stop. I continued on toward home, hoping that my need for shelter was unnecessary. Upon getting home, the skies opened up again, and once inside, I was thankful to shed my clothes and jump in the shower to get cleaned up. I really didn’t want to get more wet, but a shower was needed after that trek.

I’m sure I have been caught in the rain before, but other than the downpour I endured during the 2018 Boston Marathon, and one time at Leon’s World’s Fastest Triathlon, when the swim was the driest portion of the race, I don’t remember a situation quite like this one on a training run. It was one for the memory books, for sure.

Little Apple Gravel Race 50K – Race Report

August 3, 2025 – Manhattan, IL – 50K Open Division

Results: 50K Open – Male: 24th out of 40, no official time listed

Watch data: 30.68 miles – 1:53:20 – 16.2 mph/ave.

I completed my first bike race today! Well, kinda sorta. Although I’ve raced my bike in numerous triathlons, this was my first cycling-only race, a 50K gravel race on a great day. There were 48 registrants in my division – the Open 50K, with many others doing longer distances, some requiring a license that I lack, and after today, have no desire to obtain one. Those people are in a different league.

I arrived early enough to find a good parking spot under a shady tree and picked up my number placard, which goes on the front of your bike. There was a table next to the pick-up area that had some fun trinkets and a sign near some stickers that said something like Team Dog or Team Cat – Choose wisely. I chose Team Dog and stuck the sticker on my number.

Even the dog thinks this might not be a good idea.

Looking fairly fresh just before the start of the race. Somehow, I missed my friend Jim’s call for a pre-ride group photo, but I still had a chance to get in a shot or two with people I had no idea who they were.

The course is billed as 88% gravel and runs through the farm areas of the southern Chicago area. The start is a neutral roll-out, where there’s no racing and is designed to get the group going without any incidents. A little after a mile, the race is on. I saw Jim and another friend, Dan, just before they started their 100K ride. Dan wished me luck and advised me to “stay between the ditches.” As we got rolling and started racing, we came to the first turn and the first section of gravel, and that is when I saw my first crash. The guy went into the turn a little too hot and wiped out. I was surprised to see him at the finish later on, looking good and in one piece. It looked to be a bad wipeout.

The gravel section is hard enough, but the course started heading uphill and into a headwind. It was at this point that I realized the packs of riders ahead would be tough to catch, and I found myself riding pretty much on my own, which I didn’t mind. This section was about five miles long, and I just kept focused on keeping a good cadence and finding the best line, usually the car tire-packed-down area of the gravel road. There were plenty of bike tire tracks to use as a guide as well.

I was finally catching up with some other riders and caught my friends Chris and Kristin, who had started strong, but I was finally able to pull them in. Chris rode on my wheel for a while, but then I pulled away. We were three Chris’s for a mile or two.

I had ridden the course a little over a week ago and remembered which areas to be cautious in. Someone nicknamed a section of very soft gravel the “Devil’s Gravel,” and that section had some white knuckle moments. Around 23 miles into it, I saw a second rider who had just passed me and another rider go down around a corner. His helmeted head hit the ground hard enough for me to gasp, but the gravel was so soft there that it didn’t seem to phase him. I saw him later on as well, and he advised that he was fine.

Right after the guy went down, I chatted up “Matt” and we started working together to get to the finish, and by together I mean, I got on his wheel and tried to hold on. When we finally got to a paved road again, it was I who took the lead and let him hang on for a while, but he was a little faster going up the hills. As we turned onto the final straight to the finish, we both pushed pretty hard, trying to catch the guy ahead of us. Somehow, I finished ahead of Matt, but I’m not sure if he was happy to let me go, knowing that there really wasn’t anyone challenging us from behind, or was out of gas and had no sprint finish left. Well, I gave it my best effort regardless.

Pretty dirty at the finish.

In all, it was a day of riding hard, being cautious, and enjoying a great race for the first time. I may have to do this one again!

2025 Ironman 70.3 Rockford Race Report

DATE:  June 22, 2025

WHERE:  Rockford, Illinois

RESULTS:  2025 Ironman 70.3 Rockford Results  BIB# 1385

I survived.  That should be in bold.  The day brought mid-90ºF temps with Real Feel temperatures in the low-100ºs.  Plus, Mother Nature decided to throw some tough wind at us today as well, and not in a favorable direction.  There’s a lot to unpack here, so let’s dive in.

TRAINING

When it was announced that Ironman was possibly coming to the Chicago area, I got intrigued.  I hadn’t done any long-course triathlons since 2021 and was getting a little burned out chasing the 100-mile ultra that I have yet to accomplish.  When Rockford 70.3 was announced, I signed up on day one.  I encouraged anyone else I could to join me, and was glad when my Gunner teammates Jeff and his sister Jan joined in the fun.  Numerous locals also signed up, too!  

I dusted off my copy of Don & Melanie Fink’s  IronFit Secrets for Half Iron- Distance Triathlon Success and followed the 16-week competitive plan.  Training went pretty well.  The spring was rather cool, and many training rides and runs were done with layered clothing, but overall, I put in the work I needed to feel prepared for the race.

I switched from using gels as my energy fuel to liquid fuels, opting for Tailwind and GU Roctane to fuel me.  What I liked about using liquid fuel is that you don’t seem to have the sugar rush and then blood sugar crash when using gels every half hour.  The energy level is more sustained, and you get the added benefit of staying on top of hydration because you are drinking your fuel.  

I felt pretty well prepared from my training until the weather watchers on the race Facebook page started predicting the weather.  It was not looking good.  

RACE DAY

Had no other choice but to accept the day that was given to us.

SWIM – 43:06

I had packed my wetsuit in my Morning Clothes bag to carry to the swim start to use if I could, but as I was leaving the hotel, I got a push message from the Ironman app that the water temp was 79.2ºF, making the race wetsuit optional.  I opted to leave the wetsuit in the car and use my swimskin instead.  The swimskin is legal to wear regardless of the temperature and is designed to help you glide through the water, but in reality, it’s just a security blanket for me.  

Jan, me, and Jeff waiting to get on the bus for the ride to the swim start.

I seeded myself in the 43-46 minute group, and it took 45 minutes for us to reach the water.  I jumped in and quickly got into a comfortable swim.  I had a few little toe cramps, but I worked them out and just kept pulling myself forward.  I was far right in the water, often swimming closely by the kayakers monitoring the swim, but I wanted to avoid contact and had few issues with it.  I knew that there were three bridges to go under and kept an eye on those.  I could have swum a straighter line, but was happy to get to the Swim Out in good shape.  The much-hyped current-aided swim for this event was non-existent.  I felt no current assist with it at all, and my 43-minute finish time is right where I expected my finish time to be.  I was happy with my swim.  

TRANSITION 1 – 8:35

Most of my solid running for the day was from swim out to transition.

Out of the water led to at least a 1/4-mile jog to my spot in transition.  Upon getting there, I grabbed a towel and got my feet dry.  Then I applied some anti-chafe to my feet (which was beneficial on the run), got my helmet and sunscreen on, and then headed to Bike Out.

BIKE – 3:28:27

I had pre-rode the bike course a month or so earlier and made mental notes about my effort during the various sections.  Today, though, the wind direction changed most of my expectations.  We had a tailwind heading out, which made that climb north much faster.  I started a little too strong and kept telling myself to dial it back, which took me about 5 miles to accomplish before settling in.  My 20-mile split time was about an hour, so 20 mph was quite a good time for me.  

Then we headed west, and it became more difficult.  I was starting to suffer and came close to hitting the wall around halfway, but I slowed down a little and kept drinking the liquid nutrition.  I also opted to up my electrolytes by taking a salt capsule every hour.  I’m sure that helped quite a bit.  I was sweating the whole time and kept an eye on that.  I stopped at the second and third aid stations to urinate, and I took that as a good sign about being hydrated.  I can usually get through 50 miles on just three water bottles, but I doubled that intake here.  We were all drinking extra water.

I saw lots of people walking their bikes uphill, but I just spun up them.  Only one hill on the backside of the course made me work really hard, but the downhill afterwards was always a welcome recovery.  I hit 30+ mph several times, maxing out at 36 mph on one downhill.  

Finishing up, wondering how many matches I had burned. I burned a lot.

I was feeling pretty good coming into T2, and I was happy to be two-thirds done with this sauna triathlon.

TRANSITION 2 – 8:45

I took time to add more sunscreen and wash my face and head off, trying my best to cool down with the hot water I had in transition.  Oh well, off to walk on the surface of the sun for 13 miles.

RUN – 3:00:31

According to Ironman, athletes may run, walk, or crawl. I started with a walk, hoping not to crawl.

I tried to run when I started the run portion of the race, but it wasn’t long until my body said not to.  The first section of the run course was the worst when it came to heat.  Other than the breeze across the bridge over the river, it was stagnant, and the heat from being exposed to the sun on the blacktop made me walk most of the first three miles.  Some portions of the course were just brutal.  The best portion of the course was through a very nice neighborhood that someone on the Facebook page nicknamed “Sprinkler Alley”.  These people were in the street with their hoses and sprinklers, offering people a chance to stay cool.  I didn’t skip a single one of them.  Everyone ran that course thoroughly soaked with sweat and water.  Lots of squeaky and squishy sounds were coming from the shoes.  

I had had it with Tailwind and switched to taking Coke at the aid stations and sticking with ice and water.  Most of the ice went into my trisuit and visor, and some I melted in my mouth.  

My mood/energy/pace was picking up as I came through to end the first lap and continue on to the second lap of the run.  I tried to jog longer and at least jog from aid station to aid station, but I needed another break along the path that runs along the river.  This was a hot section of the run course for me, but the “Sprinkler Alley” area followed along soon, and I was getting a boost from being closer to the finish.

I jogged through the finish chute with a smile on my face, high-fiving some crew and fans along the way.  So relieved that the race was done for me.  

Finish strong, then collapse.

TOTAL TIME:  7:29:24 / 1274th  place out of 1692 / 34th place out of 47 M60-64 age group

Currently, the results show 1692 finishers.  There were 2,700 actual registrants, and with an estimated 20% DNF rate, that’s over 1,000 people who either did not start or did not finish.  

Not the best performance for me.  Pre-race, I was shooting for a sub-6-hour finish.  HA!  Well, that wasn’t happening on this day.  My strongest event, the run, was the one I had struggled most with, which is not really surprising, as running heats you up the most.  I’m just glad to have gotten through this tough day.  I was wondering at the beginning of the run if I was even going to be able to keep moving forward and finish.  But I survived and will proudly display my medal.

Thanks again to my wife, Kari, for putting up with me and these shenanigans.  Standing around in 90º+ weather for eight hours is not fun.  Thanks also to my son Ben and daughter-in-law Emily for coming to cheer.  It was much appreciated.  Jeff’s crew included his wife Jill, son Charlie, and his girlfriend Kelly, who also provided much-needed support.  Thanks to my Gunner teammates, Jeff and Jan, for joining me in doing this race.  Thanks for buying us dinner, Jeff!  And thanks to Karen for joining me on the course pre-ride and at the race.  Everyone from the area seemed to survive the day as well.    

Overall, and after a day or two of reflection, I actually enjoyed the event. Rockford was an awesome host city, the volunteers were spectacular, and I am seriously considering doing this race again next year. Hopefully, it will be a little cooler, and I can coax some more Gunners to join in on the fun.

Oh Boy, Here We Go

IRONMAN 70.3 ROCKFORD TRAINING – WEEK 15 & 16 WRAP-UP – June 16, 2025

As I wrapped up a really bad Week 15, I got busy focusing on this last week of training before the race on Sunday.  Commonly called the “taper week”, this should really be called “madness week.”  It’s pretty common to have some pre-race nerves leading up to the race, but man, everyone is freaking out, including myself!

Let’s rehash last week.  I was up in northern Wisconsin and went out for my Tuesday run, an 8-miler, that has been the norm for the past several Tuesdays.  It was cool, and I felt like pushing the pace a little bit.  Welp, just before I got to the 6-mile mark, my right hamstring stopped me in my tracks.  Yup, I pulled a hammie and had to walk the remaining two miles back to my truck.  I got a little down thinking that I had just jeopardized my run race for the 70.3, but I spent the rest of the week laying off running, and it seems to be doing better.  It didn’t affect my cycling at all, nor was it bothering me while working around the yard.

Then I tried an open water swim.  I haven’t done an OWS in over a year, and silly me thought that it would be old hat.  Nope.  It was cold in both the air and the water temperatures.  It was brutal, I’m talking the mid-50s.  Garmin actually gave me the “Arctic Swim” badge after I hit stop on my watch.

A Garmin badge I never wanted and never intended to earn.

I started too fast, and quickly was out of breath.  Fortunately, my wife Kari was kayaking alongside so I could take a break if needed.  I took three, or maybe four, I don’t remember because my brain was frozen.  My planned mile-long swim lasted 866 yards.  It was not the confidence booster that I had hoped for.  However, my coach-wife and I discussed it and tried to make it a positive experience instead of focusing on the failure.  I was reminded that I need to start slow, very slow, and get myself under control.  A lot of the high heart rate and being out of breath was due to the cold temperature, and my just not being able to focus on slowing down.  But, I definitely won’t have to worry about it being that cold on race day because it’s predicted to be 94 FRICKING DEGREES FARENHEIT ON RACE DAY!!!

Oh boy, here we go again with another triathlon in miserable heat.  Fortunately, I have experience in that area.  I was a proud finisher of the 2019 Ironman Chattanooga race, a day that was in the mid-90s with a heat index in the low-100s.  Somehow, I got through that non-wetsuit swim and the very warm ride and run.  Maybe I should re-read that race report: 2019 ​Ironman Chattanooga Race Report  I’m sure I can survive this as well, that is, if I just THROW AWAY THE WHOLE RACE PLAN THAT I HAVE BEEN WORKING ON FOR 16 FRICKING WEEKS!!!

Yeah, the plan was to go sub-six hours; have a great current-aided swim, not dawdle in transition, rock the bike like I stole it, then dial in for a sub-2-hour 1/2 marathon.  Best laid plans…   Now I will shift my focus to wrapping my head around the swim possibly not being wetsuit legal, and dialing it back on the ride and run to avoid heat exhaustion.  And pray that my hamstring doesn’t flare up.

Time to stop focusing on what I can’t control, and get my mind in a better place.  I’m off to sort through 13 years of triathlon related crap I own to figure out what I need to bring to the race.  Next post will be the race report!  Stay tuned.