You should probably ignore this post: The Case for Contentment

Not everyone needs to be ambitious. Not everyone needs to start 10 businesses, write 10 blogs, and double their income every year. It is most dignifying to enjoy a full life with contentment, rather than optimization. In fact, you should ignore this social media post and get back to enjoying what brings you fulfillment.

I’m naturally a high-energy person. I switch my attention often. I start more projects than I finish.

Social media creates virality to please our interests. We look to others as an ideal of what we should strive to be. So, I follow the ones doing too much to get inspiration and motivation. I saw success as optimizing life: do the most things in the most efficient amount of time.

But for me, this is a dangerous spiral. Social media cares about clicks and attention, not about providing fulfillment. So, I feel self-conscious about not doing enough when my energy runs out. I disparage myself when I’m selfish, lazy, or resting in contentment. Then I feel worse about not optimizing every second. Is this feeling of disappointment my purpose in life?

We don’t see the ones who don’t post on social media.

What are they up to? Are they happier? They may be resting in their contentment. At the end of the day, self-acceptance provides more fulfillment than optimization. I realized it’s not necessary to push my tendency of action toward its conclusion. Resting is good. In fact, it may be better for me.

This has changed my approach to life. I spend my attention in the present, keeping in mind the future and learning from the past. I pay attention to my health. I simplify my goals. I change my behavior based on my current state, not what I think I need to do. I accept myself when I’m feeling selfish, lazy, and content. As a result, this means turning off the noise of social media to ignore the siren’s call to do more, more, more.

Appreciating simplicity from afar at the Georgia O’Keeffe Museum

Wow, did Georgia O’Keeffe handle her color!

We visited the Georgia O’Keeffe Museum in Santa Fe, NM. I highly recommend seeing it. The Museum was comprehensive and detailed, showing us layers of O’Keeffe beyond her paintings. For that reason, I feel like I know her as Georgia.

I was struck immediately by the nuance between Georgia’s gradients of color, attention to detail, and growth in artistic development over time. In the museum, we learned how Georgia began with formal art education in the early 1900s before breaking into abstraction. She attended to the small things, like the exact hues and shapes of simple objects like the center of a flower.

“Pelvis Series, Red with Yellow” by Georgia O’Keeffe (June, 2022)

She painted in New York City and met her partner there, but eventually left into nature at Lake George, New York. Then, she went further. She moved her life to beautiful, rural northern New Mexico. She had to experience the world at a slower pace – her own pace. Nature “speaks” to her.

As I gazed at the northern New Mexico landscapes, I was curious: how was Georgia a representation of pure American Modernism? She was capturing the wondrous landscape the local people saw every day. But, that’s the point: American Modernism, led by Georgia as its mother, aimed to show reality in an overly-industrialized era. Painting New Mexico flora, fauna, and daily life gave modern people a glimpse into a different reality outside the confines of busy Times Square or the four walls of a factory.

Natural beauty, and also Grant and Sahyli at Organ Mountains (June, 2022)

The previous week, we had driven south to Alamogordo and the White Sands National Park. During that three hour drive, we saw so many images Georgia could have painted. Natural beauty is commonplace here. We can thank Georgia for sharing it with the American people when we needed it most.

But she did more than share it: she connected our intimate, familiar relationship with nature to the divine – going beyond what exists toward what’s possible. This is where Georgia’s art shines. She had been painting the bones of animals in a way that brought them to life. She later evolved into gazing through the holes of pelvis bones and painting what she saw on the other side. She painted divine color schemes and shapes through the lens of the simple, wild beauty in front of her. These paintings are beautiful. They remind us that even the daily sunlight can be divine when viewed through the lens of “slow,” “compassion,” and “appreciation.”

She captured what sunlight should be: appreciated. She captured the shape of what “blue” would be if it were a shape.

The world enjoyed 98 great years of Georgia before she passed away in her home in New Mexico.

“Blue II” by Georgia O’Keeffe, and also some guy (June, 2022)

It’s nice when the story has a nice ending that wraps up. But, that’s rarely the case. Art mimics life, and life mimics art. So, both moves on. The way to subvert American Modernism is to subvert Georgia O’Keeffe and her art. One way to do this would be to pretend to paint a landscape that isn’t a landscape. Or represent the shape of “blue” but paint it “red.”

I have to respect my contentious to subvert such a great artist as Georgia. Because although we need to appreciate her work, we need to see it as foundational but not the end. We can always extend, expand, condense, abstract, or even subvert the great works of our time. We must. Because that’s what Georgia did.

Georgia O’Keeffe photo looking like the badass she was (June, 2022)

Goal Achieved: The Sub-4-Hour Marathon

A few months ago, I set a goal to run a marathon (26.2 miles or 42.2 km) in under four hours. That would require a pace of 9:09 minutes per mile (5:41 per kilometer), including rest stops. I did a lot of research and put together a training plan. I focused on my diet, nutrition, and daily lifestyle. I incorporated certain types of workouts that would benefit my faster tempo speed. For Ironman training, I hadn’t been running with a high heart rate. But in my previous failed sub-4-hour marathon attempt, my heart rate was too high for too long. So, this time I worked on improving heart rate efficiency.

Activity tracked in Garmin Nov, 2021

In the end, I achieved the goal! I want to thank Taylor H. for his huge help during the pivotal 3/4ths of the race. He ran with me and handed me bottles when I was feeling down. Thank you!!

This attempt was one of the hardest things I’ve ever done. One way to visualize it is by Relative Effort (RE). Strava calculates Relative Effort from a variety of metrics like heart rate and pace. Out of all 1,200+ activities I have recorded on Strava, this sub-4 hour marathon was my highest relative effort by a massive margin.

406 Relative Effort: The sub-4-hour marathon

330 RE: 84 mile hot, hilly ride
311 RE: Failed sub-4-hour marathon
249 RE: 107-mile hard rainy ride
245 RE: My first marathon
244 RE: Another 100-mile ride

Strava Relative Effort of Grant by Nov, 2021 (Strava file here:

I went through stages of grief during this race. To better understand the experience, I’ve summarized each mile of the race.

Mile 1: LET’S GO!!! I just finished listening to a David Goggins’ speech I was super emotional at the start.

Mile 2: I realize now that I forgot to pee before starting the race.

Mile 3: Selecting my music: epic Christian hits to go deep outside of myself.

Mile 4: First time I stopped for a drink of energy/electrolyte mix. Feeling solid.

Mile 5: My fastest mile by effort. Settling into a good pace.

Mile 6: My neighbors raking the leaves are looking at me funny after seeing me six times in the last hour.

Mile 7: I took a longer break here to pee and refresh with my drink mix and ginger tea. My stomach was feeling good. I took off some warm outer layer clothes, like my hat and gloves, as I warmed up.

Mile 8: One hour done. Feeling way better here than I did last time.

Mile 9: My heart rate starts to rise from my all-day pace into my tempo pace. From here onward, I’m burning more than I can replenish. That means the clock starts ticking on my energy reserves.

Mile 10: I start to get that small voice at the back of my mind telling me I’m uncomfortable.

Mile 11: The last mile that I run during which I feel “good.”

Mile 12: This is when the run starts getting difficult. I’m barely halfway and I feel like I’ve been running forever.

Mile 13: At the halfway point, I feel a boost of positivity, but this is short-lived. I’m under pace, but not by much. I bought myself a bit of wiggle room by running faster than I need to. But I’m getting tired.

Mile 14: The voice gets louder, yelling at me that I’m tired. But I get a savior: Taylor texts me that he’s on his way, and to stay strong. I shake my head in disagreement.

Mile 15: Taylor joins me for this mile. I can barely talk or breathe. I’ve still got my headphones in. We run together and blast out a solid mile time.

Mile 16: Taylor lets me run alone and instead manages my water station. Every mile I complete the loop, he hands me a bottle so I can sip and jog without stopping. I drink my mix according to the plan of one bottle per hour. I continue sipping lemon & ginger tea to help my stomach settle.

Mile 17: The wall gets bigger and my legs are heavy. I push a last effort to stay under pace, but I can’t. I fall backwards into stages of grief.

Mile 18: Grief stage 1: Denial. I have more than an hour remaining. My pace is slowing. I push harder, worrying that I’m about to hit the same wall that destroyed me last time at Mile 19.

Mile 19: Grief stage 2: Anger. I am livid at myself. This is the first mile during which I can’t run under pace. My speed starts slowing. Negativity washes over me like a deluge telling me that I won’t make it. I cry weakly.

Mile 20: Grief stage 3: Bargaining. I tear apart my old self and begin from the start. I don’t care about maintaining a pace. I care about finishing under 4 hours. I will do whatever it takes. I start doing mental math at how slow I’m going: calculating how much time I can lose on each mile and still make under four hours. Taylor has to leave so I’m on my own for aid.

Mile 21: Grief stage 4: Depression. For the last six miles, my heart rate had entered threshold pace. This is like putting the clock on my energy reserves into overdrive. I now have minutes, not hours, of energy left. I start to lose touch with reality; in a way the connection between my perception and surroundings starts to “melt.” I wonder if I can live with myself if I can’t finish. The reality of failure starts to make more sense.

Mile 22: Grief stage 5: Acceptance. I’m at my lowest. I would cry but I don’t have the energy to. I’m in a unique kind of pain. This pain is not sharp and obvious. It’s like the earth has ratcheted up the force of gravity pulling down on me. I can’t stay upright. Roots and molasses rip me downward. I know only one thing: I have to keep moving forward.

Mile 23: I build upon my acceptance. The clock on my energy has entered hyperspace as my heart-rate enters super-threshold. I am working the hardest that I’ve ever worked before. I switch my playlist back to David Goggins, looking for inspiration. But I feel distant from it.

Mile 24: I count every step, minute, and second until my torture is over. This is my slowest mile by time, but my hardest perceived effort so far. I finish my last drink bottle and throw it to the ground. Nothing else can help me now.

Mile 25: Wait, there it is. I can see the light now. The pacing math becomes easier. I see now how I can maintain this exact pace without pushing more, and still finish under four hours.

Mile 26: But it’s going to be close. I push harder again. My mind starts to reconnect back with my body and surroundings as I realize that I can do this. I count each .01 mile interval and I look down at my watch every couple of steps. I repeat to myself that I have to finish. I have to do it.

Mile 0.2: I push my pace to a sprint, which is the hardest I can run. This is the longest two minutes of my life. The only thing I’m focused on is staying upright. I stare down at my watch as the distance creaks higher.

Finished. I see the watch hit 26.22 and I’m done. I collapse onto the ground. I thank God and I am grateful to be done. I text Sahyli and text Taylor and call my brother Peter.

It’s over. A few minutes pass by and I am heaving air through my lungs.

I turn over. Struggling, I stand upright.

It bent me; it broke me; but it did not kill me

I completed the Ironman Wisconsin Triathlon race on September 12, 2021 with a time of 15:30:46.

I had to dig deep to finish. I made all the excuses and hit all the walls. I was ready for the race to be over around mile 30 of the bike ride, with 80 more miles to go plus the marathon remaining. And there were the pangs of soreness and loneliness and weakness while running in the dark past 10:00pm: the feeling of molasses when the legs just grind down to a walk.

I learned that everyone hits waves of difficulty during the Ironman. It’s that feeling of deep exhaustion that weighs down your attitude. I hit the first big wave around mile nine, when my pace slowed as my effort stayed the same. I was trying harder to run faster, but I was going slower. My heart rate was dropping, my glucose levels flatlining, my stomach turning upside down. I still had to complete lap one while running. I watched others run by me who were finishing. Meanwhile I had another 13-mile lap. My wife and brother were cheering me on as I started that 2nd lap. I told them I’m going to finish this motherfucker. I told myself I had to finish it now, today, so I would never have to do it again. I vomited on State Street a short while later in front of some college kids and families. Then I kept going.

I knew that my training increased my physical fitness. Training beats back The Wall so it hits later in the race, closer to the finish. But sooner or later, it hits. The Wall is the biggest one that finally breaks you.

I remember around mile 23, hitting the biggest wall of my entire athletic career. I’ve never been hit with a wall like that. My past races were short enough that the breaking point hits differently. But this one was unique: it was a slow creeping of vines out of the abyss, grasping and constricting my limbs until I was chained in place. My vision and senses grew distant as I started to lose touch with reality. I had to focus 100% of my attention on moving my limbs. I was losing control of myself.

How do you go through The Wall that breaks you?

The answer for me is to put one foot in front of the other. The answer is to not stop. I stop when I’m done. I told myself to finish it now so I’d never have to do it again.

It broke me not only because of the physical toll, but also because of the mental toll. By that point, I started failing all the mini-goals I had set for myself. Don’t walk between aid stations: failed. Don’t say negative thoughts: failed. Run an average pace-per-mile: failed. My mental attitude starting unraveling. But not completely, because there was still one goal left: finish within the time limit. I had to concede the little losses in order to win the war. I talked to both angels and demons in the last couple of miles, but my legs never stopped.

By the time I crossed the finish line, I didn’t feel strong and accomplished. I felt broken and weak. The race preparation over the last two years had taken my time, attention, and comfort. And today it was literally killing me. But it didn’t kill me. And that’s the only reason I finished.

I had spent the first couple of miles of the run imagining what I would do when I crossed the finish line. I thought I would let out a guttural roar at the top of my lungs. Over the course of the marathon, slowly I lost interest. By the time I pushed through the chute down the finish line and into the bright lights… by the time I heard my name called over the loudspeaker by legendary Mike… I gave a grin for the camera and then hobbled across the finish line. I let out a weak “Yes” to myself and started crying. The weight of years slipped off of me and I felt empty. I wasn’t even hungry. I didn’t want to celebrate. I wanted a shower and bed.

It was truly an amazing experience in total: pushing myself to my absolute limit of physical and mental capacity. I feel very close to the entire day. I get emotional when I think about it. But completing an Ironman Triathlon on one particular day was less of a stepping stone than I thought it would be.

But I don’t feel different. I truly feel that I was changed in small increments over the last two years during my training. That day, I thought I would feel strong. In reality, the race showed me how weak I could become when I am broken. But it didn’t kill me. I’m strong in how much brokenness I can handle. And even when I was broken and crawling on mile 23, I kept going. So in fact, this shows strength.

The last two years have been an intense ride. There was an easter egg in my training sessions that I posted to Strava:

I listed every excuse to NOT train. To NOT do the Ironman. To NOT push myself. Every workout that contributed to my training, I labeled with an excuse like “Stop Pre.”

In total, every training session was like the race itself. Every stroke, every pedal, and every step broke me down further and further into the deep dark of excuses, weakness, and death. Now I can grasp the entire list of every training session and every excuse in my two hands, and then smash them to dust. Every excuse along the way could not stop me, just like every step I needed during the race could not kill me. I can look back with pride at all the workouts I did, reminding myself that I didn’t succumb to the excuses. My goal remained. I was beaten and broken for two years plus 15 and a half hours, but I still made it out alive.

To see all these excuses at once, here’s a list of all my workouts that contributed to my Ironman Triathlon. There were others that I didn’t name with “Because,” especially in early 2020. So it’s not every workout. But what remains is a list of 506 workouts and 506 excuses. But I bolded some of my favorite titles.

Now the question is, what’s next?

Aug 27, 2019Because what if I give up?Run
Aug 28, 2019Because I had too many Sweet Martha’s cookies last nightRun
Aug 28, 2019Because Happy HourRide
Aug 29, 2019Because I’m too hungryRide
Aug 29, 2019Because I’m tiredRun
Aug 30, 2019Because I’m too busyRun
Aug 31, 2019TK: Because I shouldn’t push itRide
Sep 1, 2019Because I’d rather snoozeRun
Sep 3, 2019Because I’ll get stuck in trafficRun
Sep 4, 2019Because I’m soreRide
Sep 4, 2019Because I’m tightRun
Sep 5, 2019Because I forget how to swimRun
Sep 5, 2019Because I got a bloody nose (not pictured)Ride
Sep 6, 2019Because I must’ve tweaked somethingRun
Sep 7, 2019Because it’s too steepRide
Sep 8, 2019Because it’s rainingRun
Sep 10, 2019Because I don’t have timeRun
Sep 11, 2019Because I just swamRide
Sep 11, 2019Because I’m about to rideSwim
Sep 12, 2019Because my heart rate tracking is not accurateRide
Sep 12, 2019Because thunderstormsRun
Sep 13, 2019Because I woke up lateRun
Sep 14, 2019Because it’s in the 40sRide
Sep 15, 2019Because I usually sacrifice form for speedRun
Sep 16, 2019Because there’s no place like homeRun
Sep 18, 2019Because of standing all dayRun
Sep 20, 2019Because my flight was delayedRide
Sep 20, 2019Because my hip flexors are tightRun
Sep 20, 2019Because no GPSRun
Sep 21, 2019Because we need to get a couchRide
Sep 22, 2019Because I didn’t know you could lace your shoes in a way to increase ankle supportRun
Sep 23, 2019Because it’s MondayRide
Sep 23, 2019Because of weak rotator cuffsSwim
Sep 24, 2019Because of detoursRide
Sep 24, 2019Because bricking makes for wobbly legsRun
Sep 25, 2019Because warm-ups take longer and longerRun
Sep 25, 2019Because I’m ready for rest daySwim
Sep 27, 2019Because I got a flu shotRun
Sep 28, 2019Because TKRide
Sep 29, 2019Because fireball, dancefloor, and boatsRun
Sep 30, 2019Because it’s too nice not to rideRide
Oct 1, 2019Because I’m already soaked, so might as wellSwim
Oct 3, 2019Because I just had dinnerSwim
Oct 3, 2019Because it’s too lateRun
Oct 4, 2019Because it’s too easy to blame the technologyRun
Oct 5, 2019Because the Coastline Paradox is a thing apparently (FitBit 7.31 mi = Strava 8.66 mi)Run
Oct 6, 2019Because of that wind though!Ride
Oct 7, 2019Because my light ran outta juiceRide
Oct 8, 2019Because winter is coming, but not todayRide
Oct 8, 2019Because why start now when I could start later?Run
Oct 11, 2019Because say it ain’t snow, Joe!Run
Oct 13, 2019Because of the Vikings celebrationRun
Oct 14, 2019Because now it’s actually coldRide
Oct 15, 2019Because I hate the 5am alarmRun
Oct 16, 2019Because it’s just a quickieRun
Oct 18, 2019Because it’s hard to say “no”Run
Oct 19, 2019Because I can’t Stillwater in less than 3 hoursRide
Oct 20, 2019Because I am out of electrolytesRun
Oct 22, 2019Because lobster ravioli is waiting for meRide
Oct 23, 2019Because you have to keep your steps lightRun
Oct 23, 2019Because all I need is SUN: Sleeves, Umbrella, and Night vision gogglesRun
Oct 25, 2019Because the best laid plans and mice and men oft go awryRun
Oct 26, 2019Because I’m right on the edge of zone 2Ride
Oct 27, 2019Because you gotta have a planRun
Oct 28, 2019Because it’s a homemade brickSwim
Oct 28, 2019Because it’s too perilousRide
Oct 29, 2019Because I finally got warmed up after the first 12.56 miles or soRide
Oct 30, 2019Because it’s back into the belly of the beastRun
Oct 30, 2019Because the pool is emptySwim
Oct 30, 2019Because it’s the 25th hourRun
Nov 1, 2019Because this month has to be “no snooze November”Run
Nov 2, 2019Because my feet turned to ice blocksRide
Nov 3, 2019Because of dogs, dogs, dogs!Run
Nov 5, 2019Because it takes more than hail to cancel a rideRide
Nov 4, 2019Because I need more lunchSwim
Nov 5, 2019Because it only takes 10 minutes until mediocrity gives upRide
Nov 5, 2019Because I was ready for this one to be over before it startedRun
Nov 6, 2019Because it’s a bit slipperyRun
Nov 6, 2019Because it’s hard to stay upright while 2-beat kickingSwim
Nov 8, 2019Because will is a muscleRun
Nov 9, 2019Because how did I forget my padding??Ride
Nov 10, 2019Because it’s ice in snow’s clothingRun
Nov 11, 2019Because it’ll take months before improvements comeSwim
Nov 12, 2019Because vroom vroomVirtual Ride
Nov 12, 2019Because I need a trainer tireVirtual Ride
Nov 12, 2019Because I saw it happen todayRun
Nov 13, 2019Because it’s a snow daySwim
Nov 14, 2019Because other people’s reasons for your insanity wear off after 2 months (3.73 actual miles at 10min pace)Run
Nov 15, 2019Because it’s like a tattoo. Even if you don’t see it, it may still be thereRun
Nov 16, 2019Because beware the coyotesRide
Nov 18, 2019Because was the extra Friendsgiving pie slice worth it?Run
Nov 18, 2019Because I have water in my gogglesSwim
Nov 18, 2019Because did you know the average bladder holds up to only 20 fl oz?Ride
Nov 20, 2019Because these twoRun
Nov 21, 2019Because if you can get through to doing things that you hate to do: on the other side is GREATNESS. Thank you, Goggins.Run
Nov 20, 2019Because float like a manta, sting like a jellyfishSwim
Nov 23, 2019Because go east, young oneRun
Nov 24, 2019Build Me Up – Sneaky – Because today I’m fighting somethingVirtual Ride
Nov 24, 2019FTP Test (shorter) – Because 318 never felt so goodVirtual Ride
Nov 25, 2019Because my whole body is tired todaySwim
Nov 26, 2019Because it’s a mini rest dayRun
Nov 26, 2019Build Me Up – Zone Benchmarking – Because of things that go creak in the bikeVirtual Ride
Nov 27, 2019Because brace yourselvesRun
Nov 27, 2019Build Me Up – Pedaling Drills – Because why not?Virtual Ride
Nov 28, 2019Build Me Up – Devedeset – Because gobble gobbleVirtual Ride
Nov 29, 2019The McCarthy Special – Because I’m trigger happyVirtual Ride
Dec 1, 2019Build Me Up – Red Unicorn – Because I need a fan and a towelVirtual Ride
Dec 3, 2019Because ice skating in the dark without skates is actually incredibly good training for mental focus and light cadenceRun
Dec 2, 2019Because it’s a botherSwim
Dec 3, 2019Because treadmills and I typically disagreeRun
Dec 5, 2019Because if you can’t go slow, you can’t go fastSwim
Dec 8, 2019Because of creaky kneesRun
Dec 10, 2019Because I thought about running outside for a secondRun
Dec 12, 2019Because of allergiesSwim
Dec 13, 2019Build Me Up – Yellow Unicorn (only half because tacos)Virtual Ride
Dec 15, 2019Because shoelaces are for finishersRun
Dec 15, 2019Because I could be watching footballSwim
Dec 15, 2019Because no skippingRun
Dec 17, 2019Because the pool is under maintenanceRun
Dec 17, 2019Because of prideRun
Dec 19, 2019Because I should fight evil until I can’t. Then, run.Run
Dec 21, 2019Because the tracks may be gone, but the legacies remainRun
Dec 22, 2019Because arm blasters beats rest dayRun
Dec 23, 2019Because if you know, then you knowRun
Dec 26, 2019Because Connor and I had some catching up to doRun
Dec 30, 2019Because literal ice skating is better than the treadmillRun
Dec 31, 2019Because how else will I practice water-in-goggles drillsSwim
Jan 1, 2020Because my phone froze to death at 38% from exposureRun
Jan 1, 2020Because God witnessed me, even though Strava didn’tRun
Jan 2, 2020Because it’s New Year’s at the gymSwim
Jan 4, 2020Because I’m at 18,000 steps already…Run
Jan 6, 2020Because you can’t forget to logSwim
Jan 9, 2020Because I fought sharksSwim
Jan 11, 2020Because it feels like a dreamRun
Jan 12, 2020Because why walk when you can take the armored motorcade to the helipad?Run
Jan 13, 2020Because always look both waysRun
Jan 15, 2020Because of a scratchy throatRun
Jan 17, 2020Because it’s a bit too cold outRun
Jan 18, 2020Because what if I forget to enjoy the journey?Run
Jan 19, 2020Because I need a double of Zone 2, over iceRun
Jan 21, 2020Because burns take a long while to healSwim
Jan 22, 2020Because I already summited Alpe Du ZwiftRun
Jan 24, 2020Because double in the lane makes for a bumpy rideSwim
Jan 25, 2020Because nothing like stepping in a big ole puddle in the first 30 secondsRun
Jan 26, 2020Because never skip the cooldownRun
Jan 27, 2020Because there are ants by the pool!Swim
Jan 29, 2020Because what if I can’t squeeze in the timeRun
Jan 30, 2020Because who invented this drill, anyway?Swim
Feb 2, 2020Because I cannot part the puddlesRun
Feb 3, 2020Because I’m wobbling hard right nowSwim
Feb 5, 2020Because transition has 11+8 steps. How can I remember 19 steps?Run
Feb 8, 2020Because the goggles go under the capSwim
Feb 8, 2020Because apparently one leg is longer than the otherRun
Feb 11, 2020Because today I need a revivalRun
Feb 11, 2020Because the couch is callingSwim
Feb 13, 2020Because there’s an exam on SaturdaySwim
Feb 16, 2020Because there are 24 hours in a dayRun
Feb 17, 2020Because there are storms comingSwim
Feb 19, 2020Because a little less conversation, and a little more lower my heart rateRun
Feb 20, 2020Because restructure, rinse, repeatSwim
Feb 21, 2020Because of achy legsRun
Feb 23, 2020Because surprise partiesRun
Feb 25, 2020Because blink and you’ll miss itRun
Feb 25, 2020Because suck it inSwim
Feb 26, 2020Because shifting rest dayRun
Feb 27, 2020Because I don’t have a swimmer’s bodySwim
Mar 1, 2020Because yesterday was bonkersRun
Mar 2, 2020Because it’s almost beach weekSwim
Mar 10, 2020Because there are many shades of blueSwim
Mar 11, 2020Because of morning showersRun
Mar 12, 2020Because salt water is a good way to lose a pair of contact lensesSwim
Mar 13, 2020Because I am who you say I amRun
Mar 14, 2020Because la vida es un carnivalRun
Mar 18, 2020Because the pool is closedRun
Mar 22, 2020Because the events will probably be canceledRun
Mar 24, 2020Because of JockoRun
Mar 26, 2020Because of social distancingRun
Mar 27, 2020Because a little detour for us can mean the world for someone elseRun
Mar 29, 2020Because it’s another brick in the wallRun
Mar 31, 2020Because my hips don’t just “release”Yoga
Apr 5, 2020Because everything in moderation, including moderationRun
Apr 6, 2020Because warriors aren’t staticYoga
Apr 9, 2020Because of virtual family happy hourRun
Apr 10, 2020Because it’s GoodYoga
Apr 11, 2020Because some habits never changeRide
Apr 12, 2020Because pasta has many shapesRun
Apr 13, 2020Because what’s good doesn’t feel good at the timeYoga
Apr 15, 2020Because I can’t touch my toesYoga
Apr 15, 2020Because I need a spinVirtual Ride
Apr 19, 2020Because this is the only way to watch NetflixVirtual Ride
Apr 21, 2020Because I need extra recoveryVirtual Ride
Apr 21, 2020Because leave no stone unturnedRun
Apr 22, 2020Because the quarantine bod is out in full forceRun
Apr 25, 2020Because 100+ cadence in the drops = drills over frillsRide
Apr 25, 2020Because my first mile heart rate is too damn highRun
Apr 26, 2020Because this half, too, shall passRun
Apr 27, 2020Because make sure to hold your breath as you passRide
Apr 28, 2020Because when I woke up sore I knew I’d go to sleep soreRun
Apr 28, 2020Because the wind feels like winter again. Should’ve worn something, anything else.Ride
May 1, 2020Because factor out the transportation timeRide
May 1, 2020Because of my Hesiod seminarRun
May 2, 2020Because I’ll have one for takeout, pleaseRide
May 3, 2020Because ice cream is not a good pre-workoutRide
May 3, 2020Because the 70.3 is postponed anywaysRun
May 5, 2020Because yesterday is too easy to blameRide
May 5, 2020Because it feels just like I’m riding on broken glassRide
May 5, 2020Because new supplements, new gutRun
May 6, 2020Because my headphones are broken!Virtual Ride
May 7, 2020Because due in 10 minutes? Do in 10 minutes.Run
May 9, 2020Because everybody in the house is streaming HD videoVirtual Ride
May 10, 2020Because that warm-up was a bit muchRun
May 11, 2020Because Plato just hits differentlyRide
May 12, 2020Because I cry out for glucose right around 1.5 hoursRun
May 13, 2020Because a little squeak gets louderVirtual Ride
May 15, 2020Because that was the lowest heart rate brick I’ve ever doneRun
May 15, 2020Because what if the big boy pants don’t fit?Virtual Ride
May 16, 2020Because I could just sleep inRide
May 17, 2020Because I thought the pools were closedRun
May 18, 2020Because that gust almost knocked me outRide
May 18, 2020Because one thing leads to anotherRun
May 19, 2020Because finalsRide
May 19, 2020Because of intermittent fastingRun
May 20, 2020Because footwearRun
May 23, 2020Because all cleaning and no riding makes Grant a dull boyRide
May 24, 2020Because the early bird gets the rainHike
May 25, 2020Because everyone is outRide
May 25, 2020Because is any day really extraRun
May 26, 2020Because beat the rainRide
May 26, 2020Because the Simpsons already did itRun
May 30, 2020Because the nation is looking to us for how to actRun
May 30, 2020Because there’s imbalanceRide
May 31, 2020Because the line separating good and evil passes through every human heartRide
Jun 1, 2020Because why not the longest run of the year be on the hottest day of the yearRun
Jun 3, 2020Because blistersRide
Jun 3, 2020Because long term or short term?Run
Jun 5, 2020Because it’s quiet, too quietRide
Jun 6, 2020Because life isn’t a boxRun
Jun 7, 2020Because it’s a headwind or heatwave: pick your poisonRide
Jun 8, 2020Because waffles are part of a balanced diet, right?Ride
Jun 12, 2020Because there’s nothing like a new shoe feelingRun
Jun 13, 2020Because something is grinding and it ain’t coffeeRide
Jun 14, 2020Because I resolved the grinding but the popping remainsRide
Jun 14, 2020Because at least the popping isn’t in the kneesRun
Jun 15, 2020Because the Garmin body battery makes me feel like a robotRide
Jun 16, 2020Because there be Zombies, so Run!Run
Jun 19, 2020Because holidays give us a reason to rememberRun
Jun 20, 2020Because the new kit is freshRide
Jun 22, 2020Because rest days beget rest daysRun
Jun 23, 2020Because Velofix comes in the clutchRide
Jun 24, 2020Because school is re-canceledRide
Jun 24, 2020Because check that: school is un-re-canceledRun
Jun 25, 2020Because it’s just a few seconds longerRide
Jun 25, 2020Because next stop, VirginiaRun
Jun 28, 2020Because that’s 2L of water in 45 minutes ü•µRide
Jun 29, 2020Because some things stay the same, like construction on CustisRide
Jun 30, 2020Because don’t look backRide
Jul 1, 2020Because so hot the earbuds are falling outRun
Jul 3, 2020Because it only feels like a gazillion degreesHike
Jul 6, 2020Because of overnight drivesRide
Jul 6, 2020Because no aero bars on my BrooksRun
Jul 7, 2020Because there’s nothing like turning around and all the trees look the sameSwim
Jul 8, 2020Because I haven’t lifted in monthsRun
Jul 9, 2020Because the stones don’t worry me; the empty space doesRide
Jul 12, 2020Because tomorrow will be sorer than todayRun
Jul 13, 2020Because my broken bottle and broken holder can only last so longRide
Jul 15, 2020Because now it’s the backs of my hips that get tightRun
Jul 16, 2020Because some doors close; some doors openRide
Jul 17, 2020Because some days I feel like this carRun
Jul 18, 2020Because it’s cleaning & anniversary dayRide
Jul 18, 2020Because the path is well traveledHike
Jul 21, 2020Because it’s the first ride after the head bangRide
Jul 22, 2020Because the fruits must be crazy!Ride
Jul 25, 2020Because it’s the humid-er remix to Giro de PepinRide
Jul 26, 2020Because more water requiredRun
Jul 28, 2020Because all it takes is one Evil CorpWalk
Jul 28, 2020Because it’s rabbit seasonRide
Jul 29, 2020Because GAFA got shook todayRun
Jul 30, 2020Because it’s Randonautica vol. #1: “Refreshing”Ride
Jul 31, 2020Because it’s Randonautica#2: “Attractor”Run
Aug 1, 2020Because I would ride 100 miles and more: 2 flats, a spectacular crash, and many Tour De Tonka wannabe riders.Ride
Aug 2, 2020Because it’s after the factHike
Aug 3, 2020Because the oven is getting replacedWalk
Aug 4, 2020Because every day is day oneRun
Aug 4, 2020Because the wheels come offRide
Aug 5, 2020Because we hurry up to waitRun
Aug 6, 2020Because it’s too “intense” – Randonauting #3Ride
Aug 6, 2020Because there are only 48 half-hours in a dayRun
Aug 6, 2020Because we have a 23:19. Rando #4: Simple.Ride
Aug 7, 2020Because news will be newsRun
Aug 9, 2020Because you should be dancingRide
Aug 10, 2020Because who needs sleep when there’s fun to be had?Run
Aug 10, 2020Because a watched tire never popsRide
Aug 11, 2020Because the world goes by with our earbuds inRun
Aug 11, 2020Because the cities are flat they said, there aren’t any hills they saidRide
Aug 12, 2020Because the gateway to happiness is a moving targetRun
Aug 12, 2020Because there are miles to go before we sleepRide
Aug 14, 2020Because the I Do is affordableRide
Aug 15, 2020Because it’s a toss up: post hike burger or post hike remove the bootsHike
Aug 16, 2020Because I’ve got to keep up with KennyRun
Aug 17, 2020Because what if biking is more funRun
Aug 20, 2020Because ofRide
Aug 20, 2020Because worship only the sacrificeRun
Aug 22, 2020Because canceled plans = free timeRide
Aug 24, 2020Because out of serviceRun
Aug 24, 2020Because it’s better left unsaidRide
Aug 25, 2020Because on Tuesdays, we forget headbandsRun
Aug 25, 2020Because it smells like paintRide
Aug 26, 2020Because it’s a small world!!!Run
Aug 27, 2020Because curfewRide
Aug 29, 2020Because I could be watching Le TourRide
Aug 30, 2020Because you know I had to try itRun
Sep 1, 2020Because what if you had one gearRide
Sep 2, 2020Because make it countRide
Sep 8, 2020Because today is the first day of winterRide
Sep 10, 2020Because maybe we’ll just order pizzaRide
Sep 12, 2020Because it’s time to cash the checksRide
Sep 13, 2020Because of the 4.5 hour Zoom seshRide
Sep 15, 2020Because it’s so catchyRide
Sep 17, 2020Because we’ve entered the AlpesRide
Sep 19, 2020Because if Pogacar can do itRide
Sep 21, 2020Because fall is hereRide
Sep 25, 2020Because I could use a day offRide
Oct 25, 2020Because of symmetryWalk
Oct 30, 2020Because the fire alarm takes priorityWalk
Nov 1, 2020Because it’s 75 degrees… Inside my jacketWalk
Nov 21, 2020Because it’s the first breath after shaveWalk
Nov 25, 2020Because if you have to trip and fall, go the long way roundWalk
Dec 5, 2020Because the final stretch is always the best/worstWalk
Dec 6, 2020Because you can’t hide from the clockRun
Dec 8, 2020Because I need boostRun
Dec 9, 2020Because I thought it was shorts weatherRun
Dec 11, 2020Because some fears are rationalRun
Dec 13, 2020Because I’m incomplete without my phoneRun
Dec 16, 2020Because it’s DIY cryonics out hereRun
Dec 17, 2020Because one day I’ll learn the difference between St. and Ave.Run
Dec 19, 2020Because what if I repeat myself?Run
Dec 21, 2020Because futility is resistanceRun
Dec 22, 2020Because tonight’s gonna be a long oneRun
Dec 24, 2020Because everyone has an angel. Wendel skidded out onto the median and after taking food to friends. Madison stopped by and offered a cable. We pulled Wendel out and he got home safe.Run
Dec 25, 2020Because a time trial is better when it’s summerRun
Dec 27, 2020Because it’s impossible to get the sand outRun
Dec 28, 2020Because doing nothing is scarierRun
Dec 30, 2020Because this light takes 5 minutes to changeRun
Jan 2, 2021Because the cobwebs are dustyVirtual Ride
Jan 2, 2021Because the gps caught me skatingWalk
Jan 11, 2021Because I wasn’t fittedRide
Jan 22, 2021FTP Test: 343W, 3.61 W/kg – Because you’re closer than you knowVirtual Ride
Jan 30, 2021Because it’s all a game that can be made or un-madeRun
Feb 5, 2021Because we’re out of vegetablesVirtual Ride
Mar 4, 2021Because the niche is nailedRun
Mar 4, 2021Because it feels like FridayRun
Mar 7, 2021Because rough living grates on meRun
Mar 9, 2021Because I’m already sunburntRun
Mar 11, 2021Because we skipped right to autumnRun
Mar 13, 2021Because the shoes haven’t arrivedVirtual Ride
Mar 13, 2021Because the elevator is so convenientWalk
Mar 13, 2021Because no coffee on race dayRun
Mar 14, 2021Because of daylight losing timeRide
Mar 16, 2021Because the gasoline is watered downRun
Mar 17, 2021Because everyone needs a tour of their backyard + Taylor!Run
Mar 18, 2021Because it was just a little love tapRide
Mar 19, 2021Because the sun still setsRun
Mar 20, 2021Because just follow the monsterRide
Mar 21, 2021Because determinism is a choiceRun
Mar 24, 2021Because it’s easier to run in snow than rainWeight Training
Mar 25, 2021Because it’s afternoon TT timeRide
Mar 26, 2021Because to love something, love everythingRun
Mar 28, 2021Because missed turns are just new opportunitiesRide
Mar 29, 2021Because just 100 steps more, then I’ll stopRun
Apr 2, 2021Because my reduction was too viscousRide
Apr 2, 2021Because my last run gave me food poisoningRun
Apr 3, 2021Because it’s easier to driveRide
Apr 4, 2021Because what if I run out of calories?Run
Apr 5, 2021Because the AC brokeRide
Apr 8, 2021Because we were 10 steps away from 10kRun
Apr 10, 2021Because all it takes is 5 windbreakers, 3 sandwiches, and 1 spare tireRide
Apr 11, 2021Because the will gives up before the legs doRun
Apr 14, 2021Because there’s no need to look over my shoulder since nobody’s out tonightRun
Apr 14, 2021Because I can multitaskRide
Apr 15, 2021Because if could ever drop 20 more pounds, this shit’ll get easierRun
Apr 16, 2021Because I am Klarg the bugbear nowRide
Apr 17, 2021Because just keep smiling when you’re going upRide
Apr 20, 2021Because I don’t have to ZwiftRide
Apr 20, 2021Because life is a rollercoasterRun
Apr 21, 2021Because I’ll have salt sticks for dinnerRide
Apr 21, 2021Because the difficulty is a choiceRun
Apr 23, 2021Because this is the first second vaccine doseRide
Apr 25, 2021Because it’s only a footnote of lifeRun
Apr 26, 2021Because I’ll need at least 14mphRide
Apr 26, 2021Because I need hip correction every dayRun
Apr 29, 2021Because lakety lake lakeRide
Apr 30, 2021Because they didn’t let me swimRide
Apr 30, 2021Because there’s a monster in the lakeRun
May 1, 2021Because I packed for only 50Ride
May 1, 2021Because this is itRun
May 2, 2021Because Lionel can do itRun
May 3, 2021Because my legs can’t moveRide
May 6, 2021Because when you’re going through a migraine, keep goingRun
May 8, 2021Because what are the chances the world is small?Hike
May 9, 2021Because it wouldn’t be possible without momsRun
May 17, 2021Because it’s hard to be easySwim
May 20, 2021Because what if these habits are badSwim
May 21, 2021Because get in loser, we’re going shoppingRide
May 22, 2021Because don’t taunt a guy with a weaponRide
May 23, 2021Because it’s duck season (w/ Taylor)Run
May 24, 2021Because reaching is faster than pullingSwim
May 26, 2021Because it’s wine o’ clockSwim
Jun 1, 2021Because reach long out, turn on the side, manage endurance, build the pace, and breathe in 3sSwim
Jun 1, 2021Because red eyes are no funRide
Jun 2, 2021Because it’s snowing allergensRun
Jun 3, 2021Because what if nature dials #2Run
Jun 3, 2021Because don’t thread the needleRide
Jun 4, 2021Because I still have so many questionsSwim
Jun 5, 2021Because it’s too hot too earlyRide
Jun 6, 2021Because outdoors is way different than indoorsRide
Jun 6, 2021Because everyone’s a gangsta til they run out of bottlesRun
Jun 8, 2021Because don’t forget to bring a towelSwim
Jun 8, 2021Because high elbow, straight arm, trickle breathSwim
Jun 9, 2021Because it sure does look like a stormRide
Jun 9, 2021Because yep, it’s a stormRun
Jun 10, 2021Because my body cannot do itRide
Jun 10, 2021Because everything is so hot right nowRun
Jun 11, 2021Because it’s just a startSwim
Jun 12, 2021Because PB&J a la sweaty jersey is not that badRide
Jun 12, 2021Because we all have plansRun
Jun 13, 2021Because the recovery is the workoutRun
Jun 15, 2021Because I need to zip up and keep those fingers downSwim
Jun 16, 2021Because why isn’t this a critRide
Jun 16, 2021Because I’m still fastedRun
Jun 17, 2021Because it’s just 38 more of those 100sSwim
Jun 18, 2021Because where the heart goes, I followRun
Jun 19, 2021Because we don’t go out anymoreRide
Jun 20, 2021Because memories rush in like a brick wallRun
Jun 22, 2021Because all I get is 3 perfect strokes in the middle of a workoutSwim
Jun 23, 2021Because what if I forget how to change a flatRide
Jun 24, 2021Because I used to be much faster, I swearRun
Jun 25, 2021Because no one would notice if I took a rest dayRide
Jun 25, 2021Because I’m not breaking any recordsRun
Jun 26, 2021Because there’s a first time for everythingSwim
Jun 28, 2021Because even the best fail sometimesRun
Jun 29, 2021Because it takes 72 hours to sink inSwim
Jun 29, 2021Because my bike bag was stolen, againRide
Jun 30, 2021Because it’s a long driveRide
Jul 2, 2021Because it do be that hotRun
Jul 3, 2021Because I’ve got to practice the post race celebrationRun
Jul 6, 2021Because I’m back from the abyssSwim
Jul 7, 2021Because there’s no time to wasteRide
Jul 7, 2021Because this bottle ain’t big enough for the two of usRun
Jul 8, 2021Because safety is relativeRide
Jul 9, 2021Because I should eat breakfastSwim
Jul 10, 2021Because I don’t even go hereRide
Jul 10, 2021Because of the tummy rumblesRun
Jul 11, 2021Because the clock don’t stopRun
Jul 14, 2021Because it’s the flu, at worstRide
Jul 15, 2021Because it’s all I can musterRun
Jul 17, 2021Because I guess the steam room is openWorkout
Jul 18, 2021Because I’m backRide
Jul 19, 2021Because the wetsuit feels better nowSwim
Jul 21, 2021Because the air quality is bad, mmmkay?Run
Jul 23, 2021Because new tires make all the difference (thank you, Velofix!)Ride
Jul 23, 2021Because I don’t have to worry about the cold temperatureRun
Jul 31, 2021Because family firstWalk
Aug 1, 2021Because I’ll sprint it next timeHike
Aug 2, 2021Because 1 week is long enoughSwim
Aug 2, 2021Because I’ve got to get comfortable with sittingRide
Aug 3, 2021Because no one was at the auto shopRun
Aug 3, 2021Because it’s just 5 minutes a dayWeight Training
Aug 4, 2021Because it works nowRun
Aug 4, 2021Because what if I lose steamRide
Aug 5, 2021Because it’s better togetherRun
Aug 7, 2021Because I missed my swim todayWeight Training
Aug 7, 2021Because it’s only miserable if you let it beRide
Aug 9, 2021Because the only thing that happened in my hometown for 18 years was a guy on the loose with a samurai swordRun
Aug 10, 2021Because sometimes it’s better to recover (steam)Workout
Aug 10, 2021Because I learned about new shoulder muscles during that oneSwim
Aug 11, 2021Because failure is an optionRun
Aug 12, 2021Because my 2nd water bottle cage is a clip-onRide
Aug 12, 2021Because I have Gatorade in my veinsRun
Aug 13, 2021Because my eyesight is pretty badRun
Aug 14, 2021Because the 40% rule appliesSwim
Aug 15, 2021Because taste the painRide
Aug 17, 2021Because I can’t hold my bottle without my rubber bandRun
Aug 18, 2021Because sometimes multitasking is necessarySwim
Aug 20, 2021Because take care of your eyes todayRide
Aug 21, 2021Because the berserker is a state of tranceRun
Aug 23, 2021Because I’m on nurse dutyWeight Training
Aug 23, 2021Because it’s one eye at a timeSwim
Aug 24, 2021Because the number of the counting shall be threeRide
Aug 25, 2021Because does pain have a limit?Run
Aug 26, 2021Because there’s only a 51% chance of hailRun
Aug 28, 2021Because it’s State Fair sznRun
Aug 29, 2021Because just one more turnRide
Aug 29, 2021Because it smells like autumnRun
Aug 30, 2021Because we gotta replace the whole engineSwim
Aug 31, 2021Because it all needs to be rewrittenRun
Sep 1, 2021Because it’s orientation week, when intersections are made up and traffic lights don’t matterRide
Sep 3, 2021Because existence is ambiguousRun
Sep 4, 2021Because I need a mental toughness daySwim
Sep 5, 2021Because I’m elevatedHike
Sep 5, 2021Because I’m icedHike
Sep 5, 2021Because I’m restedHike
Sep 5, 2021Because it’s taper weekHike
Sep 6, 2021Because I got 8 badgesRide
Sep 7, 2021Because I’m afraid of fishSwim
Sep 10, 2021Because it is too late to back out nowRide
Sep 10, 2021Because there are plenty of reasons to say noRun
Sep 12, 2021Because I only need one reason to do an Ironman (1/3)Swim
Sep 12, 2021Because I only need one reason to do an Ironman (2/3)Ride
Sep 12, 2021Because I only need one reason to do an Ironman (3/3)Run

I completed the half Ironman 70.3 Ohio!

On July 25, 2021, I completed the half Ironman 70.3 in Ohio, USA. It was one of the hardest experiences of my life! But I had so much support from family, friends, and volunteers on the race course. Thank you!!

My times:

SWIM (1.2 Miles, 1.9 Kilometers) = 00:44:59

T1 SWIM-TO-BIKE = 00:08:11

BIKE (56 Mi, 90 K) = 3:00:22

T2 BIKE-TO-RUN = 00:08:31

RUN (13.1 Mi, 21.1 K) = 2:37:59

TOTAL TIME = 6:40:02

I am planning on doing a more in-depth analysis of the race.

I’m looking forward to the full Ironman Wisconsin in September, which will double all the distances.

This is a simple notification that I did the half Ironman.

So for now, time to celebrate!

Grant at the finish line of IM OH 70.3, July 25, 2021

Ironman 70.3 Packing List and Day-by-Day plan

It’s two days before race day, which is Sunday, July 25th. It’s the half Ironman 70.3. I’ve done all my tapering and relaxing these past two weeks. I’ve already put in the miles and hours of training. Now is when I need to finalize the packing list and plan out each item for each step. I use Trello to organize checklists so they’re easy to understand.

Take a look at my packing list and day by day plan.

I’ll talk to you after the race!

Ironman Training: 2021 vs. 2020

In 2021, I did things better than in 2020.

In 2021, I started doing longer swim sessions and once per day. In 2020, I was doing two-a-days and shortening the swim. But I’m not a strong swimmer, so I need to spend more time in the water.

In 2021, I started doing more brick workouts. A brick is a combination of bike then run, in that order. A brick trains your body to get used to running right after biking. I was only doing one brick workout per week in 2020. But in 2021, I was doing at least 2-3 bricks per week.

In 2021, I took swim lessons from a coach. I learned so much about efficiency and power that I would not have picked up on my own. In 2020, it was me, myself, and I.

In 2021, I got fitted onto my bike in a road position and aero position. I also got aero bars. In 2021, I will race in the aero position, which is much faster and more comfortable. In 2020, I only had the road, upright position to ride in.

In 2021, I got another pair of goggles. These goggles are anti-fog. In 2020, I only had one pair of cheap goggles. Also in 2021, I bought a wetsuit that I didn’t have in 2020.

In 2021, I got calf compression sleeves for my legs. These reduce muscle fatigue for races or intense workouts. In 2020, I was relying on my bare legs.

In 2021, I started practicing with nutrition. I tested out 3-4 different endurance mix powders and took them on long workouts. For what it’s worth, I landed on Infinit Performance Nutrition. I also bought the Maurten gels and Quantum bars that will on course at the race. I bought Salt Sticks and took them everywhere. I trained with a mix of Gatorade and water. In 2020, I was trying out a things without much discipline.

In 2021, I started running with a water bottle. I can’t understate how important this is. I will race with a water bottle containing my Infinit endurance mix. And, I can refill the bottle with water and Gatorade and cola. This way, I can sip on fluids in between aid stations.

There were other smaller things I did differently from 2020 to 2021, but these are the big ones.

One thing that remains the same is the commitment and motivation from 2020. That has only grown in resolve in 2021.

Ironman Training Blocks: from August 2019 to July 2021

I started training to do an Ironman triathlon since August, 2019. But from then until now, I’ve gone through ups and downs in my training. Below are some summaries of the distances / durations per week of each discipline: swim, bike, and run. My training has been split up into distinct blocks.

  1. First, in August 2019, I decided to go all-in. I had been experienced in biking. I had run occasionally but not seriously over the last few years. But I hadn’t swum in many years. So, I found a training program online (thanks, Josh Muskin!). I adapted the training program to my schedule. I began to train 5-6 days per week. At first, I eased into swimming. But I started with short distances while I learned the form. I filled out the rest of my time with biking and running.
  2. In the winter, I continued to swim in the pool, run outside, and bike inside. I joined a Zwift indoor bike training program in early 2020 (Dec-Feb, 2020) which got me into great biking shape. I took a couple weeks off from swimming due to some vacation around the end of 2019.
  3. In mid-March, 2020, I went on another vacation to Miami. That was the exact week when the US closed down due to COVID-19. Our flight actually arrived back to Minneapolis on March 16th, the very day that closures were mandated.
  4. After that, I went into a slump. I stopped swimming (my planned swim durations remain in grey, but my actual durations sank to 0). I began biking and running more, while paying attention to the events. Eventually, one by one all my Ironman and triathlon events were canceled in 2020.
  5. For the summer of 2020, I kept in running shape. I focused mostly on biking far and fast. I went on century rides and fast sprints. I just wanted to stay in shape. By the end of August, 2020, my running culminated in my first marathon, unassisted.
  6. From September until the end of December, I went into slump number two. I stopped biking, running, and didn’t start swimming. My Ironman events were being rescheduled until 12 months from September, and I knew I couldn’t keep up my momentum from then until September, 2021. Instead, I did indoor yoga, stretching, and gained a bunch of weight.
  7. In late December, 2020, I started up indoor biking again. Soon after that, in January, 2021 I started running outside consistently as well. I ratcheted back my yoga. I was competing in online Zwift bike races, which raised my fitness level again.
  8. Then in May, 2021 I restarted swimming. I took swimming lessons. And I got smarter and more focused on my biking and running.
  9. Now that we’re in July, I have two more months until the full Ironman distance, in September. I’ve trained smarter in 2021, not necessarily harder. With two years of training under my belt, I am ready!
Screenshot from Grant’s TrainingPeaks, August 2019 to July 2021

Screenshot from Grant’s TrainingPeaks, August 2019 to July 2021

Screenshot from Grant’s TrainingPeaks, August 2019 to July 2021

Screenshot from Grant’s TrainingPeaks, August 2019 to July 2021

This post is not about stairs.

This post is not about stairs.

It is about me trying to understand what’s happening in my city, country, and culture. I do it the best way I know how, through metaphors.

If you were walking up the stairs and saw this, what would you do?

Minneapolis, Apr 2, 2021

A New Step #1 was recently installed with new wood. The Old Step #2 matches the original build.

Where would you put your weight to climb the stairs: On #1 or #2? In other words, the question is whether you trust the old or trust the new.

There’s no right answer in every case. Each case depends on the context and personality.

Put my weight on the new: The old step broke away due to time and disintegration. So it’s more likely that the other old step will break, too. The new was installed with newer, better parts.

Put my weight on the old: The old has still more experience than the new, which hasn’t been tested yet. Maybe it was installed wrong and I’m about to find out. The new could be incompatible withe the original build.

This post is about Daunte Wright and Kim Potter. It’s about split second decisions. About desperation and stress. About equality and justice.

Daunte Wright was killed by Kim Potter. This loss is a tragedy for our city, country, and culture. The protests, counter-protests, and surrounding conversation are as much about the moments that ended one life and changed another as it is about competing ideologies; about where we should put our weight.

Old Step #1 broke, and the New Step #1 inserted itself in. There is a new movement calling for justice, demanding outrage, and condemning silence.

We as a people are now looking at Old Step #2.

Is Old Step #2 sturdy or most likely to break?

Was the breaking of Old Step #1 an outlier occurrence, or was it an indicator that the old wood is disintegrating?

Do we trust the original foundations or do we think it’s likely to break and hurt someone else?

Is the New Step #1 incompatible with the original build, or is it more advanced with updated parts?

This very week, during the Chauvin trials of the killing of George Floyd, ideologies are arguing louder than ever again. We have to choose whether to protect Step #2 and trust the sturdiness that lasts. Or we have to choose to replace the outdated old wood and replace it with a newer and updated build.