I couldn’t sleep last night so I decided to whip up a 5/3/1 barbell training program generator in PHP for all to use freely 😄. Since finishing my 100 days of running I have more time available to me to both program and lift weights, and combining these two hobbies is one of my favorite things to do 💪🤓 💪.
The program lives here: http://strong.rudyfaile.com/
If you aren’t familiar with Jim Wendler’s 5/3/1 I highly recommend looking into it. Jim is a no-bs strength guru and I’ve found his program, as is its namesake, as the Simplest and Most Effective Training System to Increase Raw Strength. The beauty of the program is its built around you, and adjusts to your progress every four weeks. Essentially, you start out by testing your one rep maxes in the four core compound lifts: Overhead Press, Deadlift, Bench Press, and Squat. From there, the calculator generates a 4 week program based on your lifts. In week 1 you’re doing 5 reps across the board, week 2 three reps, and week 3 is your 5/3/1 week where you’re looking to max out. This is the most important week as the lifts here determine the following 4 weeks’ program. Thus, you have an ever-evolving, infinite duration strength training program custom tailored to your needs.
This was the first time I’ve cracked my knuckles to square off with PHP in a long time but I was extremely pleased with how fast I was able to jump back into it and rapidly port my command line Python version of this program to a web-driven one.
Mostly, I’m a terrible designer and I’m so pleased with how this came out on both the web and mobile 🙂 – especially considering this was developed bare-bones from the ground up.
I did a decent job of sanitizing input and ensuring validation with functions like
isset() – right now the only bug I’m aware of that I need to work out is the sizing on mobile but it’s tough to keep things readable in a table and still have it fit on the screen, still works though ¯\_(ツ)_/¯. I also chose to use
$_GETmethods instead of
_$POST so that folks could save the permalink if they wanted to revisit their program without re-entering the numbers (I added a nifty one-click button for this, too!)
On top of enjoying PHP development for once I got deep in the woods in Apache’s virtual hosts to set Lucy’s Adventure and my 5/3/1 calculator as separate directories on the same web server which is pretty cool. I’m having fun tinkering with all this stuff and am excited to add more projects to the *.rudyfaile.com subdomains!
If you have any questions about how to use the program or strength training theory in general feel free to leave a comment below 👇 or contact me privately. Also looking for feedback on what would make the program more intuitive (design suggestions are probably hopeless 😅.)