The Recompilation Cycle
In the ceilings vs foundations formulation for platforms, the recompilation cycle is the time it takes to re-distribute to users a new release of your program. For most programs, it usually involves:
- observing demand from your ecosystem
- prioritizing over other requests
- designing a solution
- implementing it
- recompiling your program
- releasing it
This can typically take anywhere between O(days) to O(weeks) but for the most part is O(months) to O(quarters).
It is a key part of the formulation because it dominates the marginal costs involved in running your platform.
Every un-anticipated request from layers above your platform needs to ask the permission of the platform to go through a recompilation cycle.