Last we heard from our hero, he was looking forward to an “almost normal” year. That lasted all of four days.

On January 5th I did a Step Test: the first of three rides that comprise my usual functional threshold power (FTP) testing regime, to determine my baseline fitness level. These are vomit-inducing long-duration maximum intensity efforts. If you’re doing it correctly, you should feel like you’re dying. This one went “well”, producing a respectable FTP of 218 Watts.

Ready to die on that hill

Ready to die on that hill

2022 Tour of Watopia

2022 Tour of Watopia

Buddies on the PMC group ride

Buddies on the PMC group ride

Fineview overlook

Fineview overlook

First Team Decaf group ride of 2022

First Team Decaf group ride of 2022

However, that part about dying? That was just a leetle hyperbolic. I finished that workout with two kinds of chest pain: sharp, painful contractions on my left side that went away after 24 hours, and a dull ache in the center of my chest that remained for a few days.

Having experienced heart palpitations around this time last year as well, I was so concerned that I aborted my other two planned FTP tests and backed off my training frequency, duration, and intensity.

In recent weeks I underwent a coronary CT scan which mostly gave my arteries a clean bill of heath. So I’m gradually adding frequency, duration, and intensity back into my regime to see whether my heart explodes or not.

As you might imagine, my health has been by far the biggest item of note so far this year.

Next on the list would be the power meter pedals I picked up, but I already told you about those in this blogpo.

And that’s followed by my training status, or lack thereof. To give you an idea, during this year’s Tour of Watopia I rode 600 km over 9 stages; compare that to 2021, when I rode 1,350 km and completed 42 stages!

I haven’t entered spring at such a low level of fitness since 2018, before I bought my indoor trainer and when I was demoralized after successfully completing Pittsburgh’s Dirty Dozen. You can, of course, see my minimal 2022 training graphically on my Fitness Charts page.

However I still clocked 460 km in January, 520 in February, and 740 in March, and got out on unseasonably warm days to enjoy five 50-70 km outdoor rides

During that time, I attended every one of the Tuesday night virtual group rides on Zwift organized by the Pan-Mass Challenge. The camaraderie of the shared event and cause combines with the small size of the group to provide a close-knit social environment that I really enjoy. But in the back of my mind I quietly hope that the PMC Zwift ride never becomes so big that it loses its personal feel.

Which is exactly what happened to my previous Zwift virtual cycling club, the Herd. You might remember that I drove to Michigan and rode an IRL century with them back in 2019 (blogpo). Unfortunately, what in 2018 used to be an intimate little group of a few dozen riders now numbers sixteen thousand members, and all the people I knew well have moved on. I sadly just don’t feel any connection to the club anymore, and I’ve almost entirely stopped riding with them.

As for this year’s Pan-Mass Challenge main event, I’ve delayed committing to ride until I get more clarity about my health and what I’m physically able to do. Pittsburgh’s Rough Diamond Century – an event I’ve never done – is scheduled on PMC Saturday, so that seems like a viable way to conduct my own remote PMC ride. But I’m still operating in wait-and-see mode.

Another development was my New Years resolution to go 100 percent metric in all aspects of my life. So far that’s been both successful and painless for me (but not my partner). More details on that in a blogpo on my main blog.

With less time on the bike, I have more time on my hands for other things, which included a few updates to the Zenturizer, a tool I wrote in 2020 to find virtual routes on Zwift that match the distance and climbing on any real-world route. Enhancements included moving the data to a database, supporting event-only routes, adding new routes that Zwift has added, and much more intelligent handling of point-to-point routes that aren’t continual loops.

Still, the main storyline is that 2022 has started poorly, thanks to my chest pains. But we’re finally returning to a normal post-Covid calendar of major events, mostly clumped into the traditional high season: June, July, and August. I’m hopeful that by then I’ll be able to ride them without fear.

For now, outdoor riding season has begun, including weekly Team Decaf group rides, which conveniently occupy the same day and time as the (winter-only) PMC Zwift rides. I’ve got a bit of travel to get thru, but then plan to test my health out during the month of May, to see whether I should attempt the long major events in June, July, and August.

What a year it was... or wasn’t, actually. What can I say about the 2020 cycling experience?

Having begun the year with lots of indoor training, in January I achieved a new all-time record level of fitness.

Modeling the 2020 Pan-Mass Challenge jersey on the Grandview Overlook above downtown Pittsburgh

Modeling the 2020 Pan-Mass Challenge jersey on the Grandview Overlook above downtown Pittsburgh

Autumn on the Mon Wharf with R2-Di2

Autumn on the Mon Wharf with R2-Di2

Honoring Paris-Roubaix with 22 secteurs of Pittsburgh pavé, including Climax Street

Honoring Paris-Roubaix with 22 secteurs of Pittsburgh pavé, including Climax Street

Flew my BikeMS kit on my virtual Escape to the Lake

Flew my BikeMS kit on my virtual Escape to the Lake

At the front of the line for the first-ever PMC weekend virtual ride on Zwift

At the front of the line for the first-ever PMC weekend virtual ride on Zwift

But it was all downhill from there. Before the spring outdoor season began, the outbreak of the worldwide Covid-19 pandemic caused the cancellation of all group rides and every major event on the calendar. On top of that, I kept my solo rides short to avoid risky convenience store replenishment stops. In terms of outdoor riding, 2020 was a complete and utter write-off, as I logged a 20-year low 1,140 outdoor miles.

In contrast, my investment (back in 2018) in a new smart trainer and the Zwift indoor training platform proved prescient and timely. Over 80 percent of my 2020 cycling happened indoors, as I rode simulated versions of all my usual summer events. I even completed my 15th Pan-Mass Challenge (virtually) when this year’s real-world ride was called off. Needless to say, my 4,903 miles on the trainer was a new record.

Combining indoor and outdoor riding gave me an annual total of 6,043 miles in the saddle, only 513 miles less than I rode in 2019. I consider that quite respectable, given the extraordinary circumstances.

Let’s hope 2021 sees the pandemic situation improve.

My Original 2020 Goals

After a superlative 2019, I didn’t have a ton of specific goals coming into the 2020 season, which was a good thing, because I never would have lived up to them! But I did have some general expectations. Let’s see how each of those turned out...

“I don’t really expect to surpass my 2019 season”

The Covid-19 lockdown put an early end to any pretense that 2020 would be a good — or even normal — year. I didn’t do any major events or even a single group ride all year, and only one outdoor ride that was over 40 miles.

The only way I surpassed 2019 was in time spent on the indoor trainer, completing eleven Zenturies (indoor rides over 100 miles). But that’s not how I’d envision a successful year.

“I’ll certainly continue Zwifting”

I’m not going to enumerate all this year’s Zwift achievements, but there are a handful worth calling out. I completed every one of Zwift’s many routes in January, along the way earning the “Masochist” badge for completing my 25th Alpe du Zwift ascent. But to retain that “route hero” status, I had to subsequently complete two more sets of routes when Zwift released expansions for Paris/France and Watopia. I also took three series of FTP tests, registering 215/215/196W in the 20-minute tests; unlocked the new in-game version of the Herd team jersey; and I ended the year at experience level 44 (out of 50).

I also wrote a useful program for myself to automatically open a full-screen display of any “photos” I took while in-game. That way I didn’t have to wait until the end of the ride to see how they came out, nor did I have to fiddle with the laptop to open them myself.

The Herd’s Epic Tour in Toronto

Another big disappointment was the cancellation of a planned September trip to Canada to do a (nominally) epic ride and meet up with online friends from the Zwifting club The Herd. I never even received the (personalized!) ride jersey I ordered.

Charts

As always, my two fitness charts really put the year’s efforts into perspective.

Cycling Fitness: 2011-2020

This chart shows my fitness trend over the past ten years, with peaks in the summer and troughs in the winter. Looking at 2020 in this context, the major themes I’d like to call out are:

  • My fitness peaked incredibly early in the year (January 26th).
  • I set a new all-time record fitness level (98.18).
  • After coming off that peak, I spent most of the summer at a moderate fitness level (around 65) before taking it easy at the end of the year.

If we set aside comparisons to 2019, I had a surprisingly good year from a fitness standpoint; despite the pandemic, it doesn’t look grossly different from any normal year. And looking forward, I’m in a decent position to make the most of whatever 2021 offers.

Cycling Fitness: 2020 Calendar Year (vs. average)

This second chart shows my 2020 fitness in detail, including my eleven Zentury rides (the green circles).

Note my record fitness peak in January, and how much fitter I was than my long-term average (the grey line) all spring long. Despite that, I did gradually lose fitness through the spring, with it slowly falling to match my long-term average at the start of summer in late June.

Similar to most normal years, my summer featured a familiar shark-tooth pattern that comes from periods of alternating rest and recovery with big hundred-mile rides… It’s just that they all took place indoors this year, rather than outside.

A late September interruption caused my fitness to start falling off, when both my heart rate monitor and the laptop computer I ran Zwift on failed and needed to be replaced. At that point, I reconsidered my goals, and decided to abort my last two century ride simulations and start my off-season a little early. Taking some time to relax, my fitness gradually fell to an annual low of 43.53 on December 7th before I started ramping back up again. Looking forward hopefully toward 2021, I finished the year well ahead of my typical level of fitness.

Waving to imaginary crowds as I arrived at a virtual Provincetown to complete my two-day PMC Zwift ride

Waving to imaginary crowds as I arrived at a virtual Provincetown to complete my two-day PMC Zwift ride

Taking my laps on the Champs-Elysees in Zwift's new Paris/France expansion

Taking my laps on the Champs-Elysees in Zwift's new Paris/France expansion

Enjoying the French countryside, with Mont Saint-Michel as backdrop

Enjoying the French countryside, with Mont Saint-Michel as backdrop

Giving the crowd a sprint to cheer for in Zwift's Crit City expansion

Giving the crowd a sprint to cheer for in Zwift's Crit City expansion

Exploring Zwift's pretty new sylvan cliffside road

Exploring Zwift's pretty new sylvan cliffside road

In group rides, I swear sometimes it feels like I'm the only one who knows how to ride properly...

In group rides, I swear sometimes it feels like I'm the only one who knows how to ride properly...

A rare outdoor ride: autumn at McCahill Park in Fox Chapel

A rare outdoor ride: autumn at McCahill Park in Fox Chapel

Sprinting for the line on Zwift's new Crit City course

Sprinting for the line on Zwift's new Crit City course

When in Italy...

When in Italy...

Looking back on downtown Pittsburgh from Herrs Island

Looking back on downtown Pittsburgh from Herrs Island

My 2020 Cycling Calendar

My 2020 Cycling Calendar

The Zenturies

For the first time since 2001, I didn’t do a single century ride.

But I did complete eleven indoor Zwift centuries, or “Zenturies”, simulating both the distance and amount of climbing found in my usual real-world rides.

How did I simulate them? I created a web page called The Zenturizer where I could input my preferred distance and climbing, and the site would determine the courses on Zwift that most closely matched my desired profile. It was a very handy time-saving tool, which anyone can use!

I had targeted thirteen Zenturies for 2020, but after completing eleven, I took a three-week break to replace both my heart rate monitor and my laptop. At that point I decided to end my season early and save those two extra centuries for springtime. More about that when I get to my 2021 goals!

Here’s the list of the eleven that I did complete:

  • Uber Pretzel Zentury (Feb 13) The penultimate course to ride in my quest to acquire the badges for completing every Zwift route.
  • PRL Full Zentury (Feb 20) Rode a very repetitive course all alone, but completed Zwift’s route badge challenge… for the time being!
  • Tour of Watopia Stage 1 Zentury (Mar 30) Did Zwift’s ToW Stage 1 three separate times in one day to accrue 100 total miles.
  • Pseudo Greenville 200k (Apr 19) My first time cobbling together a route on Zwift that simulated an actual outdoor ride, and at 125 miles my longest single ride of the year.
  • Pseudo Tour d’Essex County Zentury (May 25) Since May is devoid of big events in Pittsburgh, I simulated this Memorial Day ride I used to do back in Boston!
  • Pseudo Escape to the Lake Zentury (Jun 6 & 7) Simulated my annual MS Ride: usually the only two-day ride on my calendar.
  • Pseudo 3-State Zentury (Jun 28) Although this event was postponed and eventually run informally later in the year, I simulated it on its original planned date.
  • Pseudo ABC Zentury (Jul 12) Also informally run as an unsupported ride, I just did this Akron event virtually.
  • Pseudo Pan-Mass Challenge (Aug 1 & 2) Surprise! My 15th Pan-Mass Challenge ride to fight cancer! Participating in my signature event once more as a virtual rider was a treat!
  • Pseudo Mon Valley Century (Aug 18) This “annual” ride has only gone off two of the past five years. At least my Zwift simulation avoided the MVC’s curse!
  • Pseudo City Century (Sep 2) The local advocacy group pretended to sort-of run this unsupported, so that they could still collect money. Fed up with an organization that’s completely lost the plot, I was happy to do my own (free) substitute ride on Zwift.

Additional Highlights

After five years away from the event, reconnecting with the Pan-Mass Challenge was my biggest unexpected pleasure of the year. I was the first person to join the PMC club on Strava; I participated in prototype PMC meetups on Zwift that led to an official weekly series of PMC virtual group rides; I registered as a virtual PMC rider for the first time; and I simulated the entire two-day, 192-mile route indoors on PMC weekend. Along the way, I made a bunch of new friends, did a lot of reminiscing, earned my 15th PMC rider’s jersey, and added $3,000 to my lifetime fundraising for the Dana-Farber Cancer Institute, which now stands at $114,222. Here’s my full PMC ride report.

Although the year featured many other memorable Zwift rides, one of the unique ones was participating in a 2,000-person ride led by Watanabe Wataru, the mangaka who created Yowamushi Pedal, an extremely popular cycling manga and anime series.

I should also add that in October I marked the 20th anniversary of purchasing the Cycles Devinci hybrid that started me on the path to becoming a PMC rider and serious cyclist. It’s been a good — but extremely long — road!

Noteworthy Purchases

This wasn’t a great year for pimping my ride, but a few items do stand out as worth mentioning:

  • When my old laptop died, I replaced it with a new Macbook Pro, which improved my Zwifting experience by upping both my graphics quality and frame rate.
  • I bought a hydration pack, in hopes that it would enable me to do long rides without having to replenish fluids at convenience stores, but it just didn't keep drinks cold enough to be palatable.
  • I bought a new Wahoo heart rate monitor that produced unacceptably inaccurate data, so I got a warranty replacement unit. However, the second unit was also garbage, so I demanded a refund and bought myself a new Garmin HRM instead. But amusingly, a late-year firmware update seems to have fixed the Wahoo HRM’s problem, so I’ve held onto the one unit that they told me to keep rather than return!
  • I bought a collapsable selfie stick and fashioned a nice rubberized frame mount for it, making it much easier to get interesting photos during rides for my Strava and social media posts.
  • And I added the Wind & Rain app to my Garmin bike computer. The real-time weather data it provides would be really useful if I ever actually did any long outdoor rides...

List of Blogposts

It wasn’t the best year for blogging — how much can you write of interest about indoor rides? — but I still managed to get 16 stories written. Here‘s the full list:

Goals for 2021

Even after writing off the entire 2020 season, Covid-19 shows no signs of abating anytime soon, so I still have no idea what 2021 will look like. But everyone’s top goal for next year is obvious:

Normality

How about a return to normality? Being able to ride farther outdoors than I can manage on a single water bottle? Participating in group rides with other cyclists? Or even do some centuries and my typical big events? Right now, that sounds pretty aspirational and more than adequate.

My 100th Century+ Ride

As far as I can tell from my sketchy records from 2000-2005, I’m currently sitting on a lifetime total of 97 rides of 100 miles or greater. I’ll probably get in shape with a couple indoor Zenturies in the spring, then find some way to do a special 100th century outdoors. It’s probably the biggest thing I’m anticipating and a milestone well worth celebrating. Planning out a route will be a good wintertime activity...

Zwift Level 50

In about 3,575 trainer miles — which is currently estimated to happen around August 13 — I will hit Zwift’s highest XP level. There’s a nontrivial possibility that they’ll soon add more levels beyond 50, but that won’t dilute my satisfaction at reaching what’s currently the top of the chart.

Another Virtual PMC?

At this time, I have no idea whether 2021 will see me doing another virtual Pan-Mass Challenge or not, especially since my fundraising mojo has atrophied. But that’s another decision I’ll make as the season begins to take shape.

Toronto Epic Tour Redux?

It’s the same story for this ride. Since they deferred my paid 2020 registration until 2021, I’d certainly like to take advantage of the opportunity to ride, but whether it’ll happen or not remains unknowable.

And that’s all I’ve got to say about this pandemic-canceled 2020 season. As of the start of the new year, things are still looking quite iffy. But as the calendar turns over to 2021, I’m hopeful that some signs of normality will begin to appear in the coming months.

Hopefully I’ll see you out there!

Winnertime

Apr. 20th, 2020 11:24 am

At this time last year, I summarized my first winter using a smart trainer and Zwift to maintain fitness. Now this year's spring blogpost is due, even though the Corona virus and shelter-in-place orders will extend the indoor riding season into April, and May, and June, and...

But let’s start with the good news and winter happenings before turning to the more unpleasant, ominous future.

The Harrogate UCI World Champs course

The Harrogate UCI World Champs course

Epic KoM

Epic KoM

Scenic ride through Titans Grove

Scenic ride through Titans Grove

Not a bad day, for December!

Not a bad day, for December!

My Xmas gift: the Tron bike

My Xmas gift: the Tron bike

New Year's in the Italian village

New Year's in the Italian village

Combo Jersey

Combo Jersey

Halloween dinosaur on a mountain bike

Halloween dinosaur on a mountain bike

The Herd kit

The Herd kit

In the six months from October through March I rode 2,830 miles, 99 percent of them on the indoor trainer. I did one-third more riding than the previous winter, mostly because I didn’t get my trainer until December of that year.

In that time, Zwift has given us a lot of changes and additions. The most noteworthy were the addition of the undulating Titans Grove route, the Yorkshire UCI World Championship course, the short Crit City expansion, and a much needed redo of the half-baked Richmond (Virginia) UCI course. Zwift introduced mountain bikes and even tested steering in a short off-road path. And they debuted individual and team time trials, although I haven’t tried those as of yet.

And one has to mention how well Zwift have handled the dramatic and unexpected growth in usership resulting from the Corona virus lockdowns. A year ago, it was noteworthy if there were 10,000 to 15,000 people Zwifting simultaneously. Recently we’ve been topping out around 35,000: three times last year’s peak.

The biggest farce of the year has to be the Fence, a tool that community organizers have long begged for, to help keep group rides together. I found it inconvenient and fiddly. And ride leaders only transitioned their whining about fly-away riders to complaining about people merely riding close to the Fence. Plus Zwift botched the implementation so horribly that they had to withdraw the feature after a short time.

Meanwhile I made a few improvements to my own Zwifting setup. The biggest win was buying a smart outlet, which allowed me to turn on my cooling fan using my smartphone, without getting off the bike. I also wrote a background program called zwift-pic-monitor that automatically displays any screen shots I take while riding (normally Zwift saves each photo but doesn't show it). And I added a new IRL cycling jersey to my already large collection when The Herd—the club I ride with on Zwift—completed its long-awaited design.

On the negative side, I’ve been plagued by chain drops and slippage, particularly during high-power sprinting efforts. I’ve already installed a new chain, so I suspect my outer chainring is worn; however, I can’t verify or fix that at the bike shop until the current Corona virus lockdown is lifted.

That brings us to this winter's achievements; it’s quite a list.

In December I completed my first year on Zwift. Disappointingly, I never got the anniversary email they usually send out.

I finished the December 100-mile mission, the April 250k mission, the Italy and Everest challenges, the 5-stage Tour of London, the 7-stage Tour de Zwift, the 3-stage fondo series, and the 3-stage Haute Route Watopia. I rode 16 stages of the (nominally 5-stage) Tour of Watopia because they were doling out double experience points; but I only did one out of 3 stages of the Tour of Innsbruck. I earned the Zwift mountain bike & tires, acquired the Zipp 808/Super9 disc wheelset, and was awarded the much-coveted Meilenstein Lightweight wheels upon completing my 10th ascent of the formidable Alpe du Zwift.

I started the now-poorly-titled “off-season” at Level 26, and am currently at Level 38. But after two winters I’m only 56 percent of the way to the current max level (50) because it takes lots more XP to level-up at higher levels.

And then we get into the really noteworthy stuff...

After ascending 5.7 times the height of Mt. Everest, I earned Zwift’s Tron “Concept” bike. Everyone covets it because it takes a long time to get and has ostentatious glowing tires. Although noteworthy, it’s tacky and doesn’t perform any better than several “real” in-game bicycles, so it’s of little interest to me.

I earned the Masochist badge for completing 25 ascents of the Alpe du Zwift. That’s hard and also takes time to complete. A nice, respectable achievement. Tho I’ve just about given up on breaking the 60 minute ascent barrier.

I’ve already written about completing Zwift’s challenge for completing each of the in-game routes: first an initial 25 routes, then the full 67 routes. The second set was my most memorable and noteworthy achievement of the year, because it included several of Zwift’s hardest courses.

The longest of those routes was 107 miles, and I also extended the second-longest one to 100 miles. As you know, 100+ mile rides are how I judge my year. The following week I notched a third one by repeating the 33-mile Stage 1 of the Watopia Tour three times in one day.

With my usual real-world events being cancelled due to the Corona virus, I’m hoping to do rides on Zwift that match the distance and climbing of the outdoor centuries I’ll miss. The first of those was a challenging 200k (125 miles) with 8,400 feet of climbing that I completed yesterday, but that deserves its own separate blogpost. However, that means I’ve already completed four “Zentury” rides so far this year.

Mimicking my first IRL event is a segue to where my training stands now. In a normal year, I’d use this space to summarize my level of fitness and preparedness for the transition to upcoming spring events. Although outdoor riding is going to be severely curtailed, there’s still good reason to review where my fitness stands.

My Chronic Training Load (CTL) bottomed out around 50 at the end of October, as I recovered from a strained achilles, but the aforementioned route challenge motivated me to train hard through November, December, and January. By New Year's, my CTL had risen to 80, which exceeds my usual summertime peak. After those two Zenturies to complete the route challenge, my CTL maxed out at 98, setting a new and unexpected all-time fitness record—in January! Since then, I’ve let it subside back down to 75, which is still above my summertime peak form.

While recovering from last fall’s injury, I produced a disappointing 197W back in my November Functional Threshold Power (FTP) test; but in February I bounced back up to 215W, and a subsequent Alpe run bumped it up to 227W, which are both closer to what I would expect when I’m in form. I’ll see where I stand again in May.

Based on my CTL and FTP, I’m in great shape for whatever riding I'll do, indoors or out. But thanks to the Corona virus, it’ll be more of the former than the latter. All my group rides and major events in April, May, and most of June have been cancelled, and I expect that will also be the case through July at least.

It might make sense, then, to revisit the goals I set for this year. Ironically, four months ago, I wrote the following:

I don’t really expect to surpass my 2019 season, due to this year's confluence of circumstances. Will 2020 also feature great weather, limited travel, no job commitment, and an understanding partner who will loan me her car to get to distant rides? And can I continue to evade the growing concerns of age and health?

While I couldn’t foresee cancellation of the entire cycling calendar along with all other public gatherings, I was skeptical that 2020 would be as good as 2019. That was eerily prescient, huh? Barely two weeks into spring we knew that unless the trajectory of the pandemic suddenly changed, there would be no outdoor centuries for me this summer. We’re left now to do what we can with what we’ve got.

That’s why I can’t tell you how glad I am that I bought my smart trainer and started Zwifting in 2018, so that my indoor setup was up and running a year before we were ordered to shelter in place. I hesitate to imagine how stir-crazy I’d be now if I wasn’t set up for indoor riding!

But I’m not looking forward to spending one of my remaining summers inside. I already miss being warmed by the sun, fresh air, being out in nature, exploring new places, and making lasting memories. But putting miles down on the turbo is infinitely better than not riding at all… or being deceased.

Stay tuned, and stay indoors!

In contrast with a miserable 2018, 2019 was a complete renewal: possibly my best remaining year on the bike, and arguably the best of my entire lifetime.

MS Escape to the Lake Finisher

MS Escape to the Lake Finisher

Indoor Training on Zwift

Indoor Training on Zwift

MS Escape to the Lake

MS Escape to the Lake

Brilliant Physical Health!

I’m in Brilliant Physical Health!

PedalPGH Pittsburgh Overlook

PedalPGH Pittsburgh Overlook

The Herd's Leelanau Harvest Tour

The Herd's Leelanau Harvest Tour

Akron Bike Club's ABC Ride

Akron Bike Club's ABC Ride

My 2019 Cycling Calendar

My 2019 Cycling Calendar

While it lacked crowning moments like the Pan-Mass Challenge or the Dirty Dozen, I set dramatic new high water marks for miles ridden, century rides completed, and level of fitness.

Beyond the numbers, though, was how easy it felt. After my first winter using a smart trainer and Zwift, I began the season already near peak form. It was such a different feeling, without the usual early-season suffering to build fitness, and I went into every major event strong, confident, and at ease.

It made setting and chasing my cycling goals an unblemished pleasure, making 2019 a complete reversal of my disappointment in 2018. It was an absolutely stellar year!

My Original 2019 Goals

Let’s review my 2019 season goals. A year ago, I set three secondary and three primary ones.

My secondary goals laid the groundwork for achieving my primary goals.

My secondary goals for 2019: spending the winter riding Zwift on the trainer, allowing me to enter the road season at a high level of fitness, and monitoring that by performing regular FTP tests throughout the year.”
Spending the winter riding Zwift on the trainer

I really enjoyed Zwift, as described in my summary blogpost. The virtual world was entertaining, the smart trainer changing resistance to simulate climbing kept it interesting, and the social interaction through Discord audio chat was engaging. From December through the spring, I tallied an unprecedented 2,600 simulated miles on the trainer.

Allowing me to enter the road season at a high level of fitness

I monitored my training using my usual fitness charts, which you’ll see shortly. I made steady progress throughout the winter, but would it improve my outdoor riding?

The big test of Zwift’s effectiveness came on April 14th, when one of my first outdoor rides of the year was a 125-mile 200k brevet. It went fabulously, as described in my blogpost.

Performing regular FTP tests throughout the year.

Since my indoor trainer includes a power meter, I can gauge my fitness with a new metric: functional threshold power (FTP). I took two different FTP tests every three months to monitor and quantify my progress, plus automatic FTP increases detected by Zwift while riding. Depending on how you measure it, my FTP varied from 197 to 234 watts, averaging 215W.

That set me up for success reaching my main goals for the year.

My primary goals for next year are simply this: to finally get beyond the malaise of 2018, to ride more, and get back to peak fitness this summer.”
Get beyond the malaise of 2018

Although the turnaround started with my new indoor trainer and Zwift membership, several other factors helped rekindle my desire to ride. Bypassing the usual springtime pain of riding my way into fitness certainly helped. I also lost less time to traveling. And after suffering through 2018 being the rainiest year in Pittsburgh’s history, all of this year’s major rides had gorgeous conditions (despite 2019 being our third wettest year ever). And by staying on top of my fitness and fatigue levels, I avoided overtraining, which can also sap motivation.

Ride more

In 2019 I rode 3,400 miles, which is more than I average, and 625 more than I rode in 2018. So you can check that goal off.

But that’s only 52% of the story... The other 48% are the virtual miles I put in on the trainer. In my first full calendar year on Zwift, I logged an additional 3,182 indoor miles.

My combined total was 6,582 miles, which constitutes an all-time record for me. Ride more? Double check!

Get back to peak fitness

All that indoor and outdoor riding ensured that I got back to peak fitness. I was in the best form of my life, which I’ll quantify in the two charts in the following section.

Charts

These charts provide the next level of detail about my year, plotting my Chronic Training Load (CTL), which is a measurement of cycling fitness. The charts really tell the story for 2019.

Before addressing 2019 in detail, it’s worth looking at my fitness over the past nine years, which allows me to visually compare 2019 to previous seasons.

2011-2019 Fitness Chart

At a high level, four major themes jump out of this chart:

  • I was much fitter than usual earlier in the year
  • My training was much more consistent in 2019
  • I peaked higher, reaching new record levels of fitness
  • I spent a much longer duration at peak form.

If you compare 2019 to 2018, it’s obvious that 2018 was a substandard year, and that 2019 was an immense improvement. My max fitness in 2018 was 66.3; in 2019 I spent six and a half months above that level, peaking in June at 94.3! And looking forward, I’ll begin January 2020 with a CTL of 79: higher than I ever reached in all of 2018!

A little further back, my previous all-time max fitness levels occurred briefly in 2016 and 2017 around 82.5 (follow the horizontal grey line on the chart). In 2019 I spent more than four months above that level!

In other words, it was a record-smashing year. Now let’s zoom in and take a closer look at 2019.

2019 Fitness Chart

First, note that grey line inside the chart. That’s my average fitness level from 2011-2018. Thanks to my winter training, I entered 2019 way above my usual fitness, and surpassed my typical midsummer peak form by the middle of February! And my fitness remained above average over the entire year.

Another big difference from last year is my consistency. In 2018, I couldn’t ride regularly, so its chart had lots of ups and downs. This year was steadier, only showing brief dips (for travel) in March and July, followed by that big dip in October, when travel, an achilles injury, and a cold kept me off the bike. I hopped back onto Zwift in November to build fitness for the 2020 season.

These two charts document a ton of hard riding; I could stare at them all day long.

And those green circles on the chart? Those represent my 100-plus-mile rides. That’s the next level of detail to talk about…

The Centuries

When asked what kind of cyclist I am, I say I’m a centurion. The most important and memorable target events of my year are centuries (100 miles) and 200ks (125 miles).

This year I demolished my previous mark (nine), logging no less than a record-shattering thirteen centuries over just six months! Two of those were longer 200ks, and one was my first-ever virtual century on an indoor trainer.

With seven of them crammed into an eight-week period in July and August, I relied on a well-planned, repeating pattern of: train, taper, ride your event, recover, and repeat.

My biggest disappointment of the year was that I missed Pittsburgh’s arduous Every Neighborhood Ride while doing another ride I’d already committed to.

Here’s my full list of centuries with comments and links to ride reports. Or you could watch my late-season summary video.

  • First Zentury (4/7)
    I extended one of Zwift’s 64-mile gran fondo events to complete my first-ever imperial century on an indoor trainer.
  • Sandy Lake 200k (4/13)
    Nearly my first outdoor ride was a 125-mile brevet: my longest ride in two years, confirming the effectiveness of indoor training.
  • Shades of Death solo (5/23)
    Rode a solo century from Pittsburgh to the West Virginia border to explore the Panhandle Trail and Shades of Death Road!
  • Escape to the Lake (6/8)
    Incomparable weather for the annual MS ride to Lake Erie, my only two-day event of the year.
  • PMTCC 3-State Tour (6/30)
    A foggy start gave way to a warm day for a familiar PMTCC ride to West Virginia and Ohio, with a thankfully modified route.
  • Absolutely Beautiful Country (7/14)
    Off to Akron OH for a club ride whose flat route was also altered this year, outrageously omitting the usual free ice cream rest stop!
  • Meanville Greenville 200k (7/27)
    Returned from a week of travel and dove straight into another long 200k brevet with the Pittsburgh Randonneurs.
  • Butler solo (8/4)
    Extended one of my long solo rides up Sun Mine Road, through Saxonburg to Butler and back.
  • Mon Valley Century (8/11)
    Enjoyed the return of an event that hasn’t been run since 2016 due to landslides; a third ride with a modified route (and poor support).
  • Four Rivers solo (8/19)
    My interwebs were down for 48 hours, so I went out and rode an easy solo century along Pittsburgh’s four rivers.
  • PedalPGH (8/25)
    As usual, I extended the PedalPGH metric to a full century, despite riding on an injured achilles and more ride organizer negligence.
  • Pedal the Lakes (8/31)
    Ended summer with a speedy and enjoyable PtL ride, completing 6 centuries in 6 weeks, and 8 in 10 weeks.
  • The Herd @ Leelanau Harvest Tour (9/14)
    The culmination of my season was a weekend trip to northwestern Michigan for an international gathering of Zwifters… and a scenic century alongside Lake Michigan.

Additional Highlights

One major development was my ability to train with a power meter, which allowed me—for the first time—to track my functional threshold power (FTP) and my power curve, which in turn helped me figure out my cycling “phenotype” as described in this blogpost. I also picked up and made good use of the defining treatise on the discipline: Allen & Coggan’s book “Training + Racing With a Power Meter”.

The biggest setback of the year was my late-August achilles injury, due to a combination of overuse and over-stretching. Although I completed three centuries while injured, it wouldn’t heal without time off the bike, which brought my season to an abrupt end. I’d hoped to do more easy autumnal riding, but there was very little of that.

I’ve already alluded to this year’s weather, which was simply amazing.

One fun tech project was creating the AlpenTimer, a Javascript webapp that helps you monitor and predict your pace up the Alpe du Zwift climb in order to earn the sub-60 minute achievement, break your own personal record, or just track your historical performance.

An artsy project was cutting hand-shapes out of Coroplast and spray-painting them cyan to mimic the blue “Ride On!” thumbs-up symbol that appears in Zwift’s virtual world. I hung a large one from the ceiling of my “pain cave”, and made a bunch of small ones for my jersey pockets.

One final disappointment was BikePGH’s Tag-o-Rama cycling/photography game. Regular participant Yale Cohen started harassing other players, driving many of them away. I don’t tolerate online abuse, so despite picking up 25 tags in 2018, I also quit Tag-o-Rama this spring.

Noteworthy Purchases

In the past, many of my “Additional Highlights” were things I bought, so I’ve carved out a new section to specifically highlight my new toys.

Most of this year’s purchases were on-bike equipment. A new Giro Aether MIPS helmet. New Prizm Road lenses for my Oakley Half-Jac sunglasses. A couple pairs of my favorite Craft Hale Glow bib shorts.

I ordered three new cycling jerseys, each of which comes with a unique story. I’m eager to show them off, but I'm still awaiting delivery of the last one, so I won’t say any more until an upcoming blogpost.

In terms of the bike, I got a Cygolite Hotshot 150 taillight, which crapped out after its first wet ride. I finally tested some Continental GP4000 tires I’ve had lying around; they were okay, but now I have to try their new GP5000s to see if they’re any improvement over my usual Michelin Power Endurance rubber.

I updated my Garmin bike computer with two new apps. I’m using Heart Rate Stress Score to replace Strava’s “suffer score” app, which became worthless when they changed its calculation. And I tried Multi-Page Race Notes for handy course notes, but fell back to old-school white electrical tape on my top tube.

The only noteworthy purchase that didn’t go on me or my bike was the aforementioned Allen & Coggan bookTraining + Racing With a Power Meter”.

List of Blogposts

And one final item before I look forward to 2020... It was a busy year here on ornoth-cycling.livejournal.com, with 24 ride reports and blogposts. Here’s the full list:

My 2020 Vision

That’s all she (he) wrote for 2019… What’s my outlook for the coming 2020 cycling year?

I don’t really expect to surpass my 2019 season, due to this year's confluence of circumstances. Will 2020 also feature great weather, limited travel, no job commitment, and an understanding partner who will loan me her car to get to distant rides? And can I continue to evade the growing concerns of age and health?

I’ll certainly continue Zwifting through the early season in order to hit the ground running once temperatures start to warm again. And I’m starting the new year at an even higher fitness level than 2019!

I’ll mostly target the same events I do every year, but there’s one known wrinkle in next year’s schedule. Instead of repeating the Leelanau Harvest Tour, next year’s Herd gathering will be outside Toronto, at the Epic Tour. That’s geographically convenient, and their 180km route will be the perfect distance for a September ride.

Other than that, 2020 will probably look an awful lot like 2019, and I have no problem with that whatsoever, since 2019 was one of my best years on the bike.

Bring it on!

Frequent topics