Race Report: Ironman 70.3 Vineman


“You’re racing ghosts.”

Slusser Rd., lined by scorched grass and awash in the California sun, was relatively sparse with competitors this early in the race, so the purplepatch support crew at 10 mile popped in my tunnel vision. The encouragement the coaches and athletes produced was tangible, but perhaps none more than that phrase I heard Matt Dixon yell, “You’re racing ghosts.”

It perfectly captured the reality of the day: Team Every Man Jack had 15-20 athletes starting in waves from 7:10 through 8:30 a.m. Which meant that roughly 20 guys were capable of winning an Amateur title at Vineman 70.3 and I had no idea where any of them were. But Matt’s words meant he knew that I was in the hunt for that Amateur title, and for the last 3.1 miles, I ran like hell to secure a PR on this course, Amateur runner-up and Age Group win.


Wine country is home to arguably one of the most competitive 70.3s on the circuit, Vineman. Athletes begin by turning the serene Russian River into their own brand of washing machine for a 1.2mi swim, before heading out on a diverse 56mi bike ride through redwoods, vineyards, flats and climbs, all topped off with a 13.1mi run through the vineyards in the exposed sun. The caliber of athletes in both the amateur and the professional field is world class so race day is the truest test of  ability. I was gunning for this race.


Vineman 70.3 Race Chart

I have to say, I made some really solid additions to my pre-race play list. If you can’t get amped hearing Thunderstruck at the start line of a race, check your pulse. Said playlist got me fired up and focused as I warmed up and those tunes played through my head during the race. So on the scale of Kenny G. to breaking the ROCK meter, I heated up as the race went on, like Freebird, but far less obnoxious and definitely less…Confederate.

THE SWIM 1.2mi

Full Swim Photo Album | Song: Thunderstruck by AC/DC

Vineman swim

Image credit: Ironman

5_m-100727249-DIGITAL_HIGHRES-1357_002525-2340244 - Copy

Roka errthang: Cap, R1 goggles, Maverick Pro wetsuit

Race morning saw zero clouds, which meant a sighting would be challenging with the sun right in our eyes on the way out. I discussed sighting strategy with teammate C.J. Olson before the gun went off. When it did, I saw C.J. take off more quickly than I could cover, so I settled into a group hoping that together we could sight on the buoy line. At the turn around, the depth of the water is less than 3 feet deep and I bottomed out. I stood up and dolphin dove until I got to a depth I could continue to swim. Looking back, I probably should have clawed the ground and kept “swimming” (crawling). My return line was a bit wider as I shot straight for the swim exit. As I’ve learned more about the river currents (they’re strongest in the middle), I probably lost some time. I got out of the water in 31:18. Slow, especially for Vineman, but I was feeling fresh and ready to ride my bike hard. And if I learned anything at Raleigh, it’s that I can overcome a poor swim.


Strava | Full Bike Photo Album | Song: Robot Rock by Daft Punk (#helmetgoals)

The bike was the tail of two halves. Or should I say, four quarters. The first half of the bike stared down the barrel of a strong headwind and was quite challenging. Much of the second half benefited from these conditions with a fast and fun tailwind, allowing me to really get into a groove. But this year, inspired by how college basketball teams, specifically the Xavier Musketeers, handle games by breaking them up into “4 minute wars” (TV timeouts are called at the 16,12,8,4min marks in a half), I’ve been breaking my bike into four 14mi wars. I have a time goal for each quarter of the course and I work like mad to hit it, then focus on the next one. Here you can see how the wind really affected the first and second half of this course respectively:

Bike 14mi wars.emf

Note: On pace in final “war,” but was slowed up in no-pass zone in final mile


Felt IA, ENVE wheels and Rudy helmet cruising through the Vineyards

I made sure to fuel and hydrate with GU hyrdation mix and gels to set up a good run, so when I hit the racks and barely any other bikes were there, I knew there was nothing left to do but strap on my Saucony Fastwitch 6 shoes and go. Fast. Because my teammate Jackson Dovey was out there doin’ work and it would take a solid effort to compete.

THE RUN 13.1mi

Strava | Full Run Photo Album | Song: Backseat Freestyle by Kendrick Lamar

Jackson started 6 minutes ahead of me as our Age Group was split in two due to size. I knew that there was no chance I would physically catch him unless he crashed and burned, so I’d keep my eyes open for any cue as to how far behind in “race time” I was. Regardless, I had to run fast.


La Crema vineyards

Just like 2014 I headed out in 5:30s. While it felt comfortable, and was assisted by the cheers by Dani and the V squad, I reeled it back to be conservative, settling into 5:45s and then 6:00s at the first grade uptick. Vineman is sneaky hard because the entire course is rolling. So while there is no “marquee” climb, it’s punchy. To my satisfaction, my body felt at home as I powered the ups and let it fly on the downs, with very little variations in pace. Whenever I crept up to 6:10, I forced it back down by tightening up form and focusing on turnover.

At mile 7 the course goes up into the vineyards of La Crema winery for a one mile loop in what feels exactly like a cross country course. I smiled, enjoyed being in my element, and embraced the pace needed in the second half of the run. As I passed an athlete, he told me Jackson was a quarter mile ahead of me. While grateful, I knew that time and distance gaps given on the course are usually a bit off, so I took this as Jackson was up to a mile ahead of me.

Once I left the vineyard I saw Jackson returning from the out and back and estimated he was a mile ahead of me. Quick math: 1mi=6minutes – or the exact amount of time Jackson started ahead of me. Meaning that, as of mile 8, we were effectively running shoulder to shoulder…while being a mile apart, if that makes sense.

FLASHBACK: 2015 Ironman World Championship in Kona Hawaii, I watched Jackson Dovey cruise through the field and finish 9th in his age group IN THE WORLD. He’s an incredible athlete and I knew that if I didn’t run even harder for the last 4.5mi of this race, I would have a hard time catching him.

Jackson @ Kona

Kona: Jackson was 9th in the world in his division

25_m-100727249-DIGITAL_HIGHRES-1357_034850-2340264But that’s the beautiful thing about this team. I watched almost all of our guys do this in Kona last year, so they were all coming, it was just a matter of when. Thus execution was critical for a strong overall finish. In order to do this, your aid station game has to be as strong as your pace, so I guzzled Coke or Red Bull at each, drenching my Louis Garneau Coldblack kit and Boco visor with ice water to stay cool.

And that brings us back to mile 10. With 3.1mi to go, I get a boost from the purplepatch team and dial the pace a notch further for my fastest mile of the day. For some reason I remember the final two miles being entirely downhill. Turns out this isn’t the case. The Cleveland Cavaliers were a source of inspiration – in order to be champions, they had to fight. Effort was maximum output at all times. Nothing is given, everything is earned, and imagery of them diving for loose balls and playing to fatigue in Game 7 looped in my mind, powering me over the hills. My fastest GAP mile (grade adjusted pace) was the final mile, 12-13 as I kicked to the finish.

Down the chute, I heard my family yelling for me to go and figured it must have been really close. As I crossed I looked at Jackson with a “What-the-hell-just-happened-that-was-so-freaking-hard-omg-nuts” look and gave him a big hug. I didn’t know if I’d beat him or not, but in that moment I was just really thankful. Thankful for the opportunity to race with him and push each other to our limits; thankful for this team and all that we put in, to get this out of each other on race day.


Thankful for the opportunity to race against this guy and the rest of our squad


It turns out the effort was about :30 faster than Jackson. In a ~4hr race, that’s incredibly close. A PR for me on this course, 4:12:35, meant an Age Group win, 2nd Amatuer (teammate Jake McDonald taking the title by 2min – stud!) and 18th overall, including many of the worlds best professionals. I’m beyond encouraged by this finish and thrilled that the work to date materialized.

ResultsVineman finish stats

But like most athletes, I dug into takeaways for improvement. While I’ve really developed my bike to be competitive while maintaining a solid run, the swim is miles away from finishers 1-17 ahead of me. The great swim project will continue and teammates have been generous with their tips, especially Savage. On the bike, I think the gains will come from two areas: staying the course on the purplepatch training plan and aerodynamics. Teammate Jesse Moore has provided great insight on the latter as it pertains to position.


I’M COMING HOME! My next race is Ironman 70.3 Ohio, which takes place in Deleware just a short drive from where I grew up. Hometown crowd, home cooked meal, sleeping in “my room” – can’t wait. See ya on August 21st, Ohio!

After that the plan is to finish the season at Ironman 70.3 Santa Cruz on Sep. 11 on the classic Big Kahuna course.


A big thanks again to Dani and my folks for a great weekend at Russian River and for all the support. To the D’Onofrio clan for having us over on Friday night for dinner – Kathy, you’re culinary skills are off the chart! Always good to spend time with the fam. Team EMJ, I’ve said enough – good work fellas. Purplepatch for having me ready to execute. All of our sponsors for provided the best gear – I legitimately race faster with this stuff, thank you!

See ya in O-H…!

Race Report: Ironman 70.3 Raleigh

10_m-100722382-DIGITAL_HIGHRES-1293_002908-1533578As I plodded along in the Raleigh sun, my stride shortened, shoulders hunched, pace crippled, I stopped running and ask myself, “What the %#@& is this?” The humidity had overcome me and to put it plainly, it really just sucked. I’d become weak and feeble in the fair Cali weather.

That was 2013, a training run during the wedding weekend of my friends Joey and Kerrie. Almost three years later, three things were the same and one was different:


A month earlier I raced in St. George and registered my first “Did Not Finish” after freezing on my bike in sub 40 temps and rain. After some thought, conversation with coach Matt Dixon and some full-court press by Meredith Kessler, I decided to call up Joey and see if they still had room for me. Operation “Bounce Back, Thaw Out” was on.

I was ready to put the fitness that I’d built for St. George to the test, only to be totally laid up for a week and a half before the race with the gnarliest of mega colds.

Race Prep Training Log

My prep before race weekend included less than 2 hours of activity in over a week

It’d be a lie if I said I wasn’t less than optimistic. But thanks to the constant reassurance of key individuals (thank you), I kept my head straight and toed the line ready to give my best, whatever that was on that day.


The chart in my last post got some positive feedback. Obviously people value the in-depth analytics that went into it and really, just appreciate science. So I’ve brought it back, but in light of my beloved Cavaliers fighting for their lives in the NBA Finals, I’ve adjusted the scale a bit:

Top: You’ll notice the top end of the scale is this amazing human being. Animal. That’s when I’m feelin’ great.

Bottom: At low end the scale, we have a Draymond Green kick, which if you ask Timmy, Adams, Kyrie, KD, Russ or Brewer, can’t feel good. Zero = a size 15 to the gut on this chart.Race ChartThere are 33 things I felt worth calling out in this race. You might disagree, so I’ve bolded the race-story critical ones.

race chart key

Post Script (33.1): It turned out the guy had started before me and wasn’t racing me for the same finishing time, but we really did push each other to the end.

As I gulped down my 4th bottle of water in as many minutes at the finish line, Joey and Kerrie came up to congratulate me. I was happy to have laid it all out there, but was a bit subdued and winged a bit about my slowest ever swim and run. It was then that Kerrie pulled out here phone, refreshed the results and told me that I won my age group by 2 seconds

I was genuinely shocked. Because of the wave start, there was no way for me to have known this. I seriously thought I tanked. It wasn’t the day I know I could have, but it was a hot, long day for everyone out there and I managed to pull together a division win with focus on the bike and by sheer will on the run.


Had the last 800m not been a track meet, I likely would not have gotten the division W. I learned something that day. I guess I should say, I re-learned a lesson that each race I’ve ever done has taught me. I always have more. WE always have more. That 2 seconds was the difference between me pulling up and coasting to the finish line instead of out-sprinting. The difference of being focused in transition 1 vs. being rattled about my swim. The difference of focusing on gearing and hiding from the wind on every one of the 56mi cycled between the lake and the city. The difference between listening to the reasonable Mike on my shoulder at 7min/miles and swatting away Devil Mike.

Whether in a race or in life, when you think you can’t go any further or any faster, turn off your mind and do it. You’ll surprise yourself when you in fact do it. And pain only hurts.

And now, I return to earth with one of my patented “Worst Race Photo-Taker of All Time” gems to kick off some race pics:

The final sprint, as ugly as it looks.

The final sprint, as ugly as it looks.


The Roka Viper swimskin gave me a fighting chance in the non-wet suit swim. The Roka R1 Light Amber tint goggles were perfect for a cloudy morning.


Aisu in all it’s glory. Felt IA, Enve 8.9+Wheelbuilder Disc Cover, Louis Garneau one-piece kit, Rudy Project Wing 57 helmet+visor, GU in the bottles.


A happier time on the run. Floating in my Saucony Type A5s. QUICK. Boco visor kept Carolina sun at bay.


Massive thank you to team EMJ, sponsors, purplepatch coaching, the Albrights and all my friends and family for your support! Definitely a team effort to bounce back from St. George.

See you all at Vineman! -MV


Ironman 70.3 St. George: The Anatomy of a DNF

I’m putting St. George in my rearview mirror. (Note: Photo DEFINITELY not representative of race weather)

Sometimes everything comes together and the race that you’ve been gunning for goes off without a hitch. And it’s beautiful. Other times the weather goes from 90 degrees to 39 and the percent chance of rain goes from 3 to 100*. And it’s freaking miserable.

That was the reality this past weekend at Ironman St. George 70.3. Now it’s well documented that I don’t do very well in the cold . Ok, that might be a bit of an understatement. Really. But on this day, a level of cold so deep, so overcoming found its way into my core, that I found my way into the arms of a police officer under a bridge.

I’ve always said a DNF (Did Not Finish) wasn’t an option for me unless means outside of my control truly prevented me from crossing the finish line. And at times, I’ve even projected that stance on the decisions of others not to finish. Just being honest. But here I found myself pulling the chord for the first time in a race, while guys I train and race with finished – and finished well!

So I thought I’d dive into The Anatomy of a DNF** to give some color on how things played out and why I felt I made the right decision…perhaps for my own benefit as much (or more ) than for a good blog post.

IM 70.3 St. George Anatomy of a DNF_2

Here in this super scientific chart, you can see how for most of the race (#s 1-4), I was feeling pretty good, all things considered. Even when things got tough at Red Hill and its descent (#5) and really tough in Ivins (#6), I was focused on ignoring all discomfort and riding hard. Shortly after a scare with a negligent car (#7), I turned into Snow Canyon (#8).

The worst five miles in my life, that’s how I would describe climbing this desolate, baron canyon (#9). I distinctly remembering sweating profusely last year because the 90 degree air was still and smothering. This year, I felt the most bitter cold I’ve ever experience – 39 degrees and with the windchill it must have been freezing, all with an incessant rain. My pace slowed to a crawl (120 Watts below my average), all while trying to ride harder to warm up (#10) and I could not respond as guys passed me. For the first time in my adult memory, I fought back tears of pain.

Finally the climb was over and it was onto the descent. Whatever pain and discomfort I experienced in the canyon paled in comparison to those three miles at 35mph, arms locked, unable to move from my aero bars and onto my breaks, as the rain pounded my visor blurring my visibility. As guys I’d passed miles ago went by me, I ignored the first police officer I saw thinking, “If I can just get to transition and start running, I can warm up. Don’t quit.” But the fast speeds only made my body colder and completely prevented me from controlling my bike.

I arrived to a bridge and somehow stopped my bike at a policeman on a motorcycle. He realized quickly I was in bad shape, unable to stop shaking, and radioed to the policeman in a vehicle that I’d ridden by. He asked if I was quitting for the day. I hesitated for a moment only because I didn’t want to hear myself say it, and through the severe shivering, nodded my hung head yes (#11) as he radioed my bib number in as a DNF.

After the other policeman arrived, they told me that I could sit in the back of his car to warm up, but I legitimately couldn’t get off my bike. My body was frozen and as they lifted and pried me from the bike, all I could think of was:

wile e coyote frozen

In that moment, as I shivered violently in the back of that police car, in my Rudy Project Wing57 aero helmet because I couldn’t take it off, I knew this was the right decision. I wasn’t quitting, my race was done. My body went as far as it could. And I have zero regrets.

I was soon joined by Christine, a pro that had also dropped. We shared a blanket and her parents were kind enough to come out and get us. Walking back into town with my bike, I heard my name being called from a store front. There, teammates Ryan Linden and Mark Graham stood in mylar blankets, having made it out a half mile into the run before the shivering became too much to handle. We watched as the brave souls headed out onto the run to continue facing the elements. All I could think was, “What a bunch of BAMFs.”


While I’m certainly disappointed to have been so ready to race at St. George only to drop, I’ve moved forward. It’s weather and last time I checked they don’t do triathlons in domes. I’m looking forward to my next race and know Purplepatch and Team EMJ will have me ready to rock. I just need to figure out what that is, as I would like to put some of this training to use before Vineman in July.

Thanks to my teammates, sponsors, friends and family. Appreciate your support leading up to and concern through the race. Live to fight another day!



*Aside: I forecast business things for a living and can I just say that I wish I could be wrong by a spread of 97 points on something and keep my job? Weathermen, man…

**Per me, on May 7, 2016, in St. George, Utah