Data obsession

Sometimes I get sucked into a coding obsession. I am not even a programmer. But when creating data processing routines I can get into a flow. Improve. Debug. Improve. Debug. The end result is

  • Lack of sleep
  • Spent more time coding than I will ever save using the code
  • Spending a lot of time daydreaming about code improvements

The remedies are to either completely abandon the project or to tolerate it for a while. The enthusiasm ebbs once a certain level of usability is achieved but other people fail to agree what a great thing I have produced … 🙂

So last week I spent a few hours getting Greg’s great python routines to work with TCX files. Did that, and tweaked the plots a bit to my taste. I could have stopped there. In the mean time, I have

  • Added parsers for the CSV files produced by RowPro and the desktop version of painsled
  • Added a routine to make “pretty” summary strings, one-line-per-interval pretty strings for painsled CSV files and CrewNerd summary CSV files
  • Packed everything into a python package and uploaded it to pypi.python.org when people can download and install it
  • Pedantry alert: Rewrote one of Greg’s for-loops using Python pandas selection tools

The final big thing I want to do is add a concept2 logbook uploader. Then I may even start uploading my OTW rows to the logbook.Painsled is great, but you have to use the Concept2 utility to upload your rows to the logbook. The C2 utility is fine, but only works if you have your PM3/4/5 with logcard connected to the computer. With my utility, you should at least get the basic data (total time, total distance, date, weight category into the logbook.

Anyway, for the adventurous: https://pypi.python.org/pypi/rowingdata

There will probably not be more than three people in the world who may find this useful. I wonder who number three is.

Anyway, here is today’s row in all it’s glory:

woensdag.png
Workout Summary - D:tijdelijkcrewnerd-2016-03-30.csv
--|Total|-Total-|--Avg--|Avg-|-Avg-|-Max-|-Avg
--|Dist-|-Time--|-Pace--|SPM-|-HR--|-HR--|-DPS
--|09908|53:13.0|02:41.1|19.5|142.8|174.0|09.5

No intervals summary, because I did this row as one big “Just Row” in CrewNerd.

I was a little time pressed, doing this row between work meetings, so it was shorter than I wanted. I did the 10 strokes on/10 strokes off again, experimenting a lot with stroke length and rate.

Coming Saturday I will row a test 6km trial against the 15/16 year olds in pairs. Not sure who should theoretically be faster. I hope I will win.

Here are two other highlights:

image001.png
This session was imported from a RowPro file (my recent 10k PB)

The session of March 25th as intervals (jimported from CrewNerd):

Workout Summary - 2016-03-25-0758.CSV
--|Total|-Total-|--Avg--|Avg-|-Avg-|-Max-|-Avg
--|Dist-|-Time--|-Pace--|SPM-|-HR--|-HR--|-DPS
--|03394|13:30.0|01:59.3|30.5|164.0|173.4|08.2
Workout Details
#-|SDist|-Split-|-SPace-|SPM-|AvgHR|MaxHR|DPS-
01|00179| 00:45 |02:05.9|30.6|138.0|162.0|07.8
02|00189| 00:45 |01:59.2|30.6|162.0|171.0|08.2
03|00189| 00:45 |01:58.8|30.7|163.0|173.0|08.2
04|00189| 00:45 |01:59.2|30.7|164.0|173.0|08.2
05|00190| 00:45 |01:58.0|30.7|167.0|174.0|08.3
06|00188| 00:45 |01:59.3|30.7|165.0|172.0|08.2
07|00187| 00:45 |02:00.3|32.0|158.0|171.0|07.8
08|00193| 00:45 |01:56.4|30.6|166.0|175.0|08.4
09|00191| 00:45 |01:57.8|29.3|167.0|174.0|08.7
10|00192| 00:45 |01:57.2|29.4|168.0|175.0|08.7
11|00193| 00:45 |01:56.7|30.7|169.0|176.0|08.4
12|00181| 00:45 |02:04.0|28.0|165.0|174.0|08.6
13|00187| 00:45 |02:00.4|32.0|156.0|172.0|07.8
14|00187| 00:45 |02:00.1|30.7|168.0|175.0|08.1
15|00187| 00:45 |02:00.5|29.3|166.0|173.0|08.5
16|00191| 00:45 |01:57.7|32.0|168.0|175.0|08.0
17|00194| 00:45 |01:56.2|32.0|172.0|179.0|08.1
18|00187| 00:45 |02:00.5|29.4|170.0|178.0|08.5