Last Updated on January 3, 2022 by Heather Hart, ACSM EP, CSCS
Let me be perfectly honest: training for an ultramarathon is time consuming. It goes without saying that the priority when it comes to ultra training is…running. You know, the principle of specificity and all. But, most ultrarunners also understand that strength training can be an integral piece of the training puzzle, as well as lending to overall health benefits aside from running. What’s more, some ultrarunners (like myself) truly ENJOY strength training.
However, finding time to fit in strength training around the time demands of running can be tough. So the general consensus is to make strength training for ultrarunners as simple, and effective as possible, in a way that will help – and not hinder – the ultramarathon training process.
But the reality is that the world of “strength training” is expansive, with seemingly endless methods and modalities, and that can feel both overwhelming and confusing to many athletes who perhaps don’t spend a ton of time in a gym setting, and who want their main focus to be placed on running.
Never fear- Coach Heather who loves strength training ALMOST as much as she loves trail and ultrarunning is here to help.
This post will:
- Cover the 7 exercise movement patterns you can focus on to simplify the strength training process.
- Give numerous examples of exercises that fit the aforementioned movement patterns, AND even break them down into three common modalities, so that runners – whether they have access to a full strength training gym, or have no equipment available at all – will be able to put together their own strength training program.
- Describe how to fit strength training into and around your ultramarathon training plan, and
- Explain how your strength training should shift as you get closer to your goal race.
Simplifying Strength Training for Ultrarunners: The Basics
Before we dive into the actual movements you need to incorporate in a successful strength training plan to compliment your ultramarathon training, let’s quickly cover some basics.
Should Ultrarunners Strength Train?
The topic of strength training and running in general – not just ultrarunning – has certainly come with polarizing opinions. Many successful runners – including on the elite and Olympic level – do not strength train at all. Others (also elite/Olympic level) swear that strength training is a key to their success.
Ultimately, it is important to remember that specificity of training matters in sport. When it comes to training for an ultramarathon, running is, and always should be, a priority. No other form of training is an adequate substitute for running.
However, there are a number of reasons why ultrarunners should implement strength training into their schedule if they can do so in a way that does not hinder their running. These possible reasons include:
- Improved running economy
- Delayed onset of fatigue
- Possible injury prevention / reduction
- Overall health benefits
- Mental / emotional benefits (you simply enjoy strength training)
For a much more in depth explanation about the potential benefits (as well as possible drawbacks) of resistance training, please visit the post “Strength Training for Trail & Ultra Runners: 11+ Pros, Cons & Misconceptions Explained.“
Strength Training Modalities
There are a number of ways you can strength train. Each mode of resistance training certainly has it’s own set of pros and cons. But I find that the “best” mode boils down to what you have access to, and what you are comfortable with.
Or, as I often say, the “best” option is the one you will actually do.
Bodyweight Strength Training:
Bodyweight exercises are defined as strength-training exercises that use an individual’s own weight to provide resistance against gravity. In simpler terms: instead of using equipment such as weights or bands, the resistance of your body moving against gravity is what challenges your muscles.
It’s important to note that “bodyweight” doesn’t always mean equipment free. For example, a pullup is a bodyweight exercise, as you are again moving your own body weight to provide resistance against gravity. But, you need something to pull up on (pull up bar, jungle gym, etc.)
Another example of body weight exercises that utilize equipment would be a TRX Suspension Trainer (affiliate link) or other suspension training system. The TRX (etc) is a tool, however the resistance is still your body weight.
A note on bodyweight limitations: Strength training using body weight as your choice of resistance is a GREAT way to start, or a great option when equipment is not available! However, the Principle of Overload states that in order to improve any aspect of physical fitness the individual (that’s you!) must continually increase the demands placed on the appropriate body systems. In the case of strength training, in order to continue to develop strength, progressively heavier objects must be lifted.
There are certainly ways to make body weight exercises more difficult and increase resistance. For example, when considering a pushup, progressing from an incline pushup, to a standard pushup, to a decline pushup, will increase the overall resistance load due to the relationship between gravity and your body position. But ultimately, at the end of the day it’s important to understand that when utilizing body weight exercises alone, you are limited to, essentially, the weight of your body .
Strength Training with Free Weights:
Free weights are technically defined as any training load or form of resistance that isn’t connected to another apparatus or piece of gym equipment. This includes things like dumbbells, barbells and weight plates, medicine balls, sandbells, and kettlebells.
Basically “free weights” any sort of weight (resistance) that you can pick up with your body and move anywhere, without any limit to your range of motion.
Obviously, the level of resistance provided while strength training with free weights will depend greatly on what you are lifting. For example, consider deadlifting with a set of 10 lb dumbbells vs an Olympic barbell loaded with 300lbs worth of plates.
Strength Training Using Gym Machines:
In the simplest explanation ever: weight machines are what you expect to see when you walk into a Planet Fitness, Anytime Fitness, or any other standard, box gym. Typically pin loaded and utilizing weighted plates as the main form of resistance, machines use cams and pulleys to place the greatest amount of resistance on an individual at the point where a particular muscle is in its strongest position. They also limit range of motion, which can actually help an individual maintain proper form when training (though, not always.)
For the sake of this post, I’m including cable crossover machines, or any machine utilizing a cable (like a lat pull or long pull machine) under the “machine” category, even though these pieces of equipment offer a greater range of motion and far more exercise options.
Gym machines can be useful for those who may not have access to spotters when lifting heavier weights, or may not be fully comfortable with proper free weight lifting form. Limitations to machines, in addition to range of motion, include the amount of weight that can be lifted.
Strength Training for Ultrarunners: 7 Movements for Success
The following approach to strength training for ultrarunners is certainly not the only approach. Many ultrarunners – including myself – have successfully benefitted from, or simply enjoyed, more traditional gym splits, or different strength training styles.
However, if you are short on time, or simply don’t know where to start, this seven move approach can help.
Strength Training Movement Categories:
To build a complete strength training plan for ultrarunners, you should include the seven following movement categories:
- Push
- Pull
- Squat
- Hinge
- Lunge
- Carry
- Rotational
These are all examples of structural, complex/compound, or multi-joint exercises. In other words, they are exercises that work several muscles or muscle groups at one time, and involve movement of multiple joints. An example of a compound exercise would be a pushup: throughout the movement you are working your chest (Pectoralis major), triceps, and shoulders (anterior deltoids), and moving throughout the elbow and shoulder joint.
Comparatively, isolation or accessory exercises focus on a specific muscle group with little input from other muscles, and typically involve movement of only one joint. An example of a isolation exercise would be a bicep curl: throughout the movement, you are using your bicep muscle to perform the work of the exercise, and hinging only at the elbow joint.
Why Compound Exercises?
You might be wondering: “Why are compound exercises recommended for ultrarunners versus isolation exercises? I love my cable machine triceps pushdowns!” I get it, I do too. But the simple answer is that compound exercises will help you work more muscle groups in less amount of time.
Or, “more bang for your buck”, if you will.
Remember: stress is stress, as far as your body is concerned. You want to find and maintain an appropriate balance between exercise volume (which is the “stress”) and recovery. Because running is the priority when it comes to training for an ultramarathon, hitting your strength training needs with a straight forward, all encompassing, shorter approach is ideal.
Plus, this certainly helps with the “finding the time” conundrum.
7 Strength Training Movement Categories:
Now that we’ve got ALL of that out of the way, let’s dive into the movement categories, and examples of each category, so you can start putting together a plan.
IMPORTANT NOTE & DISCLAIMER: For brevity of this post, I am not including explanations or demonstrations of how to perform these exercises. Ideally, one day, I’ll be able to link each move to our Hart Strength and Endurance Coaching video library.
However, that day is not today. Please research each move for proper form and movement cues, as well as understanding the limitations that may exist. When in doubt, ask a professional, such as a fitness professional at your gym (if you attend one) for guidance.
The exercises and workout examples provided below are for demonstrative purposes only, this workout should not be taken as a personal prescription. Perform all exercises at your own risk. Please check with your physician before beginning any new exercise routine.
Movement 1: Upper Body Push
In a “push” exercise, your muscles contract (also known as the concentric phase as you push weight or resistance away from your body, and relax (eccentric phase) when the weight or source of resistance is moved back towards the body. Push exercises typically work your chest, shoulders and triceps, but may encompass other stabilizing muscles as well.
Application of Push Exercise Benefits to Ultrarunning:
A strong upper body helps with overall stability. But, we can certainly get a little more nuanced when it comes to ultrarunning. If you’re using trekking poles, strong triceps can help you continuously push yourself against the poles, helping to minimize lower body fatigue. Strong shoulders can help delay the fatigue of carrying a fully hydration pack for hours on end.
Examples of Push Exercises Include:
The following are some examples of push exercises:
Bodyweight: Pushups, chest dips, or bodyweight chest presses on a suspension trainer like a TRX.
Free Weights: Bench press, dumbbell chest press, overhead press, pectoral fly, landmine press.
Machines: Chest press, pectoral fly, cable machine press & fly, assisted dip.
Movement 2: Upper Body Pull
In a “pull” exercise, your muscles contract (concentric phase) while pulling weight toward the body , or pulling your body towards the source of resistance. Then, the muscles relax (eccentric phase) when the weight or source of resistance moves away from the body. When referring to upper body pull exercises, this type of movement typically work your back and biceps, but may encompass other stabilizing muscles as well.
Application of Pull Exercise Benefits to Ultrarunning:
The muscles in your back play an important role in stabilizing your upper body. A weak core leads to compensatory movements, thus decreasing your forward propulsion. Further, strong core and back muscles help protect your spine from the impact of running. Using trekking poles? A strong back will help minimize the fatigue of the pulling motion associated with moving your arms through the pole re-set and plant motion.
Examples of Pull Exercises Include:
The following are some examples of pull exercises.
Bodyweight: Pullups, TRX row, towel row
Free Weights: Bent over barbell row, single arm dumbbells row, landmine row
Machines: Long pull, lat pull down, T-bar row
Movement 3: Squat
A squat is another fundamental movement pattern, in which a person lowers their hips from a standing position and then stands back up. The primary muscles involved in a squat include the glutes, quadriceps, and hip flexors, but may encompass other stabilizing muscles as well. Further, during a squat hip, knee, and ankle joints are all involved in the movement.
Application of Squat Exercise Benefits to Ultrarunning:
This one is pretty simple: the primary muscles worked in a squat are also the primary muscles worked in running.
Examples of Squat Exercises Include:
The following are some examples of squat exercises.
Bodyweight: Air squats, step ups.
Free Weights: All variations and versions of weighted squats, weighted step ups.
Machines: Hack squat, leg press, sissy squat, Smith rack squat.
Movement 4: Hip Hinge
The hip hinge movement is an incredibly important movement both in sport and life in general. The movement occurs by hinging at the hips, while your spine stays neutral. The hip hinge is controlled by eccentric (lengthening) actions of your hamstrings and glutes, followed by a concentric (when your muscles are contracting) to bring you back to your starting position. Hip hinge exercises typically target your glutes, hamstrings, erector spinae (low back), adductors, and quadriceps muscles, but may encompass other stabilizing muscles as well.
Application of Hip Hinge Exercise Benefits to Ultrarunning:
The ability to control a hip hinge movement is extremely important for optimal mechanics during not only weight training, but running, and daily activities (lifting, bending) as well.
Examples of Hip Hinge Exercises Include:
The following are some examples of pull exercises.
Bodyweight: Unweighted glute bridges, Good Morning stretch, unweighted single leg deadlift.
Free Weights: Deadlift varieties, weighted Good Mornings, weighted hip thrusts.
Machines: Glute Ham Developer (GHD), weighted 45° back extension, Smith machine deadlift
Movement 5: Lunge
A lunge is a unilateral (single) leg exercise where one foot is forward and flat and the other is positioned behind you. The primary muscles are the quadriceps, glutes, and hamstrings. The stabilizing muscles are the abdominals and the erector spinae (back muscles)
Application of Lunge Exercise Benefits to Ultrarunning:
Just like in the squat, the primary muscles worked during a lunge are also the primary muscles used for running. However, because a lunge is a single leg exercise, you will be further challenging core and lower leg stability, both of which are crucial for navigating uneven terrain while running on trails.
Examples of Lunge Exercises Include:
The following are some examples of squat exercises. Please see the chart below for additional variety suggestions, grips, and more details.
Bodyweight: All unweighted lunge variations (front, reverse, walking, curtsey, etc.)
Free Weights: All lunge variations with weight, overhead lunge.
Machines: Smith machine lunge
Movement 6: Carry
Carry exercises (often referred to as a “loaded carry”) are exactly what they sound like: pick up something heavy, and carry it from one point to another. Carry exercises essentially work your entire body: upper, lower, and core. Further, they help improve: work capacity, grip strength, posture, core strength, and shoulder stability.
Application of Carry Exercise Benefits to Ultrarunning:
Loaded carries strengthen your core while standing in an upright posture, teaching you to brace and stabilize your spine effectively while standing. Have you ever seen ultrarunners hunched over at the waist towards the later stages of an ultramarathon? This can help keep you upright.
Examples of Carry Exercises Include:
The following are some examples of weighted carry exercises:
Bodyweight:
Because the whole purpose of a carry exercise is to CARRY something, there simply isn’t a “body weight only” option for a carry exercise. But, if you are at home with no traditional strength training equipment, you can absolutely improvise. Find something heavy enough to create resistance, but safe to carry.
Examples could include gallon jugs filled with small rocks or pebbles, 5 gallon pails full of water (or dirt, or rocks), cinder blocks, etc. Once you find an appropriate weight, perform one of the “free weight carry” examples, below.
Free Weights: Farmer Carry, suitcase carry, front carry, barbell Zercher carry, trap-bar carry
Machines: Similar to the body weight example, since the whole purpose of a carry exercise is to CARRY something, a stationary machine to perform carry exercises doesn’t necessarily exist.
Movement 7: Rotational
When we talk about rotational exercises, we must include both rotation AND anti-rotation exercises.
A quick little biomechanics lesson: there are three planes of motion when it comes to movement patterns in our bodies:
- Sagittal – This plane divides the body into right and left sides. Movements in the sagittal plane are flexion and extension (examples include squats, deadlifts, pull ups, or exercises where move forward and backward or up and down.
- Frontal – This plane divides the body into front and back sides. Movements in the frontal plane are abduction and adduction (examples include side lunges, monster walks, chest or back fly, or exercises where you move side to side.
- Transverse – This plane divides the body into top and bottom halves. Movements in the transverse plane are rotational, both internal and external rotation.
Rotational movements occur across the transverse plane, around the thoracic spine, using the muscles of your core. While rotating, the abdominal muscles (namely, the obliques) stabilize the body and transfer power from the upper body to the lower body and vice versa.
Rotation vs Anti Rotation:
Rotation exercises involve rotation on the transverse plane (think: twisting side to side). These exercises employ the use of your thoracic spine in addition to several other vital body parts. Rotational training will boost core strength, range of motion, and overall performance.
Anti-rotation exercises maintain the body in a still position instead of moving through a range of motion. In other words, there is NO rotation involved. However, in these exercises, your body still WANTS to rotate, but your muscles are resisting the movement…and that’s where the building of strength comes in.
Application of Rotational Exercise Benefits to Ultrarunning:
The vast majority of our bodies movements are rotational, and create various load/work against various forces in every direction. By implementing both rotation and anti-rotation exercises into your training, you can improve at both:
- rotational movement needed for proper running form, and
- fighting against opposing rotational forces, such as being able to continue moving forward when wildly varying terrain under foot is trying force you in different direction (or more simply: think of core strength keeping you stable)
Examples of Rotation and Anti-Rotation Exercises Include:
Bodyweight Rotation: Russian twist, plank reach through
Bodyweight Anti-Rotation: Bird dog, dead bug
Free Weight Rotation: Landmine twist, rotational wall ball slams
Free Weight Anti-Rotation: Renegade row, anti-rotation landmine
Machine Rotation: Torso rotation machine, cable core rotation
Machine Anti-Rotation: Cable machine Palloff press
Programming Your Strength Training for Ultramarathon: How to Put It All Together
Step One: Choose Your Movements
Based on what equipment you have available, build a workout by choosing one exercise from each of the seven movement patterns. If you have a variety of equipment, you can certainly pick and choose exercises that include both free-weights or machines.
Further, based on your schedule, you may choose to do one of your workouts per week at home with dumbbells and bodyweight exercises, whereas the other two workouts may be done in a gym using machines or various weight equipment.
Ultimately, your workout contains one exercise from each of the seven movement patterns.
Step Two: Plan Your Strength Training Around Your Ultramarathon Workouts
When planning your strength training days around your ultramarathon run training workouts keep these three things in mind:
Space Out Hard and Easy Efforts Appropriately
A common misconception I see among runners is thinking that they shouldn’t strength train on days where they have hard running workouts.
This isn’t always necessary. What is important to remember that stress is stress, your body doesn’t care where it came from, and so you need to find an appropriate balance between periods of recovery and periods of high stress.
Specificity is Your Priority: Always Run First
Runners ask me ALL of the time, which should I do first, my run or my strength workout? When you are in the middle of a training cycle for an ultramarathon, always run first (if at all possible). This not only guarantees that the workout gets done, if time availably becomes an issue, but ensures that a heavy or hard strength workout won’t negatively affect a run later in the day.
Space Run & Strength Workouts in the Same Day
There is a well known and heavily researched interference effect between the metabolic recovery pathways our body takes after an anaerobic workout (such as strength training) compared to an aerobic workout (such as running).
The Interference Effect theorizes that combining cardiovascular exercise (like running) and strength training too closely together (or in the same training session) MAY eventually result in diminished returns.
Therefore, it might be a good idea to separate your strength training and running workouts by at least 6-12 hours if at all possible.
Space Strength Away From Long Runs
Nothing is worse than a long run on legs riddled with delayed onset muscle soreness. As long runs are a pillar of ultramarathon training, you want to ensure as much recovery as possible between your strength workouts and your long runs.
Step Three: Build Your Strength Cycle Around Your Ultramarathon Training Cycle
Phase of Training:
Where in your ultramarathon training cycle are you?
I highly recommend that you start your strength training cycle at the beginning of your ultramarathon training cycle, or better yet, during off season before diving into a race specific training program.
In other words: deciding just a few weeks before the race that you’d like to lift weights is probably not a good idea.
Starting early will allow you to ease into the stressors of strength training while your running volume is still low, keeping the overall stress level manageable.
Frequency:
How many times per week should you strength train? In general, the American College of Sports Medicine (ACSM) currently recommends that a strength training program should be performed a minimum of two non-consecutive days each week for health benefits.
However, more frequent bouts of strength training may be beneficial or enjoyable for a runner, assuming the athlete has available time, and is able to adequately recovery (i.e. the added stress of strength training does not hinder running)
Reps:
Reps is short for repetitions, or the number of times that you perform any given exercise within one set. The reps should be relatively unbroken, without a lengthy rest between each repetition.
Sets:
Sets are the number of bouts or rounds of each specific exercise you perform before resting. For example: two sets of 10 reps of air squats means you’ll perform 10 air squats in a row before resting, take a short rest break, then perform 10 more air squats.
Rest:
The amount of time to rest between reps. While I provide suggestions, the actual amount of rest you need may vary between exercises.
How much Weight Should You Lift?
Great question. You should find a weight that is heavy enough to cause fatigue by the second half of the prescribed repetitions per set. Ideally, you get to that last repetition feeling as if you couldn’t do one more rep if you tried. HOWEVER, you should still be able to perform all of those repetitions with proper, safe form. If you are struggling to maintain form, then you are likely lifting a weight that is too heavy for that set and rep scheme.
REMEMBER: Lifting with proper form will yield far greater results than trying to lift heavy with sloppy form.
Heavy Weight / Low Reps > Low Weight /High Reps for Runners
The simple rule of thumb is that lifting a heavy weight (relative to YOUR strength) over a low number of repetitions typically results in muscle hypertrophy (increasing muscle mass), and activates Type 2 muscle fibers (“fast twitch”), which have greater power but fatigue quickly, and lifting lighter weights (again, relative to your strength) over a higher number of reps will increase muscular endurance (the ability for your muscle to continuously contract against a given resistance or movement) and will help develop Type 1 muscle fibers (“slow twitch”) that are endurance based and slow to fatigue.
Because long distance running utilizes mainly “slow twitch” muscle fibers, many runners believe they should focus on a light weight, and higher repetition strength training program.
However, time and time again research has shown that for runners, heavy (70-80% of your one rep max [1RM]) and/or plyometric strength training is far superior to low weight, high repetition strength training. Do not be afraid to lift heavy!
Early Training: Beginner
Are you brand new to strength training? Then just like anything else, you’ve got to ease your way into it.
Frequency: 2-3 times per week.
Sets: 2-3
Reps: 10-12
Rest: 60-90 seconds of rest between sets should be ideal. You want the recovery period to be long enough to feel fully rested before your next set.
Don’t Be Afraid to Ask For Help! if you’re brand new to strength training, or simply not entirely confident with lifting weights, I highly recommend seeking out professional help to ensure you are performing each exercise with proper form. That can vary from hiring a one-on-one personal trainer, to simply seeing if your local gym offers an introductory class or complimentary session to help you familiarize yourself with the equipment.
Early Training: Experienced
While your ultramarathon training volume and stress level is lower, you are able to put more time and effort into your strength training. This will also help you build a solid, strong foundation to continue to build upon as your ultramarathon training becomes more intense.
Frequency: 4-6 x per week, assuming available time and adequate recovery (i.e. strength does not hinder running)
Sets: 3-6
Reps: 6-12
Rest: 30-90 seconds. You want the recovery period to be long enough to feel fully rested before your next set. For heavy lifts, this may take upwards of multiple minutes.
A note on specific exercises and weight limitations: Within certain movement categories there may be exercises that are more difficult or more dangerous to do at a higher weight.
Let’s take for example, these two push exercises: a bench press and a cable chest press. Most athletes can safely bench press at both a weight that is comfortable for 12 repetitions, or their 3-5 rep weight. On the cable chest press, however, an athlete may struggle safely getting the cables to the exercise starting position at a weight heavy enough for a 3-5 rep set.
Mid Training
Your running volume is increasing, so your strength training volume needs to inversely decrease. This is a great time to work on building overall strength.
Frequency: 2 – 4x per week, assuming available time and adequate recovery (i.e. strength does not hinder running)
Sets: 2-6
Reps: 1-6
Rest: 2-5 minutes
Late Training
Your running volume is high. Heck, it may feel like all you ever do is run. You might be tired (or at least tired of running) so now is not the time to overburden your body with excessive strength training. However, continuing your routine if at all possible can help continue to provide you with the benefits of strength training.
Here’s where runners tend to make the biggest mistake: assuming that less weight, plus higher reps, makes more sense at this point in training.
But it’s important to consider overall VOLUME – sometimes lifting heavier weights for less reps can be more beneficial, and better at balancing overall stress, than lighter loads at higher volumes.
Frequency: Transitioning to 1-2x per week
Sets: 1-2
Reps: 8-12
Rest: 30+ seconds, or as needed.
Taper
Personally, I choose to taper my strength training alongside my running taper, and take race week completely off from strength training all together. If you want to continue doing something, continue with corrective exercises, or bodyweight movements with lower volume rep count, to minimize interference.
Final Thoughts:
Strength training for ultrarunners doesn’t have to be complex. The number one thing to remember when balancing strength training it with ultramarathon training, is that the strength should always HELP, not HINDER your ultramarathon goals.
Remember that adding strength training in addition to your ultramarathon training is going to increase your body’s demand for rest, recovery, and fuel (proper nutrition & increased caloric intake). So do not forget to give you body what it needs!
And last of all, specificity matters. If it comes down to having to choose one over the other, choosing your running workouts matters MORE in the case of training for trail running or ultramarathon success.
Heather Hart is an ACSM certified Exercise Physiologist, NSCA Certified Strength and Conditioning Specialist (CSCS), UESCA certified Ultrarunning Coach, RRCA certified Running Coach, co-founder of Hart Strength and Endurance Coaching, and creator of this site, Relentless Forward Commotion. She is a mom of two teen boys, and has been running and racing distances of 5K to 100+ miles for over a decade. Heather has been writing and encouraging others to find a love for fitness and movement since 2009.
Hugh Headley
Heather your recent motivation boost definitely shows. These is so much detail in this blog post. The contents page at the beginning makes it look like a wikipedia article. When you are low on new ideas maybe you could summarize this post for those of us without a good attention span
CG
This is such a great post! I’m super excited to see an article that addresses strength training for ultrarunners. I also love strength training as much (maybe more) than running and always struggle to figure out how to do both. The different movement categories you talk about really help narrow down what I should be doing when I’m crunched for time.
Ted Williamson
Exactly what I was looking for! Thanks again Heather!!
Andrew
Super helpful. Thank you.
Kitty
Excellent piece. I appreciate your ability to make complex topics simple- it really shows your mastery of the subject. Thank you for sharing.
Matthew Gilbert
Amazingly detailed post, teaches understanding rather than just exercises