Last updated: March 2026
I train roughly two hours a day, seven days a week.
That sentence usually triggers one of two reactions: either “that’s incredible discipline” or “that seems like a lot.” Both miss the point. This isn’t discipline. Discipline implies forcing yourself to do something you’d rather not do. This is my hobby. The way some people play golf on weekends or tinker with cars in the garage, I lift heavy things, run long distances, and analyze the data that comes out of it. I love the work, I love the process, and I love the puzzle of making it all fit together.
I also don’t think everyone should train this way. Most people would be healthier if they walked more and ate better. The details of my program exist because I enjoy the details: the periodization, the data analysis, the weekly iteration. If the volume of what I do makes you feel bad about your own habits, please understand: this is recreation for me. It’s the thing I do for fun in a life where most of what I do is sit in meetings and stare at screens.
Two ideas drive everything.
It’s a universe where I control all the rules. I run a company. I have obligations and a calendar that changes hourly. Most of my day involves responding to things I can’t predict. Life is often dependent upon outside variables. Training is the opposite: I set the plan, I execute the plan, I measure the result. The weights don’t have opinions. The road doesn’t reschedule. My friend Zach Kanter, the founder of Stedi, talks about something similar with startups, that building a company is one of the few places where you get to define the rules of the game. Training is that for me. In a life full of chaos, it’s the one domain where inputs reliably produce outputs. That’s deeply satisfying.
It serves my health, not a finish line. I used to compete in Hyrox at the Pro level. For years I worked with two of the top coaches in the Hyrox world, and before that, one of the most respected coaches in hybrid training, someone who holds the world record for the Murph workout. I’ve worked intermittently with sports nutritionists and other professionals along the way. These are talented people who taught me a lot. But by 2025, something was off. My body always hurt. I wasn’t getting stronger or faster. The race-day headspace wasn’t good for me. The rigidity of competition training conflicted with my life in ways that created more stress than it was worth. I was pushing beyond my limits of health in pursuit of a finish time that didn’t actually matter.
So I walked away from competition and from external coaching.
I became self-coached in January 2024, and the result was counterintuitive: I now train more hours per week than I did as a competitor, but I’m actually getting stronger, faster, and healthier. The difference is that my training is oriented around longevity and performance for its own sake (periodized, readiness-based, with built-in recovery), not around a race calendar. The lesson was clarifying: training that’s killing you isn’t training. It’s just stress with a heart rate monitor.
Build a body that performs like an athlete and therefore looks like an athlete. The physique is the outcome of the performance work, not the goal itself.
That said, I care about both. My program has explicit performance targets (strength numbers, running paces, power development) and explicit physique targets (body composition, muscle development priorities). The performance work drives the physique outcomes: heavy squats build quads, heavy bench builds chest, explosive cleans build the athletic look. I don’t do bodybuilding isolation work in place of compound athletic movements. But I do track physique outcomes, rate my own satisfaction weekly, and adjust movement selections when specific areas lag behind.
I think the honest version is: I want to be strong, fast, and look like it. Performance is the primary pathway. Physique is the visible result. Both matter.
My training follows a periodized block structure across a 20-week cycle (with a 6-week consolidation phase, totaling 26 weeks). Each block has a different primary focus that shifts the intensity, rep ranges, and emphasis while keeping the overall weekly structure consistent.
| Block | Weeks | Focus |
|---|---|---|
| Strength Foundation | 1–4 | Build work capacity and strength base, moderate rep ranges (6–8), hypertrophy emphasis |
| Power Development | 5–8 | Explosive power, bar speed emphasis, lower rep ranges (3–5) at 80–85% |
| Performance Integration | 9–12 | Integrate strength and power with conditioning, high intensity |
| Peak Performance | 13–16 | Peak strength attempts, PR testing, maximal effort |
| Consolidation & Testing | 17–20 | Formal 1RM testing, assessment, transition to next cycle |
Each block runs four weeks with a deload every fourth week. The deload isn’t optional. It’s where the adaptation happens. My body supercompensates during reduced volume weeks more than during the heavy weeks. I’ve learned to trust that.
Running follows its own three-phase periodization layered on top of the strength blocks: aerobic base development (Weeks 1–8), threshold development (Weeks 9–14), and VO2 max sharpening (Weeks 15–20). The running program progresses independently because aerobic adaptations operate on different timelines than strength adaptations.
The weekly schedule is fixed: every week has the same session types on the same days. What changes week to week is the loading, movement selections, and running prescription based on where I am in the block.
| Day | Session | Duration | Type |
|---|---|---|---|
| Monday | Lower Body Strength + Functional Power + Conditioning Circuit | ~95 min | Gym |
| Tuesday | Easy Recovery Run + Supplemental Physique | ~90 min | Run + Gym |
| Optional PM: Bike / Swim / Sauna | |||
| Wednesday | Upper Body Strength + Functional Power + Chest/Back/Arms | ~90 min | Gym |
| Thursday | Primary Running Development (tempo, threshold, or VO2 max intervals) | ~75 min | Run |
| Optional PM: Bike / Swim / Sauna | |||
| Friday | Full-Body Strength + Olympic Lifting (Squat Clean Development) + Hypertrophy | ~75 min | Gym |
| Saturday | Easy Recovery Run + Weekend Flex Session (arms, isolation, core) | ~75 min | Run + Gym |
| Optional PM: Bike / Swim / Sauna | |||
| Sunday | Long Run (90–120 min Zone 2) | ~120 min | Run |
A few things worth noting. Monday, Wednesday, and Friday are the primary gym days. Each follows the same general structure: warm-up, foundational strength lifts (heavy compound movements with full recovery), a “Hard Shit” block (functional power work: sleds, cleans, carries, complexes), accessory work (supersets for hypertrophy), core development, and a cool-down. The Hard Shit blocks offer readiness-based options: if I feel fresh after the heavy lifts, I pick the most explosive option; if I’m beat up, I pick something more controlled. That flexibility is built into the system.
Tuesday and Saturday are hybrid days: an easy recovery run followed by targeted physique or accessory work. Thursday is a dedicated running session that changes character based on the phase: aerobic tempos early in the cycle, threshold work in the middle, VO2 max intervals toward the end. Sunday is always a long Zone 2 run focused on aerobic base building.
The Weekend Flex Session (arms, chest isolation, core, and a skill-based “focus movement” like Turkish get-ups) lives on either Saturday or Sunday. The day is flexible; the commitment is not.
| Lift | Target | Recent e1RM |
|---|---|---|
| Deadlift | 500 lb | 447 lb |
| Back Squat | 360 lb | 281 lb |
| Bench Press | 270 lb | 249 lb |
| Overhead Press | 225 lb | 176 lb |
| Squat Clean | 240 lb | 195 lb |
| Distance | Target |
|---|---|
| Mile | 6:00 |
| 5K | 20:12 |
| Half Marathon | 1:45:00 |
Target: 10–11% body fat with a thick, compact, vascular physique. Powerful and athletic, not bodybuilder proportions. Think professional rugby back or Olympic decathlete: visually impressive because of athletic capacity, not isolation work.
This is where the hobby part really shows up. When I went self-coached, I didn’t just write my own workouts. Over the course of two years, I built an elaborate coaching and tracking system that I find as engaging as the training itself. I spend hours every week analyzing data, refining the program architecture, and improving the tools. The system-building is part of the fun.
The AI coaching system. The core of my programming lives in Claude. I’ve built a stack of long, interconnected reference documents: a 20-week progressive plan with week-by-week prescriptions, a static weekly schedule that defines each day’s session structure and movement intent slots, a movement library organized by intent category, programming rules that govern volume counting and rest periods and pace calculations, and explicit program goals with a tiered muscle group priority hierarchy. Each week, I run a structured session that ingests my past week’s data (estimated 1RMs from the lifting log, running splits and heart rate data, Oura recovery scores and sleep metrics) and produces seven days of programming against all of these documents simultaneously. The AI acts as a coach executing a program I designed: it selects movements, calculates loads from validated estimated 1-rep maxes, writes coaching cues, manages movement rotation across weeks, and cross-references everything against the weekly plan and program goals. I review, adjust, and execute.
When I first built this system, the weekly programming session took multiple hours. Today, through iteration and automation, it takes about 15 minutes. That efficiency gain is its own kind of satisfying.
PALUS. I got so frustrated with existing workout tracking tools that I built my own. PALUS is a custom system that connects with every tool in my training life: it ingests workout data, running performance from Strava, daily nutrition that I log through conversation with the tool, and recovery data from my Oura ring. It gives me a unified view of training load, nutrition compliance, and recovery trends in one place. The tool doesn’t make decisions. It surfaces the data so I can make better ones. The long-term vision is for PALUS to generate workouts directly, though the complexity of the generation process (all those interconnected reference documents, the cross-referencing, the odd/even week alternations) makes that a meaningful engineering challenge. It’s a product I’m actively building.
Nutrition by day type. My macro targets vary by session type. Heavy gym days (Monday, Wednesday, Friday) get the most carbohydrates. Hybrid days (Tuesday, Saturday) are moderate. Running-only days (Thursday, Sunday) are fueled for the specific session demand. Rest days are lower carb. The targets are set at the block level and reviewed at each block transition.
Recovery tracking. I wear an Oura ring when I sleep. HRV, resting heart rate, sleep duration, deep and REM sleep, and readiness scores all factor into how I approach each day. If my readiness is low, I still train, but I might pick the less explosive Hard Shit option, or run the recovery run slower than planned. The system accounts for this.
People sometimes ask how I fit all of this in. The answer is that it’s on the calendar and it doesn’t move.
There’s a block on my calendar every morning for training. In the past six years, I’ve violated that block only a handful of times, always for meetings with whales before 10 AM. Otherwise, it doesn’t bend. This isn’t discipline in the grind-your-teeth sense. It’s just priority. I decided years ago that this is when I train, and then I stopped having the conversation with myself about whether to do it.
Someone asked me recently, “How do you train when you travel?” I sort of rejected the question. I think that’s a choice. I travel with my gym bag. I now check a bag pretty much everywhere I go, despite traveling extensively. I can tell you about gyms in small towns and big cities. Finding a great gym with an affordable day pass in a small town is actually a lot easier than in a major city. I keep my schedule no matter where I am.
Beyond the core sessions, there are a couple of optional afternoon slots in the week for a stationary bike or swimming session. I often swap those for a sauna session depending on how I’m feeling. When I do ride, I have a Concept2 BikeErg with a desk attachment, so I can do mindless work (filling out forms, responding to messages) while getting in Zone 2 cardio. That’s a small example of how I integrate training with the rest of my life rather than carving it out as a separate thing.
Life integration is a bigger deal than people realize. The reason I can sustain this volume isn’t willpower. It’s that the system is designed to coexist with the rest of my life. The calendar holds the space. The optional sessions flex. The recovery runs are genuinely easy. The program adapts to readiness data. And the parts I can do while working, I do while working.
Below is a condensed view of an actual training week, Week 5 of the current cycle, the first week of the Power Development block. This is what a real week looks like after the AI coaching session produces it and before I walk into the gym.
Week 5: Power Foundation (March 23–29, 2026)
Transitioning from Strength Foundation to Power Development. Rep ranges shift to 3–5 at 80–85% 1RM with bar speed emphasis. Every concentric should be fast and aggressive. Circuits shift to power-conditioning emphasis with heavier loads.
Foundational Strength (~30 min):
Hard Shit — pick one based on readiness (~15 min):
Conditioning Circuit — 4 rounds for time (~20 min):
Core: Reverse crunches (decline) + Landmine anti-rotation press
Run: 40–45 min at Zone 2 HR (conversational pace, ~11:20-11:40/mi)
Gym (~45 min):
Foundational Strength (~25 min):
Hard Shit — pick one based on readiness (~15 min):
Accessory supersets (~25 min):
Core: GHD sit-ups + ab wheel rollouts
Foundational Strength (~25 min):
Hard Shit — Squat Clean Development (~20 min):
Accessory supersets (~15 min):
Run: 40–45 min at Zone 2 HR
Weekend Flex (~35 min):
Training is one piece of a larger system. My health philosophy is built on three levels: stop doing things that hurt you, maximize your body’s onboard biology, and optimize where biology falls short. Training lives squarely in Level 2. It’s the engine that makes everything else matter.
The reason I left competitive Hyrox is the same reason I take a statin and test my blood every three months: I’m optimizing for decades, not for a race result. My training supports cardiovascular health (running volume for VO2 max and aerobic capacity), metabolic health (muscle mass drives insulin sensitivity and glucose control), structural health (strength and stability to be functional at 70), and emotional health (this is the thing I do that makes me feel most like myself).
If I had to summarize it: I train because I love it, I structure it because that’s what makes it effective, and I track it because I find the data fascinating. It’s a hobby that happens to be good for me.