Rethink logic and workflow for CP charts

Issue #581 resolved
Sander Roosendaal repo owner created an issue

The current CP chart functionality works but the user work flow is not intuitive. Please help defining

  1. A logical work flow (from user perspective)
  2. A architecture that can support this workflow
  3. A UI that guides the user through the workflow

Comments (21)

  1. Sander Roosendaal reporter

    An idea would be to store CP charts for each workout, which allows to quickly construct a CP chart for any collection of workouts. The workout CP chart could be a link on the Workout page. The UI for the CP chart from a collection could be similar to other Analysis features, but making sure OTW and OTE are not mixed.

    For breakthrough emails, the stored “cumulative” CP data should be based on a fixed number of weeks (42 days? 26 weeks? Perhaps a user setting with a reasonable default?) Would we also send the opposite of breakthrough emails, pushing for regular testing?

  2. Sander Roosendaal reporter

    If we use a normal “workout selector”, we could get rid of the “ranking workout” attribute. Or would we keep it as a way to quickly find outstanding workouts?

  3. Gregory Smith

    @sanderroosendaal I would get rid of it. If this is a Long term discusssion, I would be interested in ways to make the listing of workouts more consistent and user controllable. I need to think about it.

  4. Michael McGuirk

    I can envision the CP chart UI on the Analysis page having a form to select date ranges, OTE/OTW and boat type.
    For breakthrough emails, I’d like to see 26 and 13 weeks as an option.
    To me, the ranked workout idea is confusing and, if R can automate the process, I too would like to get rid of it.

  5. Sander Roosendaal reporter

    Prototype on my laptop. The old version also has predictions, including a form to add a free ranking duration. I welcome inputs on how to improve the UI and what functionality to add

  6. Sander Roosendaal reporter

    To do

    1. Add user setting for monitoring duration for CP charts (presets to 42 days, 13 weeks, 26 weeks, 52 weeks)
    2. Change breakthrough detection to automatically update CP chart on each workout, based on workouts during the time window set by the user
    3. Omit all non-rowing workouts from automatic CP calculations (this we’re already doing)
    4. Add HTML around the image with useful info (predictions for test pieces)

    Questions

    1. For manual CP calculations, do we need to protect the user against selecting

      1. A mix of modalities (erg, otw)
      2. Workouts from a mix of persons (for coach view) - the drawback is that you break functionality when switching from one Analysis function to another. Perhaps only a warning?
    2. Do we need a form to add a critical power calculation for a range of tests / durations, etc, like in the current CP chart? perhaps just one value (test duration / distance)

  7. Sander Roosendaal reporter

    Mike

    • I started on the Histogram page as you suggested in Slack.
    • Navigating the forms on the Histogram page is an adventure!
    • First I selected "CP Chart" for the "analysis" type form because that's what you told me to do. All good.
    • Next, I'm drawn to the first form on the left "filter by keyword" so I used that to filter for "OP 1X". It should deliver two workouts, I think. So far I haven't looked at the dates form or the workout type form (it seems natural to work from the top down). I click "Go".
    • When I hit Go, the "analysis field'' went back to Histogram so, after I selected the two OP 1X workouts, I got a histogram. Cookie problem?
    • I correct the analysis type and hit Submit and get a CP chart. Yay!
    • I mess around on the histogram page some more and find another cookie problem: if I enter a keyword that doesn't exist and submit, I get nothing as expected. I then blank the keyword field and Submit again, but the keyword that I just deleted pops up again and I get nothing.
    • The only way short of logging out and back in again, to clear the keyword cookie is to clear the field and then hit Go. Now that I have learned that, I'm telling myself I should have figured it out sooner. But I didn't and I think that is an example of non-intuitive behavior. When the keyword didn't work, my intuition, for what it's worth, was to go to one of the other forms to try to narrow down the workout list.
    • Aside from the cookie problems, I would suggest that the filter process would be more intuitive if the date form were at the top, the workout type next and the keyword filter last. And have just one "Submit" button for all three forms. Just my $0.02. Others may have different ideas.

    I'm sorry to have gotten hung up on this trivial stuff. I will get into the big picture tomorrow. I've run out of time tonight.

  8. Sander Roosendaal reporter

    Mike, the Analysis field going back to Histogram is confirmed. This is difficult to avoid with both a “GO” button for filtering and a normal form submission button.

    After you blank the keyword, you would have to click GO to get the expected behavior.

    Logging out and in again works, but you didn’t have to do that.

    I could of course get rid of the GO … let me think of it

  9. Michael McGuirk

    Excellent! For me (just one user), it's much more intuitive and it WORKS! Thank you! Getting rid of the Go button in favor of one Submit button is a huge improvement!

  10. Michael McGuirk
    • Re "store CP charts for each workout" and linking it on the workout page, excellent idea! I would like the link to go to a chart showing the workout CP plot superimposed over the "big picture" chart, i.e. the one for the user selected time frame (13 weeks, 26 weeks, whatever). To me it's quite enlightening to see whether my workout "bumped" the CP chart higher for any duration.
    • "Would we also send the opposite of breakthrough emails, pushing for regular testing?" No thank you :) Perhaps as a user option?
    • Re manual CP calculations, I don't think we should "protect the user" from mixing modalities. In fact I'd like to see us have the ability to select multiple modalities as input to the chart. I'm thinking I would want to look at my 4X workouts and 1X workouts separately and combined and maybe include OTE, if nothing else just for entertainment. I might even include BikeErg workouts.
    • Re CP calculation for user selected distance/duration, I find the existing feature very useful, e.g. I like to look at 20 minute CP which isn't in the existing table. I would envision the existing "Pieces for Predictions" form being added to the other forms on the new (histogram) opening page, perhaps in the right hand column under the Analysis form.

  11. Michael McGuirk

    Here’s another idea for the “new” CP chart: In the flyout, when you hover over a red dot, include the date of the workout that produced that plot point. That way, one could go back to that workout and relive the glory 🙂

  12. Michael McGuirk

    Here’s another idea for work flow on the new CP functionality. When user goes to the CP chart from a specific workout using the menu item “CP Chart”, the CP filter for Workout type should be preloaded with the type of the originating workout.

  13. Michael McGuirk

    This is a single workout plotted against the rolling CP value. I think the Y-axis scaling should be scaled for the model values instead of the power data for the workout.

  14. Gregory Smith

    Finally got around to trying it. Works great! Much more intuitive

    I generated a CP chart for erg on slides:

    I then tried to to do one with standard shell. When I selected that from the workout type and clicked submit, the workout list did not filter out the erg workouts.

    Leaving the page and coming back, I was able to choose a new workout type and generate a chart of OTW.

    Enhancement suggestion: Add Workout type and Date to the title of the plot. If you are saving these, it will be useful to have the reference.

    I experimented with taking out workouts and I saw expected changes in the chart:

    Just 1500m and longer intervals:

    Add in 8x500 intervals:

    I tried the rolling option, but it generated a strange result, and I didn’t know what it was for:

    Suggestion: If there is a way to identify which sessions yield the specific points on the plot, I think that would be cool and useful. Since I don’t do many specific trials, the algorithm is sifting stuff out of a lot of workouts, I would like be able to “eyeball” how much harder I might be able to go.

    Suggestion: You might appeal to a broader audience if you translated the x-axis into minutes and got rid of the scientific notation.

    Suggestion: Is there a way to add a second reference y-axis with the pace translation? A lot of rowers think in terms of pace instead of power.

    in summary: This is amazing! I love it.

  15. Sander Roosendaal reporter

    Nice suggestions. The rolling should work after your first workout upload to Dev. It was set to some default value before.

  16. Sander Roosendaal reporter

    I am considering to release to production what we have now on dev. And after that I can work on improvement suggestions you gave me. What do you think? Is there one improvement you would recommend to make before the release to prod?

    I am considering to add labeling with workout date when you hover over the red data points (or complete workout name and date) as a first improvement.

  17. Michael McGuirk

    Yes, it’s ready for prod in my opinion.
    Might want to fix the scaling issue I mentioned above first.
    I agree red dot hover info would be very helpful.
    Thank you!

  18. Sander Roosendaal reporter

    Here's a very minor thing to look at: if you ask the "ranking piece (minutes)" to produce anything longer than 59 minutes, it responds with the wrong duration, e.g ask for 60, get 43:20, ask for 77 get 1:00:20, etc. (edited)

  19. Michael McGuirk

    I’m still having problems when I select the last six weeks of coastal workouts and plot against the six week rolling model. I would expect to see the “power” plot (red dots) align pretty closely with the red/green “model” plots. But it doesn’t. Greg had the same problem in the last plot he posted above… the one he described as “strange results”.

    This is the input to the chart above…

  20. Log in to comment