I’m a runner who focused more on endurance events (trail races, longer distances) and so I will confess that the term “sprint” has rubbed me the wrong way.
While I think there is value in contextualizing what “sprint” can mean, and I think the term has a lot of value - as a runner the idea that “running a marathon is just running four hundred and forty 100m sprints back to back” is not only wrong, it’s dangerous advice. Trying to run in that way is destructive to your body.
Have you ever seen a video of a professional racer collapsing at the end of a marathon, unable to even stand?
The act of running seems so simple (we all learn to do it as children), but how the body actually exerts that energy over a protracted period of time is through a set of complicated, interconnected energy systems which each play a different role depending on the type of exertion. If parts of these systems fail, then the entire system can shut down.
I’ve been listening to a podcast series in which Dr. Andy Galphin breaks down the biology of endurance (warning, this is a 3 hour podcast) but it’s changed the entire way that I think about effort.
How our bodies generate and sustain effort
So when we exert ourselves, we are essentially releasing the energy that is stored in the bonds of molecules. We store “sugars” (which are chains of bonded carbon molecules) which releases the energy that we can use to contract our muscles. Which seems simple, but our bodies have built very specialised systems to exert in different ways.
Here is a very simplified breakdown of how our bodies find and use energy, based on how you would power a maximal exertion over a specific duration.
0-8s
We store some amount of energy directly within the cells themselves. The advantage to this is that it’s very fast - we can release that energy extremely easily. However it’s not very efficient, and we only can store so much of it. This is the sort of readily available energy you need to be able to react quickly - to jump out of the way of something or to catch something.
8s-2min
Very little energy can be stored directly within the cells, so then we have to move on to metabolising carbohydrates. There are two systems in play here, first we store some of these carbohydrates directly in the muscle systems locally. So if you are running, your legs will start to process the glucose in the leg muscles directly. As that depletes, the body will shift more towards processing glucose delivered through the blood.
2min - 30min
For those first two minutes the limiting factor is mainly about energy delivery, however as you breakdown those carbohydates to release the energy, you end up with a bunch of stray carbon (we don’t destroy the carbon, we are just breaking the bonds between carbon molecules to release energy). Around this point the body will struggle to continue to release energy unless that carbon is disposed of. Our body’s way of doing this is breathing - we take in oxygen which is transported around our body via blood and it’s bonded to carbon - creating carbon dioxide, which we then exhale.
So at this point our endurance will be limited mostly by waste management - the better we are at clearing out carbon, the more energy we can continue to sustain. At this point, still more than 80% of our energy creation is coming directly from carbohydrates.
30+ minutes
But we only store so many carbohydrates in our system - our long term energy reserves are held in fat. Fat is very efficient in storing energy, but very slow to process. So to support exertion beyond 30 minutes or so, we have to shift our fuel ratio more heavily towards fat processing, to replenish our glucose levels. Being very good at metabolising fat has nothing to do with weight loss, but instead is about sustaining long duration effort.
All of these systems interconnect
In the above examples you are not switching over from one system to the other in sequence. You are always using all of the systems to some degree. When you run a 100m race you will be engaging your fat processing systems - but it will probably not have a tremendous impact on your results. Similarly, when you are running a marathon, you will use the glucose stored locally in your legs, but that is probably not going to have a significant impact on the results of an average runner.,
Secondly, you have to start with the finish in mind. If you start your marathon with a 100m sprint at full speed, you are going to deplete energy stores that will be difficult to recover from. You have to begin the race at a lower pace, to ensure that your body is using a mix of energy sources that can be sustained for a very long time.
In fact if you do push yourself too hard and deplete your reserve of carbohydrates, the body begins to shut down. Thinking back to that video of the runner collapsing at the end of the race - she wasn’t fatigued or tired, mostly likely she had utterly depleted her glucose levels (carbohydrates) and so even though she still had energy in her body (stored in fat) her energy mix depleted her carbohydrates to emergency levels and began to shut down.
Each of these systems are individually trainable.
If you are training for a 40 yard dash - the efficiency of your aerobic system at waste collection, or your efficiency at processing fats simply will not be your limiting factor - you will focus primarily on training that increases the power output of your legs, but also probably increases the amount of glucose stored locally.
But if you are training for an ultra-marathon then the amount of glucose stored in your muscles will have some impact, but it’s not going to be your limiting factor. You are going to be limited by how efficiently you can sustain fuelling (converting your biggest energy store, fat, into usable energy). This is usually trained by long workouts at very low heart rates.
So what about software?
I love the above breakdown because it illustrates both how different types of effort require different optimised systems, but also how all these systems are interconnected regardless of the scale of your effort.
When you are shipping a prototype (and just a prototype), you are not going to be limited by a lack of tests, poor architecture, or probably even good devops. Your ability to create lines of code quickly and speedily resolve open questions is just about all that matters.
However, as your work begins to matter to large audiences and over longer periods of time, your major limiting factor is going to shift towards other systems (poor testing, poor architecture, poor product design). Simple changes in the product are going to take longer and longer if you keep shipping like you are prototyping.
And just like you can’t start the first 100m of a marathon like you would run a 100m race - you have to pace yourself to fuel via a sustainable energy mix - you can’t code that way either.
A common occurrence in product lifecycle is the dreaded “rewrite” - the point at which the codebase, which was often evolved from a quick and dirty prototype, has taken a sprint approach too far, and simply can be sustained over the long term. To continue to develop and evolve the product, you will need clear interfaces, robust automated testing, scalability, etc.
A similar problem can happen with product design - in which a product just gets more and more complicated, and more and more functionality is being shoved into the product until it starts to become nearly unusable and has to be re-designed from the top-down.
Teams can also run into the same problems. Game development has a long documented problem with “crunch time” in which teams are driving hard to get everything over the line so that a game can be printed on schedule. While this can generate a short term boost in productivity, the cost is a team that is severely depleted and in need of rest before any further work can continue.
But the opposite problem can also occur - many startups have struggled as they begin their development focused on how to create a global-scale distributed always-up infrastructure for a product that doesn’t even have a single user yet.
Conclusions
There is nothing inherently wrong with running a sprint. It’s a great race and people spend their entire lives training to excel at it. In fact, I would bet that 9 out of 10 people could name at least one famous sprinter (Usain Bolt?) but would struggle to name a single marathoner.
The mistake is not in sprinting, the mistake is sprinting the beginning of a 26 mile race. An equally bad mistake is to run a 100m dash in the manner at which you would start a marathon.
You have to match the training and the execution to align with the goal. You need to understand the race your are running in order to complete it successfully.