Friday: 3 x 20′ L4 in Nijmegen

Europe is tough on training routines.  I took a scheduled rest day on Tuesday after my overnight flight to Munich.  Then on Wednesday and Thursday I went to bed too late, had early morning commitments, and  so I didn’t have time to work out.  I was determined to “get my row on” on Friday morning.  I arrived at my hotel in Nijmegen around 10PM and inquired at the desk about fitness options.  They had a pitiful fitness center in the hotel, but I really wanted a rowing machine, so they found me a fitness center (Basic-Fit) about a 15 minute walk from the hotel.  I set out to find this place a bit before 7AM the next morning.

I walked in and aske d how much they charged for a day pass.  The guy at the desk smiled and waved me in.  This was turning out to be a good decision. I found four immaculately maintained Model E rowers in a row on the second level and picked on.  Nice drag factor, and a PM4, so I could link my wahoo HR belt and keep an eye on my ascending heart rate.

The Plan:

  • 3 x 20′ / 1′ rest
  • 6 x 10′ L4 sequences
  • 1′ @ 21, 3′ @ 20, 3′ @ 19, 3′ @ 18
  • 10W * spm

After so many days off, I expected it to feel hard, and it did.  My HR was high, but not horrifically so.  I quite enjoyed the workout and the walk to and from the city center.

Screen Shot 2016-02-05 at 5.42.19 PMimg_1201-1

Tomorrow:  4 x 20 L4

Sunday:  Workout with the Worcester Boat Club.  I am thinking I will introduce them all to the mystery and majesty of the Cross Team Challenge and see how they all do with the 3×7′ session.

 

Monday: 4 x 1000 / 5′ rest

Plan:

  • Fletcher warmup
  • 4 x 1000
    • 5′ rest
    • pace target: 1:40
    • rate: 30 spm
  • 2K cool down

I felt like crap today.  The fletcher warmup was really hard, especially at first.  Within about 20 pulls, I knew I wasn’t going to be able to hit my targets.  It really just turned into a game of survival.  I had terrible post rep shivers after the first interval and slowed in the second.  I had a mini-HD in the third rep while I was experimenting with using high rates.  The fourth rep, I hatched a plan to do the first 250m at 1:44, the second at 1:43, the third at 1:42, the fourth at 1:41.  I stuck to the plan through the first 500m, and accelerated from there.  The last 250m was very difficult.

My heart rates were lower than in past sessions, but the RPE was higher.  I was knocked out after each rep.  The session average was 1:42.3, which is way off the 1:40.4 from last week, but a touch better than the 1:42.7 from two weeks ago.

The warmup.

2016-02-01 08.17.16

Screen Shot 2016-02-01 at 9.05.12 AMScreen Shot 2016-02-01 at 9.04.50 AM

The main set

2016-02-01 08.16.45

Screen Shot 2016-02-01 at 9.06.27 AMScreen Shot 2016-02-01 at 9.06.08 AM

The cool down

2016-02-01 08.17.08Screen Shot 2016-02-01 at 9.07.56 AM

Tonight I fly to Munich.  Training this week will be problematic.  I spend Tuesday night in Munich, then drive to Stuttgart.  Fly to Milan on Wednesday evening and sleep there Wednesday night.  Then I fly from Milan to Amsterdam and sleep there on Thursday night.  Finally, I return to the US on Friday night.  So, 4 nights, 3 different hotels and a coach seat.  I’m thinking that I will focus on maintenance of my aerobic base with 60 minute low intensity sessions where I can squeeze them in.

 

4 x 20′ L4

Plan:

  • 4 x 20′ / 1′ rest
    • L4 format (1′ @ 21, 3′ @ 20, 3′ @ 19, 3′ @18)
    • 8 x 10′ pieces

Really nice and easy.  My lower back is bother me a little, but not enough to impact what I’m doing.

Screen Shot 2016-01-31 at 4.18.32 PMScreen Shot 2016-01-31 at 4.18.19 PM

Workout Summary – Jan 31, 2016
–_|_Total_|_-Total-_|_–Avg–_|_-Avg-_|_Avg-_|_-Avg-_|_–Avg–_|_-Avg_|_-Avg
–_|_Dist-_|_-Time–_|_-Pace–_|_Watts_|_SPM-_|_-HR–_|_-%HRR–_|_-DPS_|_-SPI
–_|_19828_|_80:00.0_|_02:01.0_|_197.4_|_19.4_|_135.9_|_ 65.2% _|_12.8_|_10.2
Workout Details
#-_|_SDist_|_-Split-_|_-SPace-_|_Watts_|_SPM-_|_AvgHR_|_Avg%HRR_|_DPS-_|_-SPI

01_|_02481_|_10:00.0_|_02:00.9_|_197.9_|_19.5_|_126.4_|_ 58.4% _|_12.7_|_10.1
02_|_02483_|_10:00.0_|_02:00.8_|_198.4_|_19.5_|_134.9_|_ 64.5% _|_12.7_|_10.2
03_|_02481_|_10:00.0_|_02:00.9_|_197.9_|_19.5_|_135.0_|_ 64.5% _|_12.7_|_10.2
04_|_02476_|_10:00.0_|_02:01.2_|_196.7_|_19.4_|_139.2_|_ 67.6% _|_12.8_|_10.1
05_|_02480_|_10:00.0_|_02:01.0_|_197.7_|_19.4_|_135.8_|_ 65.1% _|_12.8_|_10.2
06_|_02474_|_10:00.0_|_02:01.2_|_196.4_|_19.3_|_139.2_|_ 67.5% _|_12.8_|_10.2
07_|_02480_|_10:00.0_|_02:01.0_|_197.8_|_19.4_|_136.6_|_ 65.7% _|_12.8_|_10.2
08_|_02474_|_10:00.0_|_02:01.3_|_196.2_|_19.3_|_140.5_|_ 68.4% _|_12.8_|_10.2
Target_____________Actual_____________delta____________
Strokes____Meters______Strokes____Meters______Strokes__meters___EndHR
0192___|___02456___|___0195___|___02481___|___03___|___25___|___129
0192___|___02456___|___0195___|___02483___|___03___|___27___|___133
0192___|___02456___|___0195___|___02481___|___03___|___25___|___136
0192___|___02456___|___0194___|___02476___|___02___|___20___|___135
0192___|___02456___|___0194___|___02480___|___02___|___24___|___136
0192___|___02456___|___0193___|___02474___|___01___|___19___|___134
0192___|___02456___|___0194___|___02480___|___02___|___25___|___135
0192___|___02456___|___0193___|___02474___|___01___|___18___|___139
1536___|___19647___|___1553___|___19828___|___17___|__181___|___000

Tomorrow:  Scheduled for a rest day, but since I will be flying to Munich on Monday night, I will take my rest day on Tuesday, and do Tuesday’s 4×1000 tomorrow morning.  Last week I did this with an avg pace of 1:40.4.  I’ll aim right around 1:40 and see how I do.

Pyramid of Pain

Back to the lake.  It beckoned to us.  No ice at all and flat water.  I wanted to row so badly.  Oh well, we had to satisfy ourselves with the view out the window.

12662043_874353312663021_7124946785866054928_n

The plan for today

  • fletcher 20′ warmup
  • Sprint Pyramid
    • 1’/2’/3’/4’/3’/2’/1′
    • equal rests
    • Pace target: 1:41
    • Rate target: 30
  • 2K cool down

I felt OK during the warmup.  I pushed it too fast at first, and looking at the HR data later, it was a bit high.  I did not like my erg at all.  Sounded like grinding gears, and near the finish it felt like the connection to the flywheel was “mushy”.  Not sure why, but it was definitely a sub-par erg.  I blame it for my lousy performance.

The warmup.  First 4 minutes should have been closer to 2:05.  The second to 2:02.

2016-01-30 10.26.23

The the main event.

2016-01-30 10.26.32

2016-01-30 10.26.43

The cool down

2016-01-30 10.27.03

And the HR plot.  I was working very hard for those crappy splits.

Screen Shot 2016-01-30 at 2.35.33 PM

Tomorrow:  4×20’/1′

Using Painsled with Excel

The story goes back to rowpro.  A rowpro user (danburpee) on what was then the concept2 UK user forums invented a spreadsheet to process the csv files that rowpro can export for a workout.  This template was improved and modified over time and is a very useful tool to analyze workouts.  I started with the spreadsheet and adapted it to be used with crewnerd,  RIM, speedcoach and the yahoo fitness app.  When I found out that someone was creating an app for the iphone (and android i guess) that allowed one to log data from the PM3 and PM4 (via USB) or PM5 (via BT), I thought I needed to give it a try.  The app is called Painsled and it is still in beta, but is quite functional as far as I can see.

Right now the app is a bit primitive.  It essentially just logs data from the PM and stores it.  Then that data can be exported as tcx, json, or csv files.  Getting the data off the iphone requires you to plug into itunes and move files to your computer, but I imagine that this will be improved in the future.

I did some workouts with the app and exported the CSV and took a look at what you get.  It’s very different from the exports from the other  tools in a number of ways.

  1.  There is essentially a record for each “event” that comes from the PM.  So, every update of HR, or change of stroke state generates a record in the file
  2. Not all the parameters are logged in each record
  3. There are 31 (31!) fields of data

The result of this is that even short workouts generate really long csv files.  All of my tools assume that the CSV data is formatted in a more concise format.  Essentially one record per stroke, or per set distance or per set time.  Also that every field has valid data for each record.

I experimented with a couple of ideas.  I tried to read it all into excel and concatentate the data there, but because of the sheer number of rows, the performance was miserable.  It was also a pain to do what was essentially a sequential task in a programming environment that was sheet and formula based.  Ultimately I decided that I needed to preprocess the data.

I decided to make the data look as much like the export from my speedcoach as possible.  That is the excel workbook that I have done the most work on, and the file format is very straightforward.  I decided that I would tailor the workbook for painsled, but try to keep it as close as possible to the speedcoach starting point as possible.

I built a script in python called pspack2.py.  You might guess that the name means that it was my second attempt.  Actually, it is more like my fourth, but that’s not important.  I’ve posted the script here : pspack2 (apologies about posting it as PDF, apparently wordpress doesn’t like me posting text files.)

The script is straightforward.  You pass it the filename you want processed, and it does the following.

  1. Scan the file for records that indicate that the stroke state is recovery and save the indices
  2. Read each record of the file and maintain the last valid numerical value for each field.  Basically carrying the last valid value down through all the following records
  3. When you hit a record  that is a “recovery record”, write the current values for the fields to the output file.  I massaged the data field order and formatting to match the speedcoach template.

Then in the excel file, I just adjusted the axis scaling on the graphs to line up with erg splits instead of boat splits, and it worked great.  Here is the current file: Painsled Template Rev – (note:  you need to change the file extension from .xlsx to .xlsm for the file to function properly.  Also note, this works only on excel 2010 and later on windows)

This is not completely done.  There are three enhancements that I want to work on.

  1. Painsled logs distances on a per interval basis, versus accumulating like rowpro.  I will put some math in the script to change that, but it hurt my head to think it through right now.
  2. I like to look at watts, so I will add graphs  to the spreadsheet for that
  3. I want to build a time based interval text summary tab.

But, it works well enough for now and I had some fun playing with python again.

Screen Shot 2016-01-29 at 9.00.43 AMScreen Shot 2016-01-29 at 9.01.00 AM

 

 

3 x 20′ L4 : The Painsled era begins

While I was riding airplanes, I had enough time to fiddle around with the Painsled “.csv” output files.  I will post a note about that later on, but I now have the beginnings of a workable workflow.  An indication of how obsessed I am with the “big data” aspect of training, it feels like a big relief to be able to make my pretty charts.

The plan for today:

  • 3 x 20′ / 1′ rest L4
    • 10W/stroke
    • same stroke sequence as Wednesday
  • Peak power training

I felt very sore and tired this morning and the my RPE was quite high in the workout.  HR was on the high side, but reasonable.  I was also feeling some soreness in my lower back.  After the second 20′ piece, I decided that I would not do the peak power stuff today to give my back a bit of recovery time.

Oh happy day!  Plot from Painsled!

Screen Shot 2016-01-29 at 9.01.00 AMScreen Shot 2016-01-29 at 9.00.43 AM

Tomorrow:  The training plan calls for a repeat of the 8×500.  But, I managed to get a few folks interested in a group workout at the boathouse, so I wanted to come up with something new and different.  Time based workouts are better for a group, and I think that this group might really like the sprint pyramid workout. So, this is what I’m thinking is:

  • 1′ / 2′ / 3′ / 4′ / 3′ / 2′ / 1′
  • Equal rests
  • Pace target: ~2k race pace
  • Rate Target: 30

6 x 750 / 4′ rest (post red eye)

Plan:

  • Arrive in Boston at 6AM from LAX
  • Drive to work
  • Change into workout clothes
  • Fletcher 20′ warm up
  • 6 x 750 / 4′ rest
    • Pace Target: <1:41 (last time 1:41.1, thanks to a blistering last interval)
    • Rate: 30
  • 2K cool down

Low expectations would be an adequate description of my attitude going into this session.  I felt tired and a bit queasy after the flight.  I must have slept a fair amount, I don’t remember taking off and I don’t remember much from the flight itself, but I didn’t feel very rested.

The warmup was awful.  I thought it would be pretty humiliating to HD in the warmup, so I kept going.  The speedy bits actually were not so bad toward the end.

2016-01-28 08.28.14

The main set.  I decided to try to go out at a 1:40 pace.  I was ahead of the target through the first 500m of the first interval and I started to feel less than ideal.  I slowed a bit and let the pace drift up.  Rep 2, I decided to stick to my 1:41 plan.  It still sucked.  I decided that 1:42 might be a wiser choice.  It was.  The next rep went a bit better.  I got cocky.  I decided to try to focus on rate and stick with 30 and see what happened.  Well, I was faster, but I wanted to die at the end of the rep.  So, Rep 5 was just about surviving at 1:42.  Then rep 6, I actually tried to lay down a faster last, but with 250m to go, I nearly lost gastro-intestinal control and I barely made to the end in one piece.

End result: 1:40.8.  Way too much drama for a 0.3 sec improvement.  But I didn’t bail on any reps.  I was annoyed by the intermittent and laggy HR data on the PM5.  I’m not sure if it’s the PM5 or the strap.  I suspect the former, since I’ve never seen this with the strap connected by BT to my phone.

2016-01-28 08.28.22

Finally, I struggled through a 2K cool down

Tomorrow:  3 x 20′ / 1′ plus peak power

Wednesday: 3×20 L4 plus Peak Power

Plan:

  • 3×20 L4
    • 6 x 10′ : (1’@21, 3’@20, 3’@19, 3’@18)
    • 10W / stroke (so 18spm => 180W, etc)
    • 1′ rests
  • Peak Power Training
    • 15 x 10″ / 1′ rest
    • target > 700W peak in each rep.

This morning I was at crossfit anaerobic.  A gleaming, large box just four tenths of a mile away from my hotel.  I walked there in about 10 minutes.  I met Kim who took my twenty bucks and pointed me to the ergs.  I was tucked away from the class so I didn’t have the nice visual distraction for most of my workout.  The erg was smooth as silk, and clean enough to give me a drag factor of 200 when set to 10 for the peak power stuff.

I had another customer dinner and another big steak last night.  But I am ashamed to admit, when I got back to the hotel around 10, I felt a little hungry.  Luckily, there was nothing to snack on.  This morning, other than a little dehydration, I felt fine.

The 3×20 was uneventful.  I was listening to “Hamilton” (the musical) and with the rate changes, the time passed quickly and easily.  HR was right around the UT2/UT1 border for the whole row, and continued to drop nicely during the 180W bits, just the way I wanted it to.

2016-01-27 07.13.02

After that, I had a quick drink, toweled off, pushed the damper up to 10 and programmed the erg for 1’10” intervals with no rest.  This is peak power training and the goal was to do a standing start and about 8 hard strokes over 10 seconds.  I was trying to get over 230W on my first pull and over 700W for my peak stroke.  I managed to get over 700W for almost all of the sprints, and topped out around 720W.  I didn’t fade much through the workout.  The first pull was more erratic.  If I hit it just right, I would pull a 235 to 240W first stroke.  But if I overcompressed, or open my back early in the first stroke, I would fall down to 220 or below.

I am enjoying these sessions. I’m worrying that I am doing them wrong since I don’t seem to fade as much as the instructions say I should, but I don’t think I can pull much harder!

Here’s the HR plot for everything, including my walk to the gym.  I like the way the sprints look at the end.

Screen Shot 2016-01-27 at 9.03.33 AM

 

Tuesday: 4 x 1K / 5′ rest – Progress

Plan:

  • Fletcher Warmup
  • 4x1K / 5′ rest
    • Pace: <1:42
    • Rate: 30
  • 2K cool down

This morning I paid a visit to the good folks at Crossfit Del Mar.  $20 for a day pass and I had my choice of any of the well used and nicely maintained Model Ds to choose from.  The people were nice and the crashing of weights certainly provided a good distraction.  I could tell this place was well run by just how good the form was on all the folks in the class doing a cool power clean/jerk combo.  They must be serious about coaching proper form on these lifts.

The workout was tough.  I was out last night for dinner with a customer.  It ended early, but still a gigantic steak and couple of glasses of wine probably didn’t help.

The warm up felt sluggish and hard.

2016-01-26 06.34.36

The main event was interesting.  I felt awful in the first rep.  I went out hard an I was looking at sub 1:40 pace about halfway through, but I felt like I needed to ease up.  I bled off a bit of pace and cruised to the finish.  I was still more than a second ahead of target for the rep, but I felt significantly more damaged than I did last week after rep number 1.

For rep 2, I chatted with myself and reminded me that the target was 1:42, and that’s OK.  I big improvement over a week.  So, this time I settled more quickly and played around a bit with rate keeping the pace dancing between 1:40 and 1:41.  I was looking at 1:41 with about 20 strokes to go, and I pushed the finish a bit.  Aww crap, I finished it faster than rep #1.  I felt honor bound to try for a negative split session.  Actually, I felt a little better after rep #2 than rep #1.  And 5 minute rests are luxuriously long.

So, into rep 3.  I knew I wanted something faster than 1:40.7, but I was reluctant to push it too hard.  I basically cruised along around 1:41 and goosed the last 20 strokes. 1:40.4

Now the finale.  I busted out of the gate pushing 1:38s.  That lasted about 10 strokes.  I drifted to 1:39s.  By the time I was 30 strokes in, I was in survival mode.  I was not going to let the rep go, but I was in deep trouble,  I dropped back to 1:41s for nearly 500m and the avg pace climbed up to 1:40.5 or so.  With about 30 strokes left, I started pushing really hard and I saw the avg start dropping.  With 10 left, I saw the avg dip below 1:40, and kept pushing.  I finished with 2 strokes at 1:35.

So, a 1:40.4 avg pace for the workout.  That’s 0.6 faster than when I did this workout before the 2014 crash-bs and with a lot less drama, and that year I went 6:37.6.

2016-01-26 07.07.37

I did a 2K cool down and headed back to my hotel walking a bit taller.

2016-01-26 07.18.04

Here is the HR profile for the workout.  Lower HR than I expected to see.

Screen Shot 2016-01-26 at 9.12.02 AM

Tomorrow:   3×20 plus peak power at anaerobic crossfit in Newport Beach.

Sunday: 4×20 L4

Easy row.  Nothing to report.

Screen Shot 2016-01-24 at 6.44.44 PMScreen Shot 2016-01-24 at 6.44.30 PM

Workout Summary – Jan 24, 2016
–_|_Total_|_-Total-_|_–Avg–_|_-Avg-_|_Avg-_|_-Avg-_|_–Avg–_|_-Avg_|_-Avg
–_|_Dist-_|_-Time–_|_-Pace–_|_Watts_|_SPM-_|_-HR–_|_-%HRR–_|_-DPS_|_-SPI
–_|_19765_|_80:00.0_|_02:01.4_|_195.5_|_19.2_|_134.8_|_ 64.4% _|_12.8_|_10.2
Workout Details
#-_|_SDist_|_-Split-_|_-SPace-_|_Watts_|_SPM-_|_AvgHR_|_Avg%HRR_|_DPS-_|_-SPI

01_|_02461_|_10:00.0_|_02:01.9_|_193.3_|_18.9_|_126.5_|_ 58.5% _|_13.0_|_10.2
02_|_02460_|_10:00.0_|_02:02.0_|_192.9_|_18.9_|_132.4_|_ 62.7% _|_13.0_|_10.2
03_|_02480_|_10:00.0_|_02:01.0_|_197.7_|_19.4_|_132.1_|_ 62.5% _|_12.8_|_10.2
04_|_02475_|_10:00.0_|_02:01.2_|_196.5_|_19.4_|_135.0_|_ 64.5% _|_12.8_|_10.1
05_|_02474_|_10:00.0_|_02:01.3_|_196.3_|_19.3_|_134.4_|_ 64.1% _|_12.8_|_10.2
06_|_02472_|_10:00.0_|_02:01.4_|_195.8_|_19.3_|_139.9_|_ 68.0% _|_12.8_|_10.1
07_|_02471_|_10:00.0_|_02:01.4_|_195.6_|_19.4_|_136.2_|_ 65.4% _|_12.7_|_10.1
08_|_02472_|_10:00.0_|_02:01.4_|_195.8_|_19.3_|_141.4_|_ 69.0% _|_12.8_|_10.1

Target_____________Actual_____________delta____________
Strokes____Meters______Strokes____Meters______Strokes__meters___EndHR
0188___|___02439___|___0189___|___02461___|___01___|___22___|___130
0188___|___02439___|___0189___|___02460___|___01___|___20___|___130
0192___|___02456___|___0194___|___02480___|___02___|___24___|___134
0192___|___02456___|___0194___|___02475___|___02___|___19___|___133
0192___|___02456___|___0193___|___02474___|___01___|___18___|___136
0192___|___02456___|___0193___|___02472___|___01___|___16___|___137
0192___|___02456___|___0194___|___02471___|___02___|___15___|___137
0192___|___02456___|___0193___|___02472___|___01___|___16___|___137
1528___|___19614___|___1539___|___19765___|___11___|___152___|___000

Tomorrow:  Rest day.  Off to San Diego.