2017.07.09 – Mass State Olympic Triathlon (my 5th time doing this race!)

My spot in transition. My company (Jobcase) should be proud that I give them free advertising at races. =0) Photo credit: becca yeh

Cambridge was super hot and humid in the AM, but when we arrived at Lake Dennison, it felt super cool. Mass State has historically been very hot, but this year was more comfortable.

Goals & Training

Between Harvest Olympic tri and Mass State, my training hours have only been 8 to 9.5 hours per week (this time includes strength workout time). These training hours and my training intensity thus far are not where I’d like them to be and likely not where I was the past two summers. While I would have loved a Mass State course PR, I knew my training didn’t justify it. Therefore, I adjusted my goals to beating my Harvest Tri splits.

Week of Race

Workouts wise, I worked out a little over 6 hours. Food intake wise, I decided to experiment with not being as strict as I have been in the past. I ate a little bit of spicy foods (I LOVE spicy foods & regularly eat this, but sometimes I get tummy issues & usually refrain from spicy foods 1-2 weeks leading up to a race), and had more fiber leading up to the race than I usually let myself have (I don’t feel well when I don’t eat enough fruit & veggies).

Here’s what went down the day before (Saturday, July 8):

  • Breakfast: peanut butter & blueberry toast
  • Workout: cycled 9 miles on an antique fixie tandem with Kate & swam ~800 yards at Crystal Lake in Newton
  • Morning snack: 2 Black Forest fruit snacks
  • Lunch: Chinese big bun
  • Watched the musical Wicked in the afternoon at the Boston Opera House
  • Dinner: Went to my mom’s because my 2nd cousin was in town. We had a Chinese family style meal that consisted of pork shoulder, lobster, leek & beef, a Chinese green, and a Chinese vegetarian dish. It was great and one reason why I had to be looser with my typical race week diet!
  • Was stressed about leaving dinner at a reasonable time to make it home to finish packing and get to bed at a decent hour.
  • Went to bed ~11pm.

Race Day – Sunday, July 9


Woke up at 4:40am. This time I was driving so I drank a half cup of water and ate some blueberries to get something in my system before getting behind the wheel (I’m not great at driving and eating/drinking). Olivier met me at my place at 5:15am and we packed the car. Breakfast was a Chinese big bun that I ate in the car and I drank 17 oz water.

We arrived at the race site ~6:25am. What I love about this race are that parking is right next to transition and there are flush toilets! I finished packet pickup and setting up my transition ~7:15am.  I then ate two cooked fingerling potatoes and 3 Clif shot bloks around 7:30am. Race start wasn’t until 8am so I had a comfortable amount of time to visualize swim out, bike in/out, and run in/out. I even had time to do a (super short) warm up swim, which I’ve never done before any race.

Swim 0.9 miles (0:34:03, 2:09/100yd, 5/8 AG, 0:02/yd slower than Harvest)

Gear: ROKA F1 goggle dark vermilion mirror; Castelli Core tri top & short; Garmin Forerunner 920XT

The race claimed the water was 78.3 degrees Fahrenheit, and, therefore, not wetsuit legal. When I was swimming, the water actually felt colder than that, but I don’t mind no wetsuit for shorter transition time.

I’m pretty disappointed that my swim split is slower than Harvest and I doubt that it’s all due to the fact that I was allowed to wear a wetsuit at Harvest. Admittedly, I’ve mainly been swimming only 1 time a week this summer.

Similar to Harvest, I never once had a negative thought in my head during the swim. Looks like I’m getting better about the mental game while I swim at tris.

T1 (0:01:42, 6/8 AG)

It was nice to not have to spend time taking off a wetsuit. I’m glad I decreased the time difference between my T1 time and the top T1 time in my age group.

Bike 22 miles (1:14:19, 17.8mph, 6/8 AG, 0.7mph faster than Harvest)

Gear: Javelin Amarone road bike; Giro Synthe MIPS helmet; Specialized Ember (2012); Castelli Core tri top & short; Garmin Forerunner 920XT

The start of the bike was not great for me. I dropped some of my Clif Bloks on the ground and I felt super wobbly on my bike. I have no idea why. Since I felt so wobbly, I was wondering if something was mechanically wrong on my bike and I was unable to drink or eat without feeling like I was losing control & balance of the bike. But finally around mile 10, I started to feel normal on my bike.

Although this bike course is not too hilly, the hills felt a lot harder than they did last year. This is a metric that I’m clearly not as bike-fit as I was last year. I haven’t been doing hill repeats this summer when I did them about once a week last summer. I’m also riding less mileage this summer. And, boy, am I seeing the results!

For nutrition, I ate 2 Clif Bloks at the start of the bike, ate a black raspberry GU (with caffeine) a little after mile 15, and drank 2/3 of a water bottle that had Clausthaler non-alcoholic beer mixed with water. I was surprised I only went through 2/3 of a bottle, but the weather really was cooler than previous years and definitely cooler than Harvest Tri.

T2 (0:01:02, 4/8 AG)

One of my higher AG placings for T2! I was sad to see a lot of bikes already racked, which was not a good sign for my position in the race.

Run 6.2 miles (52:21, 8:27/mile, 4/8 AG, 0:49/mile faster than Harvest)

Gear: Newton Gravity V; Castelli Core tri top & short; Garmin Forerunner 920XT

The run is my favourite leg and I felt good on it.  A little sad I did not get a course run PR when the weather was not bad for it, but happy I improved my run split from Harvest. For nutrition, I had a salted caramel GU (with caffeine) halfway on the run.

Finish (2:43:26, 6/8 AG)

A list of racers were available before the race and I saw 6 in my age group. After I crossed the finish line, I did the usual thing of printing my results from the All Sports Events tent. When I saw I was 6th for my age group, I assumed I was last and was pretty disappointed in my performance. When I view the results online after the race, I saw that there were actually 8 women in my age group so 2 must have signed up last minute. Well, that made me feel better I wasn’t last place. Glad I was able to make some improvements from Harvest Tri. While I was initially sad this wasn’t the best race of my life, I’ve become ok with it. You can’t expect every summer to be better than the one before, and sometimes other things come up in your life schedule. No matter the result, I’m always grateful to be able to mentally and physically complete a triathlon.

2017.06.10 – Harvest Triathlon

Sunrise over Tihonet Pond. I was not here during sunrise. Photo credit: Josu

The first ever Harvest Triathlon, put on by one of my my favourite race organizers, Max Performance, took place this past June. When deciding my race schedule for this summer, I wanted to make sure I raced 2 olympic distance tris before Ironman 70.3 Maine in August. There aren’t many local olympic distance tris in June so Harvest Triathlon fit the bill.


Ironman 70.3 Maine is my A-race so my primary training goal for the summer is to build up proper fitness for that race. A secondary goal is to see improvement in splits in any race I do, but I’ve never done an Olympic distance race this early in the season. The next section will explain why I didn’t feel great going into Harvest Triathlon and ended up adjusting the goal to “finishing and not feeling awful.”


Training is/was not where I’d like it to be (but it never is).

Swim wise, I’ve been consistently swimming 1-2 times (closer to 1) a week throughout the entire year, but I prefer this to be 2-3 times/week in the spring/summer. I never had any open water practice prior to Harvest, which also wasn’t ideal. I felt good about being able to complete the swim, but didn’t feel good about doing it in good time.

By May/June my bike fitness was at ~40 miles (in one ride), but wasn’t really getting more than 2 bike workouts in per week. I felt good about being able to complete the bike, but felt lacking with my training.

Run wise, I was training for a half marathon in May so I thought my run fitness would be fine. My only concern was that Harvest was two weeks after the half marathon and sometimes I need 2-3 weeks after a half marathon to properly recover for running.

Week of Race

As mentioned in my previous race report for Run to Remember Half Marathon, I was working a lot of extra hours, which was not leaving much time in my schedule for working out and sleeping. Week leading up to Harvest, I was still running on 4 hours/night of sleep (even the night before the race), and the only workout I had all week was one 2300 yard pool swim. And the 2 weeks before that weren’t much better workout-wise.

Nutrition wise I did a good job sticking to my usual race week nutrition regimen.

Day before nutrition:
breakfast – Chinese chive egg sandwich with mozzarella cheese & tomato
lunch – pasta from Sebastians
dinner: Zhongzi, dumplings, roasted asparagus & carrots
drank lots of fluids throughout the day

Race Day – Saturday, June 10


Woke up at 4:40am and my friend, Olivier, picked me up shortly after 5am to drive together. Breakfast was peanut butter & fresh cherries sandwich (yup, I bothered to pit the cherries), cherries, 4 fingerling potatoes, and sipped on ~24 oz of water.

We arrived at the race site ~6:20-6:30am and parked the car. Parking was a good 10min (or more) very sandy walk to the transition area. I didn’t mind this on race day, but I could see this not being very fun in wet weather.

As per usual with Max Performance races, the volunteers for all the pre-race stuff were super friendly and polite. They definitely put me in a better mood when I wasn’t feeling very good about the race (due to my lack of training and sleep).

For some reason, the time from parking to getting to transition took more than half an hour (I guess this is not too unreasonable) and I was in transition some time after 7 and only had ~10min to set up. I’ve had to set up in 10min several times before, but it definitely wasn’t ideal and I wasn’t able to do my usual pre-race visualization of my spot in transition, the swim exit, bike in/out, and run in/out.

After I set up transition, I ate 3 caffeinated CLIF shot bloks, found the 3 other MIT Triathlon members racing Harvest Tri, and we headed to the swim start.

Swim 0.9 miles (0:33:31, 2:07/100yd, 7/9 AG)

Gear: ROKA women’s Maverick Elite fullsleeve wetsuit; ROKA F1 goggle dark vermilion mirror; Castelli Core tri top & short; Garmin Forerunner 920XT

A bit ashamed of this swim time. This 100yd split is slower than my swim times last summer, even my half iron distance swim time. While my time wasn’t great, I did make one item of progress during this swim – I was mentally positive throughout the entire swim. Let me explain – every single triathlon I’ve done, there is always a point during the swim where thoughts like “I need to be pulled out of this race” or “I don’t think I’ll finish today” always cross my mind during the swim portion. This did not happen once throughout this swim. I mentally took it one buoy at a time and never once thought I would not finish.

The sighting buoys throughout the course was fine, but there was no good marker to sight the swim finish. My feedback to the race is to please bring back the HUGE MaxP inflatable arches for better sighting of the finish. I did suffer a very bad left calf cramp in the last ~5min of the swim, which continued into T1.

T1 (0:03:08, 8/9 AG)

My transitions have always been slow and I know I need to improve them. However, for this particular T1 I was suffering horrible calf cramps; I got stuck trying to take off my wetsuit; and I realised my triathlon watch (which I still do not know how to fully operate) had not recorded my swim and I was fumbling to figure out how to make it work.

Bike 29 miles (1:41:30, 17.1mph, 7/9 AG)

Gear: Javelin Amarone road bike; Giro Synthe MIPS helmet; Specialized Ember (2012); Castelli Core tri top & short; Garmin Forerunner 920XT

Nutrition: 1 caffeinated Clif shot blok at the start; 1 Clif shot blok at mile 5; 1 shot blok at mile ~16; 1 bottle of half maple water, half water.

Not long after I started the bike, an older male racer biked up next to me and asked “Is drafting allowed??” I was thinking who is this dude??? I let him know drafting is not legal and it felt like he dropped back and then he said “I’m not trying to draft you!” and I replied that it doesn’t matter to me if he does because I know I’m not in placing contention (and I had a feeling neither was he).

29 miles is on the long side for an olympic distance bike leg. It’s usually closer to ~40km (24.8 miles). Bike route was on the flat side, but I did have to go into my small ring once (I think this is mainly due to lack of fitness than it is due to the road having a real incline).

I had one unfortunate error during the bike. Around mile 15, I missed the right turn onto Black Cat Road. According to my watch, including the extra distance I cycled, I was averaging 17.5mph (and not 17.1), but that is still on the slower side for my race pace. The right turn I missed was manned by one ~10(?) year old girl who was meek, didn’t say a word, or gesture for a turn. All races ought to make sure they have turns manned by volunteers who are not afraid to repeatedly motion and say out loud the direction. It is even better if the volunteer stands on the opposite side of the turn to act almost like a barrier preventing cyclists from making the wrong turn.

T2 (1:20, 5/7 AG)

At least my T2 AG ranking is higher than my T1.

Run 6 miles (55:33, 9:16/mile, 5/9 AG)

Gear: Newton Gravity V; Castelli Core tri top & short; Garmin Forerunner 920XT

Nutrition: sipped on caffeinated GU for first 2 miles.

This race day felt really hot. For the ~3 weeks leading up to the race, the temperature was in the 50s (degrees F) and that’s what I was used to training in, but race day was high 80s. Quite an adjustment and I wasn’t quite acclimated to those temperatures yet.

The run was an UNSHADED trail run. (Many friends have questioned how a trail run can be unshaded, but it is possible.) I really wanted to quit during the first mile. Somewhere during the first mile I passed older-male-racer-from-the-bike and he recognised me. He introduced himself as Paul and asked if he could run with me. I welcomed the company and I think it gave me the extra boost to keep going when I really wanted to stop running in this unshaded heat! Thanks, Paul! Paul and I ran together for the first two miles and then I pulled off ahead. I ran with a conservative mindset since my body had never trained in this kind of heat this season yet.

Finish (3:15:01, 7/9 AG)

Well, everyone who raced Harvest Tri in 2017 can say they got a course PR because this is the first year of the race. I’m not happy with my splits, but I was happy I finished when going into the race, I doubted whether my poor training would allow me to finish. Goal for next races this summer is to have faster splits than I did at Harvest Tri!

The MIT Triathlon Club members who raced at Harvest Tri. The person who took the photo was a spectator we did not know so I can’t give proper photo credit.


The start of my 2017 race season & a race report

Race schedule for 2017 is updated in the “Schedule” section!

In between mile 9 & 10 at 2017 Boston’s Run To Remember. Photo credit: Roger Yeh.

My triathlon coach recently told us to write our race reports as soon as possible after a race, and I’m totally seeing why right now (not that I ever doubt what Coach says!). I had a lot I wanted to make note of when I ran Boston’s Run to Remember half marathon for the 4th time on May 28th, but now I’m not sure if I may forget something in this race report.

My Training & Goal

I really tone down my training in fall & winter and end up running anywhere from 4-8 miles/week, but I make sure I am in good enough shape to do 5-6 miles (in one run). Starting in April, I aimed for 3 runs a week: one 3-6 mile at easy to moderate effort, one 3-4 mile interval run, and one long run. Every week I’d add 1-2 miles to my long run and the longest run I did was 11.4 miles (the weekend before the half marathon).

Goalwise, I wanted to beat least year’s time of 1:51:13 (8:29 min/mile).

Week of race

Struggled with horrible nose allergies throughout the week. Did not do a great job sticking to my usual race week nutrition (documented in 2016 Mass State race report). Work was particularly tough in May (and still is right now), which has caused me to be running on 4 hours sleep/night and not have much time for working out either. Because I was so focused on work, I totally forgot about my race week nutrition until 2 days before race day. Some offenses to note: caffeine and spicy foods (yea, hot Cheetos!) until 2 days before the race and eating cruciferous vegetables (because I like broccoli & bok choy!).

For workouts, I did 3 short runs during the week which totaled to 7.6 miles: one failed run at 1.5 miles, one 4.1 mile easy run, and one 2 mile easy run the day before the race.

Day before nutrition:
Breakfast – Swissbäkers spinach croissant & energy roll
Lunch – Oath Pizza
Snack – smoothie made from greens, banana, greek yogurt, coconut beverage, kiwi
Dinner – leftover Japanese curry (potatoes, cauliflower, carrots), bok choy, stir fried chicken tenders, & Shandong noodles

Race Day (2017.05.28)

Thanks to Roger picking up my race materials 2 days before, I had the option to arrive as close to the race start time as possible. Below is a run down of the day:

  • 5:30am – Wake up. Breakfast was a peanut butter & blueberries sandwich. Drank 1 cup of water
  • 6am – Drive from my place into Boston.
  • 6:20am – Parked car in Chinatown. Headed to South Station to get my last bathroom break in. Historically, I’ve had trouble getting a toilet at the race site before the race start and have had to run on a full bladder.
  • 6:30am – At South Station, realized I left my caffeinated GU in the car so panicked to get back to the car. Still had a 20min walk ahead of me to get to the starting line.
  • 6:50am – Arrived at starting line. Realized my bladder is full again, but won’t have time to empty it.
  • little after 7am – started the race
  • Miles 1-3 – Felt ok, but watch claimed I was pacing faster than 8:29min/mile. I was half excited that maybe I can beat last year’s time, but also half worried that I might be going out too hard. You can see my Strava of the race here: https://www.strava.com/activities/1009668436
  • ~Mile 5 – Saw a friend on the course (Katrina!) and ran a little together. That lifted my spirits. I did not end up hanging with her for the rest of the race (can’t keep up with her for that long).
  • Miles 6-9 – Started to feel tired and slowed down =/ These were also the points where the race course got a tad hilly. Opened my caffeinated GU and sipped on it for a mile (~mile 7)
  • Miles 9-10 – Roger showed up to cheer! I thought this was a crucial place for him to show up since I was in lower spirits after mile 6. Even my Strava shows that my pace speeds up after seeing Roger =0)
  • Miles 11-13 – Felt less tired than miles 9-10, but still felt slow. Started to feel my big toes bruising. Did my typical sprint at the finish, but this time it didn’t feel like my best sprint.


Pleased I finished when the ~2 weeks leading up to the race were not ideal with regards to my work life, sleep, eating, and workouts. As you can see from my Strava, my Garmin says I ran 13.3 miles and in 8:16min/mile splits. But the official race results said my final time was 1:51:08 and at 8:29min/mile pace. Puzzling that the times are different, but either way both times are a PR. Just one is a more impressive PR than the other. As a good friend said to me:

Segal’s law: “A man with a watch knows what time it is. A man with two watches is never sure.”

WordPress doesn’t allow you to embed videos unless you upgrade. Since I can’t justify upgrading (gotta save that money for race fees!), here is a link to a video Roger took when he came to cheer: https://drive.google.com/file/d/1j1CIm9m0Qh-HXs8QxNV_H3CL0R5Bw1dTKA/view?usp=sharing

Race Report: 2016.09.18 Pilgrimman Olympic Triathlon as a guide

Crossing the finish line at Pilgrimman. Photo credit: Jen Yao

How I got into guiding

I’ve generally known guiding vision impaired (VI) athletes was a thing that existed, but I’ve always been self conscious about my speed (i.e. not sure if I’d be fast enough to guide) and wasn’t too sure how to get into guiding. I started seeing a few emails from Jeff, one of my teammates, to the MIT Triathlon Club mentioning he guided blind runners; this was how guiding in the Boston area was first brought to my attention. I finally decided to ask Jeff about guiding in the new year (of 2016), but specifically asked if it would be possible to guide someone in triathlons. Jeff put me in touch with Kate, a VI runner who was looking to do her first triathlon in 2016. Kate and I met for the first time in January 2016 and, since then, we’ve been training together about every month, usually on the weekends.

A balancing act

Balancing personal life, personal training goals (& races), and Kate’s training goals (& races) is definitely a balancing act, but a challenge I have been happy to take on and where people & things in my life have had to compromise (that includes Roger and Kate, so thank you to you two!).

Guiding logistics & Kate’s first triathlon (in the northeast)

Kate was originally aiming for Hyannis Sprint I (in June) to be her first triathlon. She had guides willing to do each leg of the triathlon, but no tandem bike (especially one that could fit my size as the captain). I reached out to my friend, Phil, who has a tandem and he agreed to captain for Kate. However, Kate was offered an opportunity with Team Catapult, the same weekend as Hyannis Sprint I, which meant we had to back out of that triathlon and Kate did her first sprint triathlon in Texas.

When Kate got back from racing her first sprint, she was interested in doing a triathlon in the northeast with Phil and me as her guides (Phil on the bike, and me for the swim and run). After figuring out our schedules, we agreed on the Pilgrimman olympic distance!

Race day – Sunday, September 18


This is how you know I’m nervous; I’m super early.” Kate arrived at my place around 5:10am, which was earlier than the 5:20am time we had planned. That was fine by me because I’d rather someone be early than late! Phil and his fiancée, Jen, then arrived and we started packing the car. Phil & Jen’s tandem fit beautifully on my Saris bike rack with both wheels removed. It was probably no wider than a normal road bike with the wheels removed. I should have taken a picture so people could have a reference of how to travel with a tandem bike without having to use a mini-van or putting all the seats down!

Since I’m a food enthusiast, I have to note what my breakfast was:
breakfast sandwich with enoki mushroom, egg, guacamole, and tomatoes.

We arrived at the race site, College Pond (part of the DCR Myles Standish State Forest in Plymouth), by my targeted time of 6:30am, but parking and other things took longer than I expected and, before I knew it, it was 7:30am when Kate and I got to our transition spot – this meant we only had 15 minutes until transition closed! Neither Kate’s or my backpacks were unpacked; we both still had to pee and bathroom lines at races can sometimes be 15+ minutes; and I hadn’t yet done a dry run & visualization of finding our transition spot from the swim exit (I like to visually take in finding my transition spot at every race to make sure I can easily find it). I was definitely very stressed! And Kate seemed quite calm. But I tried my best to hide being stressed because that’s the last thing I want Kate to be feeling.

After we were all set up, we beelined to the bathroom*, which surprisingly did not have a long wait! Then it was off to the beach for the usual pre-race announcements and a long wait for Kate’s wave, which was about 45 minutes after the 8am race start. The half iron, olympic and sprint races were all happening on the same day, and Kate was the 2nd to last wave in the Olympic distance.

*Feedback for Pilgramman: I liked that there were both portapotties and flush toilets at this race site, but the bathrooms were not easily accessible for athletes. Would you please consider making the toilets easily accessible? Or maybe stick a couple portapotties INSIDE transition? 

Swim 0.9 mile

Kate and I swim tethered at the hip. We each wear a Theraband around our hips and then use a resistance band that has a clip/hook on both ends to connect each of our Therabands. The swim was 3 loops of 0.3 miles and, after each loop, we had to exit the water, run on the beach, and re-enter the water. Because I’m not a fan of looped bike and run courses in races (feels more grueling mentally), I went into the race assuming the looped swim would be unpleasant. To my surprise, I ended up enjoying the 3 loop set up; it was like the swim was split up into 3 short, manageable sections.

The water at College Pond was probably the coldest Kate has ever swam in. I forget the announced temperature, but I estimate it was in the high 60s (°F). We both wore wetsuits, but Kate hasn’t been training in one, which we realised may not have been the best idea. There were a couple times during the first lap where Kate would stop and tell me she really wanted to take the wetsuit off. I kept thinking (i.e. did not say this out loud)please don’t take it off right here in the water!! I don’t want my wetsuit to float away!! I asked Kate a few times if she was super sure about taking it off since it’s not uncommon for swimmers to feel less confident and cold without a wetsuit. She assured me she was super positive, and, thanks to the course design of getting out of the water after each lap, we were able to ditch the wetsuit on the beach before finishing the last two laps.

I could feel Kate swimming better with each lap we did. Though, one struggle I had was trying to guide her around the buoys. The course was clockwise with 2 right turn buoys. Kate often veered to the right and I was trying my best to make sure we did not miss a buoy by cutting it (sorry, Kate, for the couple times that you may have bumped into a turn buoy).

Exiting the swim and what our hip tether looks like. Photo credit: Jen Yao


It was nice to be greeted by Jen when we exited the water. I remembered to grab the wetsuit that Kate had left on the beach after the first lap and we jogged our way up a slight hill to transition. Kate had to take a bio-break, which had the added challenge of contorting and squeezing through the awkward metal barricade due to the illogical race set up (as noted above in my pre-race section). Phil was told to wait with the tandem bike close to the bike mount/transition exit area; this meant Phil was not near Kate’s transition spot and we had to run over to him.

Bike 25.6 miles

Since Phil was Kate’s captain, I can’t write anything firsthand here. I do know that they kept things interesting on the bike by counting each racer they passed on the course. I also can report that Kate used bacon and potatoes as part of her nutrition. While I have not met many tandem captains in my life, I know for a fact that Phil’s captaining is second to none – anyone who has ever stoked for him would understand. Also, let me note that I enjoy how helpful and even-tempered Phil & Jen are – they definitely make race day so much better!

As for what I did during the bike – I hung out with Jen and took my sweet time getting ready for the run (though, some of you may be laughing at how long I already take in T1 from my previous race reports).

Kate, me & Phil after bike dismount. Ready to head for T2 & the run! Photo credit: Jen Yao


Kate and Phil narrowly missed the bike dismount line when they finished the bike! I met Kate at bike dismount, we ran to her transition spot where she dropped off her unused nutrition, took a bio-break (ugh, that annoying bathroom setup), and off to ‘Run Out’!

Run 6.6 miles

The run was two 3.3 mile loops through the Myles Standish State Forest, which was very beautiful, scenic, and secluded feeling, but pretty spectator-bare. Thankfully, the volunteers and fellow racers were all very friendly and cheery. Each 3.3 mile loop was an out and back format, which meant each of the 3 aid stations served both sides of the course. Aid stations were well placed at about every mile and well stocked with water, Heed, gatorade, and gels.

The course was rolling terrain, and Kate made a deal with me that we’d run on flats and downhills, but walk up the hills. I have a feeling Kate could have ran the whole course, but was just trying to play it conservatively in her first olympic distance triathlon. I think my biggest struggle was trying to verbalize the course and our progress to Kate. Had I done a better job of that, Kate could better anticipate, pace, and adjust her efforts. Something I need to work on.

When we passed the last aid station on our 2nd loop, that meant the finish line was near, but it wasn’t in my line of vision yet. I let Kate know, but she seemed a bit in disbelief that she was almost done! As soon as the finish line was in my sight, I let Kate know right away and she still seemed a bit in disbelief, but soon kicked up the intensity and crossed the finish line of her first olympic triathlon!

Me, Kate, & Phil post-race. Photo credit: Jen Yao


While Kate received splits and times for her olympic distance debut, she was unfortunately disqualified from the race due to not having the same gendered guide on the bike (Phil should have spruced up a bit to be ‘Phyllis’ for the day). We knew going into Pilgrimman that she would not be eligible for prizes due to this reason, but still wanted to race it for the experience. During the run and after the race, Kate repeatedly told us that she had a great time and really enjoyed herself. This was definitely evident as Kate has a huge smile on her face in every race picture Jen took. I’m really glad that Kate enjoyed her first olympic distance triathlon and first triathlon in the northeast.

After the race, we all went to Dillon’s Local in Plymouth for lunch and to celebrate Kate. It has a cute location near the water (though, no water views inside) and great football vibe (which I appreciated since there was a Patriots game that day). Food was tasty and we appreciated that you can get tater tots with your sandwich instead of the usual fries.

Huge congratulations, Kate, and I look forward to seeing you progress through your triathlon journey!

Race Report: 2016.09.11 Pumpkinman Half Iron Triathlon

Toward the end of the Powderhouse Hill Climb Challenge, “running” to T1. Photo credit: Roger Yeh


When I signed up back in March, my initial goal was to beat last year’s time and ideally be under 6 hours. But as my summer unfolded, I felt like I had a lot of training setbacks (largely due to health) and adjusted my goal to finishing and not feeling awful.

Race week

Nutrition offenses

Did pretty well sticking to my usual race week nutrition regimen (detailed in 2016 Mass State race report) except for the following offenses:
1.) corn (high fiber) because it was on super sale at Star Market!
2.) ate out for dinner one night = a meal high in butter & dessert, because it was Roger & my marriage anniversary!


I had a fever and bad cold on Labor Day weekend that went into race week. This super bummed me. Due to my training setbacks, I was really relying on Labor Day weekend to get my last long workouts in for an extra boost of confidence (I know, anything by then wouldn’t help much, but I really wanted that last long workout!). Not feeling well on race week forced me to have to really lower the intensity and decrease workouts. Outside of race day, I worked out about 4.5 hours, which is less than 50% of my normal week and definitely not my preference for race week.

Pre-race day – Saturday, September 10


(Breakfast & lunch were homemade.)
Breakfast:  breakfast quesadilla – habanero lime tortilla with egg, butterkase, and cooked low fiber vegetables (cherry tomatoes, spinach)
Lunch: baked chicken breast with pasta, purple potatoes, tomato sauce,  & spinach
Dinner: beef pho from Thai Cuisine in Dover, NH


Pool swim ~800 yards & ~15min spinning on stationary bike with Kate. I’ve worked out with Kate before every triathlon I’ve done this summer and I think she’s good luck!


Roger and I arrived at our bed & breakfast, Academy Street Inn*, around 3:20pm. My friend, Stacy, who had moved to Maine a couple years ago, met up with us and it was very nice to catch up with her. We went to the race venue for packet pick up where we bumped into the rest of the MIT Tri team who came up on Saturday.

After packet pickup, thanks to Stacy’s expert suggestion, we made a pit stop at Aggie’s for some awesome ice cream (I know, this is breaking my pre-race nutrition regimen). Then met up with Jeff, Lianne, & Mo for dinner at Thai Cuisine in Dover, NH, which was the place we went for dinner last year.

Roger & I then got back to the Academy Street Inn and I prepped all my race gear, especially affixing all the race numbers and taping GUs to my bike’s top tube. It is crucial to do all your stickering and taping the night before because rain and humidity can make it tough for things to stick!

Before bed, I downed some medicine in hopes to mitigate my cold and sinus headaches. I went to bed around 9:30pm, which is the earliest I’ve ever gotten to bed before a race!

*Our review of Academy Street Inn – definitely hidden gem lodging for Pumpkinman. Just a 5 minute drive to race venue. Rooms are big, comfortable, & very clean. Owner super welcoming and went out of his way to lay out coffee and continental breakfast super early on race day morning. Thank you, Paul & Lee! Our one gripe is that the owner promised to hold breakfast until ‘a few minutes after 8:30,’ but didn’t. By the way, the breakfast is supposedly highly reviewed. Roger got back to the B&B at 8:29 and there was no breakfast held for him. This is a minor complaint as everything else made up for it and we recommend this B&B.

Race day – Sunday, September 11


Woke up at 4:45am. Morning hydration was coconut water + water and breakfast was cooked potatoes and a peanut butter + golden raspberries sandwich (prepared the day before). I took some medicine after breakfast in hopes of mitigating the cold & sinus symptoms again.

On the way there, I got an alarming phone call from Jeff, whose car would not start. Roger quickly dropped me off and then headed in the direction of what he thought was Jeff’s AirBnb, but we couldn’t get in touch with Jeff again (he got a ride from his AirBnb host and made it to the race fine).

I arrived at the race site a bit before 6am, which was perfect by my schedule. Transition was super cramped, just like last year, but I got my transition set up, pre-ripped all my nutrition and covered it with a plastic bag (storm was in the forecast). Made a trip to a Portapotty where I went both #1 & #2, and ate 2 Clif Shot Bloks. Found Roger and then it was off to the beach where I’d wait for my wave, the 2nd to last one, to start.

Swim 1.2 Miles (40:12, 1:54/100 yards, 28sec faster than last year, 7/10 in AG)

Gear: Xterra Vortex fullsuit from 2012; Speedo Vanquisher goggle (green, mirrored); ChampSys Custom Tri top & short from 2012 (this one has more rear pocket storage than the Apex)

My bladder got super full as I was waiting for my swim start (seems to be a recurring theme for me). When my wave started, I felt I got into a good swimming form groove, which is a rare feeling for me in races. But I totally lost that groove within (what felt like) a minute. I felt like my wetsuit didn’t allow my body and arms to get into my ideal swim form. This really frustrated me and caused me to be in a negative mindset throughout the entire 2-loop swim. It also didn’t help that my goggles had a slow leak in them. At some point on the 2nd lap, I started to feel super hungry, which worried me for the bike.

As per usual, I know my swim time wasn’t fast, but I’m glad I beat last year’s time even while being sick and not trying 100%.


Powderhouse Hill Climb challenge (1:53, 7sec slower than last year, 7/10 in AG)

I felt oddly tired when I wasn’t tired during the swim. Because of that, I really struggled to get up that hill, which put me in low spirits. Feeling so worn going up the hill made me wonder if I could even finish this race. Just like last year, Roger was there to run (faster than me) up the hill, too! (Maybe if I swam faster and ran up the hill faster, Roger would have made breakfast at Academy Street Inn.)

T1 (5:06, 1min 25sec faster than last year, 9/10 in AG)

T1 was a disaster. This past summer I’ve been using a yellow Madagascar (the DreamWorks film) towel to help mark my transition spot, but someone else used a similarly patterned towel, too! I accidentally ran to someone else’s yellow towel transition spot and was really confused why the items did not look familiar at all. Finally, I realised where my real transition spot was, but then my wetsuit got caught on my ankle timing chip and I struggled getting my wetsuit off! Thankfully, I did not have a full bladder so I did not have to waste time going to a portapotty. Still with a hungry stomach, I shoved a 110 calorie Health Warrior Chia Bar in my mouth and off I went to the bike mount line.

Bike 56 Miles (3:12:05, 17.5mph, 1min 7sec faster than last year, 6/10 in AG)

Gear: Javelin Amarone; Giro Synthe with MIPS; Specialized Ember from 2012; ChampSys Custom tri top & short from 2012
Nutrition: 2 water bottles filled with Buckler** non-alcoholic beer, coconut water, and water; 3 Health Warrior Chia Bars; 6 Clif Shot Bloks; 2 caffeinated GUs

Unlike my other races this summer, my legs did not feel tired at the start of the bike. Because I was so hungry, I immediately ate another 100 calories in Clif Shot Bloks once I got on the bike. I aimed to eat 100 calories every 20-30 minutes, starting with the Chia Bars, then Clif Shot Bloks, and ending with caffeinated Gus – basically moving from most to least solid. For liquids, I had 2 bottles filled with the mixture stated above. Before the race, I was worried 2 bottles may not be enough because the forecast was supposed to be very hot and humid, but I ended up going through about 1.5 of my bottles.

I decided to go at a more conservative effort than usual since I was doubting how well I could do the half marathon afterwards. The bike was two loops and somewhere on my second loop I started to get really sore in the hips and butt (I have a theory that this is due to training in cycling shorts instead of tri shorts. Thus, my downstairs weren’t used to the decreased amount of padding in tri shorts.). I started to get sad, but spirits definitely got lifted at some point when a previous teammate, Brian, passed me on the bike with a big smile and yelled “Having fun?! We gotta beat the rain!”

The whole time on the bike course, I was praying that the forecasted storm would not come until after I was done with the bike. I estimate that when I had about 10 miles left of the bike, the sky blackened, sheet rain fell, high winds blew, trees fell, debris & hail flew all over, thunder rolled – I thought I was going to die on the bike! I’m not the most confident bike handler and my bike accidents this past summer were during rainy conditions. I just kept pedaling because I wanted to get to the run! But I definitely decreased the speed and regularly tested my brakes. I was so sure I was going to wipe out on debris or get a flat. Thank goodness I made it out of the bike safely and unscathed!

The storm lightened up when I had maybe less than 5 miles left. A bunch of racers (on bikes) were held up at an intersection by police, which confused and annoyed me because wouldn’t this slow down my race time?! But then I heard that the run had been canceled and then a dude joked that the bike is now draft legal. I’ve heard many stories of race course volunteers passing off incorrect information so I did not quite believe this news when I first heard it on the bike course.

When I reached transition, belongings, fencing, and racks seemed to be blown all over the place due to the storm. I saw Roger had kindly picked up all my stuff in transition!

**Buckler is currently one of my (and Roger’s) top non-alcoholic beers, but why does it have such low ratings on BeerAdvocate?? You can let me know if you think I have bad taste in beer. I’m happy to take suggestions for other non-alcoholic beers.

MIT Triathlon Club members after the race. Photo credit: Roger Yeh

Total time 3:57:22 (2min 59sec faster than last year, 6/10 in AG) & post race thoughts

My biggest takeaway from this past summer’s training and racing is that volume is not everything. Throughout the summer, I noticed that I was not trending the way I wanted to volume wise (largely due to health setbacks), which really worried me. To give you an idea, compared to my training volume in 2015 (where I had a near identical race schedule), my 2016 training volume was 26% less for swimming, 21% less for cycling, and 33% less for running. That’s some pretty crazy decrease in volume!

I’m not saying the way I trained in 2016 or my training volume was adequate, but I really do think it was essential that I tried my best to focus on quality and to listen to my body during my workouts. I mean I must have been doing at least one thing right that allowed me to shave off some time at all my 2016 races. That being said, I do think I was on track to beating last year’s Pumpkinman time (and maaaaybe even coming in under 6 hours?).

It’s disappointing that we were only able to do two-thirds*** of Pumpkinman this year, but the race director made the right call for safety. Also, being deprived of the last leg makes athletes hungrier to finish a 70.3 in the next season.

As always, I extend many thanks to the people in my life who have supported and mentored me, but biggest thanks to Roger.

*** 2/3 times 1/2 is 1/3. Does this mean everyone who did Pumpkinman in 2016 is a “1/3 ironman”? Are aquabikers who do the half iron distance actually “1/3 ironmen”?


Race Report: 2016.08.21 Cranberry Trifest Olympic Triathlon

race_3050_photo_41252740 copy
Exiting the swim

I signed up for Cranberry Olympic mainly to use it as a tune-up before Pumpkinman 70.3. Since I’ve been feeling behind on my Pumpkinman training, my initial goal was to not race Cranberry at 100% in order to be able to fit in a 2nd workout that day… which I wasn’t able to get in, but I think that was mainly due to lack of sleep and nutrition than it was due to over exertion at the race. This was my second time racing Cranberry Olympic.

Race Week – week of August 15


In my 2016 Mass State race report, I detailed some of the nutrition habits I tend to do leading up to a race. Leading up to Cranberry Olympic, I wasn’t perfect and did not quite execute my preferred nutrition plan. Part of this was due to lack of focus and the other part was that I wanted to test “how bad” I could go and still perform. My main offenses were: eating an ice cream sundae (ice cream social at work!), eating spicy foods, and not reducing fiber intake 2 days before the race (I like asian veggies!). I’ll comment later on how this worked for me.


Since I was treating Cranberry Olympic like a workout and wasn’t looking for the best time of my life, this was not a rest/recovery week. I worked out every single day of the week (except Monday, which was my rest day), but I did make sure my workouts on Friday and Saturday were dialed down a bit in intensity. Outside of Cranberry Olympic on Sunday, I worked out ~8 hours for race week, which doesn’t seem that much to me and makes me wonder if I’m under-training for Pumpkinman.

Pre-race Day – Saturday, August 20


(All meals were homemade!)
Breakfast: goat yogurt pancakes with Craisins & chocolate chips, peeled kiwi & nectarine
Lunch: Asian greens (yu choy), half a pork chop sandwich
Dinner: lemon pepper pappardelle (from Trader Joe’s) with salmon, yellow zucchini, tomatoes, carrots, spinach, & basil (by the way, the combination of lemon pepper pasta and seafood is great!)


Worked out with Kate, a vision impaired athlete I sometimes workout with and we are scheduled to do an olympic triathlon together in September. We swam 0.55 miles in open water and ran 3 miles.

Race Day – Sunday, August 21

IMG_2342 copy
My spot in transition. Illustrating my tag line, which was created by Roger.


I woke up to the sound of my phone’s text tone and, before even checking the text, I immediately knew what was up – I had overslept and my teammate, Justin, whom I was driving to Cranberry, was already at my place at our agreed meeting time of ~5:05am (Justin was 3 min early)! My alarm didn’t go off because it was set at the wrong time! (I’m still really sorry about this, Justin!) In a panic I rushed to brush my teeth and get into my clothes, but there was no time to see if I had any morning poo to get out. Thank goodness I packed everything and made my breakfast the night before so all I had to do was grab them. Roger was a great sport and got out of bed to let Justin into our place while he unfortunately had to wait for me to get ready.

Even with my morning snafu, we arrived at the race site before 6:20am when my original goal was to arrive around 6:10am. I think we did fine on time! Breakfast was similar to what I did at Mass State – pieces of cooked red & purple potatoes and a peanut butter & raspberries sandwich.

One thing Cranberry does well is its logical packet pickup flow. They position the bodymarkers as you exit the packet pickup area and it’s all very clear and obvious. I find at most races there are bodymarkers kind of scattered throughout and you have to track them down before you can enter transition.

Setting up transition went pretty smoothly and Cranberry was kind enough to rack all the MIT Triathlon Club members together. I ate a banana and 2 caffeinated CLIF Shot Bloks  around 7am and then went to the portapotty to get any last pee and poo out before race start. Not much poo came out, which can either be a good or bad thing.

Swim 0.9 mile (32:37, 2:04/100 yards, 8/12 in AG)

Gear: Speedo Vanquisher goggle (green, mirrored); ChampSys Performance Blade tri top & short

Swim was not wetsuit legal as the water was in the low 80s. I usually like this so that it’s one less thing to worry about, but all the talk I was hearing about swimskins and drag made me self conscious about swimming in my 2 piece trisuit. Although the race start was 7:30am, I didn’t get into the water until close to 8am because I was the second to last wave.

The swim start was a time trial start within your wave, which I tend to like. Time trial starts tend to pump me up more! When I dove into the water, I did feel the top of my right foot scrape against the bottom of the pond and the timing chip on my left leg caught hold of some weed that wouldn’t come off the entire swim – talk about added drag! Because water levels were low, the swim was two loops in the pond. The swim definitely felt more congested compared to other tris I’ve done. Since my goal wasn’t to do this race at 100%, I took the swim easy. But I am disappointed that my “easy” was not any faster than my last year’s Cranberry Olympic swim time. Maybe it really was from the weed drag!

Toward the end of the swim, I started feeling like I needed to pee, but I couldn’t get any out before the swim exit.

T1 (2:16, 3/12 in AG)

I felt a little dizzy after the swim, which is a feeling I haven’t had in races since maybe my first 1-2 years of racing. Does this mean I’m getting unfit?! Because I was dizzy, I struggled a little to get my socks on and was 2 seconds slower than last year for T1, but I am surprised that my T1 time was 3rd in my age group (AG) because it definitely is not considered a fast one. I saw that the median women in my AG took ~3min.

Bike 26.2 miles (1:28:37, 17.7mph, 2/12 in AG)

Gear: Javelin Amarone; Giro Synthe with MIPS; Specialized Ember from 2012; ChampSys Performance Blade tri top & short
Nutrition: 12oz O’Doul’s (non-alcoholic beer) flatted, mixed with coconut water & water; 3 CLIF Shot Bloks

Started the bike with a bladder that needed to pee and the feeling that I needed to poo. I think the latter may be from my not perfect pre-race diet with cruciferous veggies. My legs felt tired and slow on the bike. This course was rather flat as it was only ~240 feet elevation gain and I never went into granny gear (embarrassingly, this is the first race where I never had to go into granny gear!).

Nutrition wise, I started the bike with 4 CLIF Shot Bloks and the goal was to eat them at 10 miles, 15 miles,  20 miles, and a little before dismount. I was successful with the first 3 gummies, but the 4th one fell on the ground! I’ll need to figure out a better way to handle CLIF Shot Bloks for Pumpkinman 70.3. I definitely find the packaging it comes in too long for when you only have a couple Bloks left. I had 2 bottles on my bike. One bottle was the non-alcoholic beer mixture I described above, and the other bottle was just water. I only went through the first bottle.

Toward the end of the bike, thankfully the feeling of needing to poo started to go away, but I still had an uncomfortably full bladder. I kept telling myself that I’ve ran 2 half marathons on super full bladders, so I can definitely finish this olympic on a full bladder.

I think I did a good job sticking to my plan of not going 100%, but I also did not go 100% last year and this year’s time was barely a minute faster. I am slightly disappointed that I couldn’t get closer to my 18.1mph speed that I held at Mass State (but that bike course was 22 miles, which is 4.2 miles shorter).

T2 (1:42, 2/12 in AG)

Again, I realise this is not a fast transition time, but I’m surprised I was second in my AG for T2. It was only 4-5 seconds faster than last year. When I arrived at transition, I saw that someone had racked their bike in my spot with the handlebars (they’re supposed to be racked by the saddle)!! I absolutely LOATHE when people rack their stuff improperly in transition and get in your spot!! So please, peoples, be more considerate and mindful of what you’re doing in transition! I felt I handled this better than when I did in T2 for 2015 Pumpkinman.

Run 6.2 miles (53:49, 8:41min/mile, 3/12 in AG)

Gear: Newton Gravity IV; ChampSys Performance Blade tri top & short
Nutrition: Gu energy gel in Chocolate Outrage

I did this run by feel and only pushed to whatever felt like 70-80% of my effort for most of the run. After mile 4 or 5, I let myself increase the intensity. I slowly sipped on a Gu energy gel (chocolate outrage flavour, which has caffeine) throughout the entire run.

Total time (2:59:01, 3/12 in AG) & post race thoughts

IMG_2349 copy
First time on the podium!

Throughout the bike and run, I didn’t see many women in my age group, but this is not unusual for me; I’m usually not seeing anyone because I’m that far away from the leaders. However, it was a nice surprise that I wasn’t seeing any of my AG around me because of the opposite situation! After I crossed the finish line, I went to the All Sports Event tent (something I don’t usually bother to do right after finish because I know my times are not usually top 3) and was convinced there must have been a mistake at the bottom of my receipt – it claimed I was currently in 3rd place for my age group! Sometimes these results do have errors in them, but in the end I really did place 3rd in my AG! My 2016 Cranberry time was only slightly over a minute faster than my 2015 time. Admittedly, my guess is that for some reason the women 25-29 AG didn’t post super fast times this year and that allowed me to podium.

Given some unfortunate setbacks I’ve had in training this past season, I think Cranberry was executed as well as it could have been for me. My next race is Pumpkinman 70.3, and I think I need to focus on better race week nutrition (no cruciferous veggies!) and mind control (in case I have a full bladder or colon again).


Race Report: 2016.08.13 Gloucester Clean Harbor ‘1.2 mile’ Swim

IMG_2318 copy
In our ROKA demos at Niles Beach.

Because this was advertised as a 1.2 mile swim, I thought this swim was a good way to ensure I swam 1.2 miles in open water before my half ironman in September. There are quotes around “1.2” in this title because this swim, to my disappointment, was only about 1 mile (according to friends’ GPS trackers)! I did not go into this race with any hard time goals.

Race Week – week of August 8

Since I wasn’t treating this like a race, there was no tapering/resting this week workouts wise. (Though, I haven’t been happy with my training volume this summer; there’ve been some setbacks.) Didn’t bother to be extra particular about my diet either leading up to this swim. As per usual, pre-race day I ended up in bed close to midnight (not ideal).

Race Day – Saturday, August 13


Got out of bed 5:45am. My breakfast and my bag for the day were all prepped the night before. My MIT Triathlon teammate, José, and I carpooled with our MIT Triathlon coach, Coach Bill. I ate breakfast in the car, which was a green tea bun from Bao Bao Bakery, some cut up kiwi and nectarine, and water. We arrived at Niles Beach at 7:20am, which meant we got a great parking spot* and ample time until the swim start time of 9:30am (Thanks, Coach Bill!).

While I waited for the swim start, I made a couple pee trips to the porta potty, hung out with José & Coach Bill, ate a banana, sipped on water, and got into my wetsuit. Even though I had ample time to do a warm up swim, I did not bother to do this because the water temperature (when taken close to shore) was around 60 degrees Fahrenheit. There was no point in getting wet in this water only to come out and be shivering before the race.

*Parking tip: Get there early to grab one of the few parking spots that are right next to Niles Beach (these are resident spots and you need to be out of there before 12noon). Street parking is allowed on Eastern Point Blvd and this could be a 10-15 minute walk to Niles Beach.

Swim ‘1.2 miles’ (It was really ~1.0 miles)

Gear: ROKA Maverick Elite fullsuit (as demo); Speedo vanquisher goggle (green, mirrored); Body Glove vapor skin two piece

The swim was an in water start and, as we were standing in the water waiting for the starting horn to go off, my feet went numb and I thought I was going to fall over. I’ve never swam in water colder than mid 60s (degrees Fahrenheit) and I heard some participants say their thermometers read 58 for the water temperature. I couldn’t wait for that starting horn to go off so I could start moving and warming up.

When the horn went off, I hung back a little bit to let the faster swimmers get ahead of me. Initially, my face and hands went numb, but after maybe 2 minutes I started feeling fine and I forgot about the cold water. I didn’t try to go all out with my swimming and went at an easy pace (though, not going all out is a problem of mine and I need to figure out how to turn that on). I thought I did a pretty good job sighting the buoys and not veering off track. My only issue was sighting the last buoy since a boat in the water moved and blocked or changed my view of the buoy.


My official total time was 34:26 as recorded by the race (not sure how reliable their time tracking is). I know that’s not fast, but I think it’s ok for not going all out. I managed to get 2nd place for my age group, but, as my coach reminded me, that is also last place since my age group only had 2 people in it. But I did not come out of the water last!

IMG_2319 copy
2nd place for females 20-29!