After bad luck, crashes, and mechanicals in the first two big stage races of the year – Redlands and Gila – I was over it. I didn’t want the pressure. I didn’t want the nerves. I didn’t want to ‘race conservatively’ for four days, only gunning for a result on the fifth when (hopefully) everyone else was tired. At Cascade, I wanted to race my damn bike.
My coach and I devised a plan: I’d train a little harder than usual leading into the race. I’d smash 5-hour days, VO2 Max intervals, and 1000 TSS weeks right up until just a few days before the race. Prior to Redlands and Gila, I had tapered for almost a week, riding two hour spins and barely creeping above Zone 1. The worst.
But this time, it was different. I did a huge ride just three days before the race, a three-hour smash session up and down Mary’s Peak, a 3,000-foot climb just outside of Corvallis, Oregon where I was staying with family. I went hard that day, riding mostly in Zone 2 and 3, before doing 2×20-minute intervals on my second time up the climb. By the end of the day, I racked up over 7700 feet of climbing in 56 miles, and finished with an average of normalized power (NP) of 278 W. Coincidentally, this would be almost the exact intensity that I’d race the stages of Cascade.
My dad and I drove in to Bend the day before the race, and I pinned up my numbers with anxious anticipation, expecting a chaotic first stage on the new Tumalo circuit race course.
Stage 1 – Tumalo Circuit Race
Time: 2:18:22
Distance: 62.3 miles
Place: 31st (0:10 behind winner)
This year’s Stage 1 featured a new course: 15.8 miles of rolling Tumalo roads, punctuated by a sharp 5-minute climb, and featuring two “gravel” sectors (“gravel” is in air quotes because every “gravel road” is different, as we will be see in Stage 3). The first of the gravel sectors wasn’t bad, just about a mile long with enough smoothness in the tire tracks to make it comfortable. The second sector was gnarly: over 2 miles of rough gravel road and lots of dust, finishing with a 150-degree, uphill corner, the top of which was at 1k to go. It would prove to be decisive.
I rolled around before the start looking for somewhere to warm-up, but there was no other option than the gravel road which we would finish on. I didn’t get any efforts in, so I was surprised when I felt good right off the start line. We hit the base of the climb on Lap 1 and the field blew to pieces. A group of maybe five had attacked on the first half of the climb, and when a punchy climber from Aevolo hit out on the next steep section, I decided to follow. I went pretty deep to get across, but when I saw that we had a gap on the field, I knew it was worth it.
In an odd set of events, close to 20 riders bridged across in small groups over the next few kilometers, creating a front group of GC contenders that was more a split than breakaway. I was happy to be in the group, and not have to worry about chasing behind. I rolled through easy, as did the rest of the group, but our lead was never more than 30 seconds. By the end of Lap 1, it was all back together.
The break of the day formed soon after, and the field rode in a *slightly more controlled fashion for the next 50km. I was expecting attacks to fly on the last lap up the climb, but the most serious ones never came. A few riders put in some strong digs, but no one ever threatened to break away. With the early break all but caught, just a few seconds up the road with 10k to go, it looked like it would come down to a field sprint. But then, at 5k to go, chaos.
The rain, which had been lightly spitting for just a few minutes, suddenly became a downpour. In an instant, the road was soaked, and when the field bottlenecked at a narrow bridge, I nearly went crashing into the riders in front of me as the water was slow to clear from my rims and I could barely brake. It was a heart-in-mouth moment, but I didn’t have time to think; we had just entered the final gravel sector, and the wind whipped gravel, dust, and dirt water into my gaping mouth as I struggled to hold the wheel in front of me. After a few brief seconds of hail, the gravel was suddenly dry; the second half of the final sector was untouched by the highly-localized rainstorm. I watched the chaos of the uphill U-turn from thirty wheels back: riders unclipped, yelled, and slid out in the dusty gravel as others remounted cyclocross-style on their bikes. I picked my way through the chaos at a pedestrian pace, which left me off the back and sprinting up to speed as teams lined it out for the field sprint. Barely a minute later, I rolled through the finish line in the second group, 10 seconds down on the winner. At the time, I thought nothing of it – 11 seconds would be inconsequential after the next four stages which included 300 miles and over 18,000 feet of climbing…
Stage 2 – Painted Hills Road Race
Time: 4:10:48
Distance: 99.4 miles
Place: 9th (1:42 behind winner)
Ninety minutes outside of Bend, we lined up at the Ochoco Ranger Station in the absolute middle of nowhere – seriously, we hadn’t seen anything even resembling a town in over 50 miles. It was a cold start, with nine miles of gradual downhill before we hit the first kicker. It was just a two-minute effort, but my legs and lungs burned so much, while sitting last wheel in the group too, that I was seriously concerned about how the rest of my day might go.
After an hour of easy riding – like seriously, I was barely pushing 110 W – we approached the “town” of Mitchell off a long, highway descent. The wide roads and lack of corners made 50 mph feel fun, until it started raining halfway down…
The temperature was dropping, and riders started going back to the team cars for their rain jackets. I thought of Connor Dunne, an Irishman riding the Giro d’Italia who had been posting daily reports in the Independent. I read them every day, and many of his recent entries focused on the bitter cold and rain that had plagued much of the three-week race. They were his most miserable days on the bike, ever, Dunne said. He contemplated peeing himself on one of the rain-soaked descents, just to try and get warm. If the rain continued for the next four hours through the Painted Hills, I, too, was considering it.
We rolled through rain-soaked Mitchell without incident, and turned onto the first KOM climb of the day. It wasn’t a horribly long or steep effort, but the cold rain had sapped much of the energy from my legs. I also knew that immediately after the climb, we started a fast and technical descent that, especially in the wet, could cause some serious splits in the peloton. And of course, there’s the danger of crashing too. I crested the climb around 12th position, lined up behind the Floyd’s Pro Cycling and Aevolo teams, whose riders must have been thinking the same thing. I hung on for as long as I could, but when one of the Aevolo rider’s bikes started making an awful clicking noise, he started opening up gaps in the corners. Lacking the courage to come around him and lead the group down a wet descent, I also was getting gapped. By the bottom of the downhill, I was in the second group on the road, and the peloton had split into pieces, just as I had thought. But with over two hours of racing to go, the front group sat up easy and it was all back together. Whew.
The next climb was a long one, 40 minutes up a steepening grade, with several sections that made it hard enough for the group to become single-file. I crested the climb in good position, feeling good, and nowhere near my limit. The next descent was fast and straight, and at the bottom we would start the 3-part climb to the finish. Each stair-step was progressively shorter, albeit only slightly. Roughly 15 minutes, 12 minutes, and 10 minutes apiece, with short sections of downhill in between; it was going to be a hard final hour of racing. As we hit the bottom of the first climb, I was pinned doing 500 W and barely holding the wheel. We sprinted over steep pitches, 600 W at a time, before settling into a 380-390 W “tempo”. In less than five minutes, the peloton went from 70 riders down to 15. I was in the front group, but I only lasted five more minutes. As we neared the top, attacks started flying and the group split again. I ended up in good company, a group of 8-10 riders who were all willing to work together to catch the front group on stair-step #2.
Our group flew down the descent, and rolled the first kilometer of the next climb hard. And then, just as our group regained contact with the front, the attacks went again and we got dropped. Again.
In that moment, I don’t remember anything. My memory tells me that we regained contact with the group, and I was standing on the pedals, pushing hard but comfortably. Then, my mind draws a blank. The next thing I knew, I was on the front of the second group, pulling these riders along while the front of the race was riding away from me. I wasn’t going that hard – looking back at the data, I hit a max heart rate of only 176 bpm in this moment; on the first climb I was holding 184 bpm when I got dropped, and on the last climb I hit 182 bpm for the finish. When the group split again on the second climb, I was… I don’t know. Distracted?
Over the next few kilometers, I pulled hard, trying to limit my time losses to the leaders, and still going for a Top 10 as I believed the front group was only a handful of riders. I felt strong, and as fewer riders continued pulling through with me, I could tell that everyone was getting tired.
I wanted to win out of this group, and so on the last climb, I needed to go for it. I hadn’t pre-ridden the course, but I had the stage’s elevation profile loaded up on my Garmin, and I could see that the last kilometer was steep. I rotated through with a few riders at the bottom of the climb, but at 1k to go, I couldn’t wait any longer. I got on the front and mashed on the pedals. I never looked back, pushing as hard as I could until inside 200 meters to go, when just one rider came around me in the sprint. When I finally turn around after crossing the finish line, I saw the group had split to pieces. It was a little morale boost, on a day when I needed one – the front group had finished over a minute ago. I came 9th.
Stage 3 – Cascade Lakes Road Race
Time: 4:06:16
Distance: 96.2 miles
Place: 5th (s.t. as winner; took the lead on GC by 8 seconds)
As many of you know, I do my research. I do as much course recon as I can, and take more notes on corners, descents, elevation profiles, and mileage than probably anyone else in the amateur peloton. But on this day, it would all be worth it.
The 96-mile stage started with a sizeable uphill: 2.2 miles at an average of 4.5%. Without a neutral rollout, I knew it was going to be a hard start. My Dad and I predicted that the breakaway would go in these early miles, and less than five minutes into the race, I saw it happening. A group of five had gone up the road, and as another rider from the field jumped to get across, I went with him. He immediately sat up, and I made the quick decision to keep my head down and power across. Two minutes later, our breakaway was “rotating” at 380 W, gasping for air while desperately trying to hold our gap to the field. As we crested the climb, our breakaway began to split, and it would keep doing so as we bombed down the descent at 50+ mph (Sorry Mom).
When we reached the bottom, our group was down to eight. Our gap to the field was 40 seconds, and it would only keep growing; until about 20k to go, when the field would mow us down is a carefully measured effort that would leave us spit out the back and crawling on our hands and knees up to the finish. I mean, that’s what usually happens…
An hour into the race, the commissaire car pulls up next to us, motioning that we need to stop. We look at each other with puzzled faces, and ask the official ‘What the heck is going on?’ – The field took a wrong turn, he replied. They turned onto a sketchy forest road, so bad that nearly a third of the field got flats. After a mile, they realized their mistake, but now the race was stopped, and both neutral support and team cars were scrambling to get their riders back on to the (correct) road, and with fully-functioning bikes.
Huh.
We sat on the side of the road for more than twenty minutes, which was actually quite nice. I had time for a nature break and to snack on some Fig Newton’s, all while chatting with my break-mates and their team directors in the cool shade of the Cascade forests. When the field finally rolled up, we prepared for a restart. And just like that, we were off again, with a nice 3+ minute gap.
The talk of the day was the 2-mile “gravel” sector which connected the long, flat loops that we raced around before heading back to the final climb. Original Intel told us that the road was nicely packed dirt, and shouldn’t be tough at all on road bikes. Then on the start line, the officials told us that the “gravel sector” was quite technical and dangerous. Half the Master’s field crashed out or flatted, four of the Cat 3s were still missing, and they said it had picked up and swallowed one of the Juniors, who was probably in the Upside Down now.
I’m kidding. They just said there would be deep sand and tons of large, pointy rocks. No problem! (Said all the riders on mountain bikes, of which there none).
On our first trip through the gravel, boy was I glad to be in the breakaway. We could all choose our own lines, which meant that we could actually see what was in front of us, and swerve around the sharp, baseball-size rocks before they slashed our tires. The deep sand was a challenge too, and a 3% kicker in the middle of the sector felt like twenty-five as I could keep enough traction to get over it.
I channeled my cyclocross skills from back in the day to get through that dirt. The slipping and sliding, the fish-tailing and power-slides, the loss of control and the minutiae of balance skills were all required for the seven minutes that it took to traverse the sector. As our tires slipped back onto pavement, I breathed a sigh of relief.
30 miles later, we hit it again. This time, the gravel tore the breakaway apart. Three of the pros went to the front and pushed the pace, spitting out half our group while the other half flatted. Despite being on a flat “road”, we all seemed to be riding our own races for the next seven minutes. I clung on to the dust cloud behind the leaders, finally regaining contact after a quick 30-second chase on the road. A few kilometers later, seven of us were back together, riding on to the stage win – At this point, we had over eight minutes on the field.
With 10k to go, we started the final climb, a roughly 22-minute effort at an average of less than 4%. The shallow pitches and swirling wind meant that it would be hard to get away, as sitting in the draft was comparatively easy. That wouldn’t stop me from trying, however, and when I still felt good at 5k to go, I launched a probing attack on one of the climb’s steeper sections. But after 30 seconds, there were still six riders on my wheel.
Others made their bid for glory over the next few kilometers, but I reacted instantly and chased them all down. In total, I attacked or chased down 7 attacks in the last five minutes of the race, each time spiking at 500-700 W. That meant that I didn’t have much left to sprint at the end. Between the technical finish, poor positioning, and a hard shoulder bump in the final corner, my fate was sealed and I finished at the back of the group in 5th.
But the story of the day was that I was the new leader of the General Classification. A name unknown to most of these riders – a 22 year-old amateur from Wisconsin – would be pulling on the pink jersey of Overall Leader.
Stage 4 Crit
Time: 1:00:17
Distance: 27.9 miles
Place: 26th (0:10 behind winner; now 2nd in GC by 0:13, thanks to time bonuses)
Sometimes crits are fun. Other times…not so much. This one was somewhere in the middle. I enjoyed bombing through street corners, and careening up the side of the pack in a desperate bid to move up, but the crashes interrupted my enjoyment. Three times during the race, riders just a few wheels in front of me started going down in heaps. It seemed the crashes were of no one’s fault, in a way. The course was fast and technical, the field strung out from 60 minutes to go to zero. There were a lot of clipped pedals, dive-bombing into corners, shoulder barges, and angry shouts. Isn’t that just crit racing?
It may sound lame, but getting called up to the front row while wearing the leader’s jersey was one of the coolest experiences of my life. I rolled up to the line with the music blaring and the announcer bellowing out (and correctly pronouncing!) my name. I gave a meager wave to the crowd, and all of a sudden they erupted in cheers. It gave me goosebumps, and I couldn’t help but smile.
The countdown from 10 began, and the nerves came flooding back. With my heart racing, I bolted off the start line and blasted through Turn 1 in fifth wheel. So far so good!
But didn’t last long. Within three corners, I was 30 wheels back, struggling to find my legs, and trying not to get checked into the curb. The first few laps of a crit are always the worst for me, and as soon as that got in my head, I was doomed.
For the next twenty minutes, while I struggled to move up, I was starting to find my groove. I could coast into the corners, taking them sharply and efficiently so that I wouldn’t have to all-out sprint back up to speed. But halfway through the race, a crash. I came around a corner and saw a rider on the ground, and I had to check hard into the rider next to me in order to keep it upright. I sprinted to latch back on to the field, and for the moment, it was crisis averted.
I continued moving up, into the Top 20 even for the last few laps, but crashes closer and closer to the front kept slowing me down. I can’t complain though, as I wasn’t the one on the ground. The last two laps were chaos, with multiple crashes and field splits, all while the race was being won ahead of me. I sprinted across the line in 26th place, losing 8 seconds and, when factoring in the time bonuses, the overall lead. While disappointed, I would head into the final stage 2nd Overall, a result that I wouldn’t have believed had you told me a week prior that it was possible.
Stage 5 Aubrey Butte Circuit Race
Time: 2:04:11
Distance: 48.9 miles
Place: 13th (0:34 behind winner; held on to 2nd GC)
The final stage of the 2019 Cascade Cycling Classic took place on a new course, a 5.8-mile hilly and technical loop that zig-zagged up and down Aubrey Butte. I had reconed the course in the car the day before with my dad, and my heart started racing as soon as I saw the climb. Four pitches of 20+% threatened to blow the race apart on the 4k climb to the finish. After rolling through the finish line, the course went careening down through the neighborhood, and my palms started sweating as soon as I saw the corners. A few of them were characterized by a tight, descending radius, meaning that early braking was a must. Those who didn’t know the course wouldn’t certainly struggle – if not take out the entire field on the first lap…
With two hours of racing on tap, we would race up and down the climb nine times. I started at the front, more nervous than ever, and I fought for position as we hit the bottom of the first climb. No one else seemed interested in fighting for position, though, and the pace seemed pretty relaxed as the team of the Overall Leader – Floyd’s Pro Cycling – went to the front and set a hard but steady tempo. A couple of attacks flew, but nothing serious, and just like that we were on the descent for the first time. Without disc brakes, I had a major disadvantage. Riders with them can stop on a dime, whereas I had to grab the brake levers much earlier, feather it up to the corner, and then (hopefully) swoop through without incident.
I knew where the corners were – I had done my homework, after all – but on the first lap, I nearly took out every rider in front of me. Twice. It wasn’t my fault, in a sense. You see, the riders immediately in front of me had disc brakes, and while I gradually feathered the brakes from a long way out, they waited until the last minute and then slammed on those suckers. All of a sudden, I was barreling towards a rider at 30 mph and he was only going 10. I skirted in-between bodies and somehow made it through; a few corners later I did it again. I learned my lesson, and for the rest of the race I gave the riders around me plenty of room.
For two hours, I thought about attacking on the final climb. I only needed 13 seconds to take back the overall lead, but with the quality of the team I was up against, it was a tall task. In the end, I didn’t attack, and I regret it. The pain was so great in that moment, on the final climb with less than 2k to go, that I hesitated. I questioned myself, I questioned my ability, and I questioned my own strength. I didn’t believe in myself. And that was a mistake. As the group whittled down to just over twenty riders, I felt good and I had the space to go. The left side of the road opened up, on a slight rise with 1k to go, the perfect place to attack. But I just…didn’t.
I finished in 13th place on the stage and 2nd Overall. It is the best result of my career so far, and one that I never even dreamed about – it seemed too far-fetched. I can take a lot of positives away from this race, but also some very important lessons learned. On to Nationals.
Some very important thank-you’s: Thank you to my dad for helping me with everything. From cleaning my bike, to organizing logistics and going grocery shopping, thank you for handling the off-the-bike stress so that I could focus the race. It definitely showed. Thank you to Project Echelon and my teammates for supporting me at this race. Without you all, I never would have been able to make it out to Bend for one of my favorite races of all-time. Thank you to my family who came all the way to Bend to watch me race, and cheer me on every single lap in the crit J And finally, thank you to everyone who cheered for me, from the peloton or from the side of the road, from at home or on social media. It really means the world to me – to every single one of you: Thank you.
***
Stats from the week:
Stage 1:
Normalized Power (NP): 288 W for 2 hours 18 minutes
Peak 1-min: 544 W
Peak 5-min: 417 W NP
Stage 2:
Normalized Power (NP): 269 W for 4 hours 10 minutes
Final climbs: 330 W NP for 53 minutes
Peak 8-min: 380 W NP
Final kilometer: 420 W NP for 2 minutes 16 seconds
Stage 3:
Normalized Power (NP): 277 W for 3 hours 43 minutes
Making the breakaway: 446 W NP for 1 minute 14 seconds; 370 W NP for 6 minutes 26 seconds
Efficiency in the break (second flat loop): 238 W NP for 44 minutes, average HR 150 bpm, average speed 27.6 mph
Lap 2 Gravel: 7 min at 340 W
Finale: last 52 min at 297 W NP; last 15 min at 326 W NP; last 10 min@341 W NP
Stage 4:
Normalized Power (NP): 295 W
Peak 1-min: 364 W NP
Stage 5:
Normalized Power (NP): 285 W for 2 hours 4 minutes
Lap 1 climb: 340 W NP for 6 minutes 30 seconds
Lap 4 climb (field split): 380 W NP for 3 minutes
Finale: last 5 min at 373 W NP
Sprint: 600 W for 30 seconds