7 ms·
For those interested in the engineering behind it, there's a few elements of this app that might be of interest. 1. Workout builder: there's no stored workouts
by kareemsabri 11y ago
For those interested in the engineering behind it, there's a few elements of this app that might be of interest.
1. Workout builder: there's no stored workouts. Given a bunch of inputs: # of minutes, muscles to target, goals, the builder generates a workout for the user. The goal is to constantly get new workouts.
2. Workout calibrator: workout builder gives a workout that consists of exercises, sets, and reps. Workout calibrator assigns weight to all the sets, based on the user's past performance for that exercise and other strongly correlated exercises. If it isn't confident enough (not sufficiently high correlation coefficient for any past exercises) it leaves it blank for the user to fill in.
3. Set calibrator: the set calibrator is for calibrating a single set while in a workout. If it tells the user do 100lbs x 8 reps, and the user does 12 reps, it will adjust all subsequent exercises of that type to a more appropriate weight for 8 reps. There's no ML here, it's just a formula (8 rep weight = .6 * 12 rep weight, for example), but it works pretty well. This has the nice effect that if you don't know how much weight you can lift for x reps, just grab any weight, do what you can, tell the app how much you did, and it'll be accurately calibrated in 2-3 sets.
- brudgers 11y agoCurious about the sports science and kinesiology considerations in selecting a training set for the ML engine.
- bazzargh 11y agoA slightly different approach: I was doing the hacker's diet exercise ladder (https://www.fourmilab.ch/hackdiet/e4/exercise.html https://www.fourmilab.ch/hackdiet/e4/exercise.html), which is supposed to be completed in 10-15 mins; if you can't complete it in that time, move down a rung. But keeping track of the numbers at each level got annoying, and it was unclear if you were on track to complete things fast enough. So, I wrote code to take those lists and a number of beats for each exercise, with a gap between to change position, take the completion time and calculate a bpm to make this fit. I then processed the output using the built in voices on the mac to read instructions in the gaps, count down reps and so on, and set up the metronome, so I never had to look at the screen. Now I could just type a command to kick off the whole thing. I ended up not using it so much, I got sidetracked into the yak shave of making it play generative music in time with the plan, and just went running more. One I did use more was a simple timer for cycling on the turbo, for eg watching movies instead of using a planned session like The Sufferfest. All this did was, you pick how long to ride, and then at decreasing random intervals it would read out the remaining time, then add a robot-based insult for encouragement (movie quotes and suchlike)