Skip to main content

Death by spreadsheet monkeys!

Edit: More updates, now after half-killing myself getting a QAbstractProxy to work, we have show in groups and a column chooser where you drag and drop columns onto the browser. I want to get show in groups to be clever when handling dates to show this week, last week, last month etc Or perhaps show by Season. Oh, and for Relative Intensity / IF I'd like to zone them (which would then remove the need for workout code), so L1, L2, L3 etc would reflect what I did rather than what I wanted to do... anyway, here is a screenshot (that is my Linux desktop, btw).



Ok, so I just saw Toy Story 3 with the kids and 'Death by monkeys' was a line that sums up IT project culture. Anyhoo, I finally got around to starting a project I've been meaning to do for a long time. Namely, a ride browser.

Ultimately, I'd like to use it as a way of sorting / searching and navigating through my ride history. Selectable columns, sort by etc. But for now all I've got is a big spreadsheet view... but it is a start... and lets face it, if you're used to WKO+ its finished already ;-)

Got my mojo back for riding too, so should be posting about (shock horror) bike riding rather than coding over the coming months. I'm currently trying to get a place on the Maratona dles Dolomites next July... if anyone reading can help me with this or has any tips on getting a place then shout, I'd be eternally grateful (another To Story line).

Later.

Popular posts from this blog

W'bal its implementation and optimisation

So, the implementation of W'bal in GoldenCheetah has been a bit of a challenge.

The Science I wanted to explain what we've done and how it works in this blog post, but realised that first I need to explain the science behind W'bal, W' and CP.

W' and CP How hard can you go, in watts, for half an hour is going to be very different to how hard you can go for say, 20 seconds. And then thinking about how hard you can go for a very long time will be different again. But when it comes to reviewing and tracking changes in your performance and planning future workouts you quickly realise how useful it is to have a good understanding of your own limits.

In 1965 two scientists Monod and Scherrer presented a ‘Critical Power Model’ where the Critical Power of a muscle is defined as ‘the maximum rate of work that it can keep up for a very long time without fatigue’. They also proposed an ‘energy store’ (later to be termed W’, pronounced double-ewe-prime) that represented a finit…

Polarized Training a Dialectic

Below, in the spirit of the great continental philosophers, is a dialectic that attempts to synthesize the typical arguments that arise when debating a polarized training approach.

It is not intended to serve as an introduction to Polarized training, there are many of those in-print and online. I think that Joe Friel's blog post is a good intro for us amateurs.

For Synthesis Against A Elite athletes have been shown in a number of studies to train in a polarized manner [1][2][3] There is more than one way to skin a cat. Elite athletes adopt plans that include high-volumes of low intensity and low-volumes of high-intensity. Elite athletes have also been shown to train in a pyramidical manner
[13] B Polarized Zones are between LT1/VT1 and LT2/VT2 [1]
LT1/VT1 and LT2/VT2 can be identified using a number of field based approaches [4][5][6][7]

You can follow guidelines on mapping LT1/LT2 to cycling power to make it useful for amateur cyclists. Polarized zones are har…

W'bal optimisation by a mathematician !

So the integral computation for W'bal was expensive.

I tried to optimise from a domain and  programming perspective, where Dave Waterworth, a mathematician found a much more elegant and fast reformulation.

This means W'bal can EASILY be computed as you ride.

To explain the math here are his words;

I posted a comment on you Blog post on optimising the Wbal model. I've done some more thinking and I defn think it can be done without visiting the previous samples as the Skiba formula can be decomposed further, i.e. From your blog I believe the integral part of the equation is:





Basically this takes a weighted sum of preceding W'exp samples where the weight decays at a rate determined by tau, older samples are weighted less than newer ones. We can approximate as a sum provided tau is large compared to Ts (the sample rate):





Basic properties of exponential functions allow the for…