5 ms·
I have a weightlifting spreadsheet with weight on the vertical axis and reps on the horizontal axis. The value of each cell is the estimated 1 rep max if I acc
by Whitespace 2mo ago
I have a weightlifting spreadsheet with weight on the vertical axis and reps on the horizontal axis. The value of each cell is the estimated 1 rep max if I accomplish that lift. In theory if my e1RM is 100kg then I can lift any permutation of (weight,reps) that have the same e1RM. This is akin to knowing Pareto Frontier of my current strength.
I use conditional formatting to color cells according to the probability that I can lift them—if I lifted 50kg for 10 reps then I can definitely do 50kg for 9 reps, so that cell is green. But if e1RM(50,10) > e1RM(40,15) then I can probably do that too so it's light green. The visualization naturally becomes Pareto-like.
If I'm feeling strong I can aim for higher weight, lower reps. Or if I'm feeling weak I can close out a (weight, reps) that's below my current e1RM but I haven't accomplished yet. The end result is that I'm always "accomplishing" some sort of PR no matter how I feel.
I call this e1RM Bingo.
- joncrane 2mo agoThis is a cool way to gamify weightlifting. Cheers!
- godwinson__4-8 2mo agoIndeed, GP should take a spin at turning into an app. Could be worthwhile to have Claude take a first stab at a MVP. If pursued, good luck!
- cman1444 2mo agoCould you please share this spreadsheet? I would really love to have my own version of this.
- kachnuv_ocasek 2mo agoJust copy-paste that description to Claude and have it create the spreadsheet.
- Whitespace 2mo agoThe last time I tried this was back with Opus 4.6, and it was ok. I tried it with Fable 5 High just now and I was very impressed with the output. It took 7 minutes and one turn. I'm not one to believe in all the one-shot hype, but this was pretty good.
- wollowollo 2mo agoRespectfully, that's a cool illustration of the idea of xRMs etc but is missing the whole point of programming for higher or lower reps. E.g. lower reps are more stressful / higher cost of recovery but more strength-specific; high reps are better for hypertrophy work. But then, any well designed program will have you working across a range of rep ranges and so on. Please don't make an app based on this.
- jerkstate 2mo ago> high reps are better for hypertrophy work Some nuance here: the latest research shows that proximity to failure is the main hypertrophy driver regardless of load and rep count; high rep count makes proximity to failure harder to gauge; so high load/low reps close to failure is probably better for hypertrophy (there are other good reasons to do higher reps/lower load work though)
- bob1029 2mo agoThe most effective (difficult) training regimens usually avoid the middle of the distribution. You generally want to be operating at the extremes with some rotation schedule or duty cycle. High intensity interval training is an example of this philosophy that occurs within a single workout session. If you want the most 'optimal' form of this (aka, hell on earth), you should purchase a rowing machine. Being able to engage with very aggressive, full-body exercise every single day without exceptions is almost like cheating biology. You can maintain a 2-3x VO2 max premium over your peers with very little risk of injury.
- MSKJ 2mo agoRespectfully, that's missing the point of the comment. It's a fun thing to hit PRs, not everything needs a 'well actually'
- deleted 2mo ago[deleted]
- jerkstate 2mo agoI wrote this app as a SPA! It uses a curve formulation similar to Brzycki, except I added a “shape” parameter (an exponent gamma between 0 and 1) that slopes the 1rm downwards at the right side. My main finding for “pick whatever weight you want today” was that picking a lot of different weights made the curve less identifiable, so my latest iteration encourages you to pick a ladder for a few sentinel exercises per mesocycle in order to improve the statistical power. In addition, strength improves more quickly at >80% of 1RM, and hypertrophy depends on proximity to failure, so if you pick a lower weight, you really need to go to failure, which burns you out for the rest of your session, where leaving 1-2 reps in reserve is probably sufficient for hypertrophy and leaves a lot more gas in the tank for the rest of the session. Definitely open to suggestion/discussion here. https://curvefit.app https://curvefit.app (it runs on Cloudflare free tier, so I won’t have to start running ads or charging until I hit a couple thousand users)
- 747-8I 2mo agoGreat - commenting to refer to this
- fudged71 2mo agoThis is phenomenal, I'm definitely going to try this. Any chance this is OSS or plans to publish in the future?
- jerkstate 2mo agoThere’s no particular reason it’s not OSS, but my main interest is collecting a lot of data on different athletes and publishing original research. Most weightlifting studies are small n and over a short amount of time. My particular interest is how volume, load, and fatigue are related to strength, endurance, and compliance over time. My intention is to run it for a while, look at the data to generate some hypotheses, pre-register them, then run some experiments (and by that I mean just keep collecting data). If someone else was particularly interested in this goal, I would definitely invite them to the project. That’s why it was important for me to design it to be hosted for just the cost of the domain name, because I don’t really intend to make money from it, I’m just interested in the data.
- deadbabe 2mo agoRespectfully, it’s nothing new. Weightlifting industry has known this concept forever, it’s often just expressed as charts rather than graphs, as it is easier to interpret. But they go even a step further, they extend into 3 dimensions to also add body weight as a variable. So your graph would really have to be a 3D volume. Because different levels of body weight have different capabilities.
- rafabulsing 2mo agoRespectfully, his graph does not need 3 dimensions because it's a personal spreadsheet he uses just for his own training, so he can just display the data for his exact body weight.
- kazinator 2mo agoI wouldn't call this a Pareto Frontier, but simple isolines through a 2d function. There are weight x rep combinations that have a e1rm of 80kg, 85kg, 90kg, and so on. These are just equal elevation contours through the e1rm(x, y) function. The Pareto concept doesn't require that we calculate a function of all the dimensions and find contours; that sort of thing is not involved. But we could apply it here like this. Suppose we conduct a weight lifting contest as follows: contestants can lift any weight any number of times, and record the weight and reps. Then, how do we rank the results to find a winner, or winners? We have multiple dimensions, not a single dimension like "seconds to run 10 km". We can find the Pareto front set of the performances by eliminating all that have been dominated. A lift is dominated if another lift is no worse (no less weight, and no fewer reps), and strictly better: eight the weight is higher, or there are more reps, or both. We then end up with undominated winners, e.g. there could be three like this: { (100kg, 1), (80kg, 2), (70kg, 5) } but (70kg, 4) would not belong, due to being dominated by the third one, and (90kg, 1) would not due to being dominated by the first. The middle one is not dominated by either: though it's less weight than the 100kg, it is more reps, and though it is fewer reps than the 70kg, it is more weight. Given the Pareto front set, if we want to determine a single winner, we need a function to reduce the parameters to a single value. (The function should be such that if we included the eliminated losers under that function, none of them would emerge winner over the Pareto front set). This e1rm function looks like it fits the bill. If we have this function, we don't need the Pareto concept; we just run all the results through the function and pick the contestant(s) that maximize it.