In many companies, you can’t merge your code to master till someone has reviewed it. I’ll call this a blocking code review. Such a process has many costs that people don’t generally recognise: Slower iterations: Sometimes you need to launch something, see how it works, and iterate again and again. For example, when you’re trying to optimise your sign up flow, you make a lot of small changes like making the Sign Up button more prominent and seeing how it impacts conversions. Another example of iterations is optimising peak memory usage, when you ideally want to change one parameter, see its impact, and repeat. A third example is debugging a bug that’s not reproducible locally: you add an assertion somewhere, see if it triggers in production, and depending on whether it does, look at a different part of the code more closely. In all these cases, you need multiple iterations. And iterations by definition can’t be parallelised. So you need to remove barriers in the way of fast iteration. Startups that iterate slowly will be out-competed.
Costs of Blocking Code Reviews
Costs of Blocking Code Reviews
Costs of Blocking Code Reviews
In many companies, you can’t merge your code to master till someone has reviewed it. I’ll call this a blocking code review. Such a process has many costs that people don’t generally recognise: Slower iterations: Sometimes you need to launch something, see how it works, and iterate again and again. For example, when you’re trying to optimise your sign up flow, you make a lot of small changes like making the Sign Up button more prominent and seeing how it impacts conversions. Another example of iterations is optimising peak memory usage, when you ideally want to change one parameter, see its impact, and repeat. A third example is debugging a bug that’s not reproducible locally: you add an assertion somewhere, see if it triggers in production, and depending on whether it does, look at a different part of the code more closely. In all these cases, you need multiple iterations. And iterations by definition can’t be parallelised. So you need to remove barriers in the way of fast iteration. Startups that iterate slowly will be out-competed.