Tuesday, September 30, 2014

Models and whatnot

I'm gaining momentum down the slippery slope of developing the application at this point. To date:

  •  I've registered a domain
  • worked out the code for the API
  • built the database model
  • started mocking up the UI
  • figured out how to tie the web app to a mobile app (hooray for phonegap!)
  • tapped into strava and mapmyfitness
  • made contact with Suunto
  • tied in the handicap system code
The difficult piece I'm wrestling with is how to make this simple for athletes. The concepts are a little more complex than what the average athlete would be interested in. The target user:
  • Is an active athlete, participating in any of swim, bike, and run
  • Trains often - at least 3 times a week
  • Has a data collection device, ie Garmin, Powertap, etc.
  • Doesn't have, want, or can't afford a coach
  • Wants to improve using quantitative planning
I saw once (and now can't find) that TrainingPeaks said they have 500,000 users - which sounds like a lot, but I suspect is inflated substantially by the number of free accounts that were started and not actively used, duplicated accounts created by coaches for athletes, etc. I'll aim really small - 5,000 users. That would be a sustaining amount of users from which the site could easily stay afloat and be a full time pursuit, allowing changes and improvements to be made over time to enhance the experience.

The user experience should be quick and easy:
  • Create a trial account
  • Enter the amount of time in hours they want to train a week
  • Import data from Strava, MapMyFitness, or ideally Garmin\Suunto\Polar, etc. 
    • note- there should be a very easy and current How-to on syncing data into Strava and MapMyFitness to allow this to be done using the free providers

  • From the data, gather their FTPs, with the ability to override
  • Create a work week: create days, roughly at first, with the ability to fine tune.
  • Create a schedule of work weeks 
  • See where their work will lead them over time

That's it. The extensions come from being able to create work weeks - linking to authors, coaches, etc who can help them build workouts. Guest workouts. Group workouts. Tracking friends. Entering race reports. The Handicap system host. Sync to calendars. 

I'd like to provide options - set at a user level - for which models people use for calculating their training levels. The Coggan model is one, the Skiba enhancements are another, Bannister is another, etc. Why not let people pick? I have long suspected the decay factor in CTL and ATL in the WKO+ model is too aggressive (42 days to complete evaporation, 7 days for acute gain) for decay functions, and I have experienced that less aggressively. I'm not in a position to call any of the models out, but it seems like they are variables, and should be treated as such.