Engineering Log: Speed

May 14, 2021 by guidj

There is a meme in tech culture - that doing more things amounts to more successful outcomes. It's a concept worth unpacking, and that's exactly what we're going to do in this post.

The myth of more

Let's define “things” as a variable $\tau$, which can express experiments, iterations, studies or any task one would consider to be meaningful. If we increase the number of things we're doing tomorrow, we get:

$$\tau_{t+1} > \tau_{t}$$

This can translate to running more experiences in a given quarter, shipping on a shorter release cycle, or increasing the number of features pushed to users in a given month. All of these sound like signs of increased productivity, and as if they would be good on their own - in a world where value is a function of throughput alone. However, there is one variable missing from that equation, and that is the likelihood of success.

When it comes down to it, it's hardly ever the case that everything we do yields a successful outcome - be it learning something that can inform our next steps, or delivering a feature that meets users’ expectations. Thus, whatever thing we do, there is a possibility that it will yield success, and we're going to call that possibility $p(s)$. When consider $p(s)$ in our analysis, then it becomes evident that in order for us to be doing more successful things:

$$\tau_{t+1} * p_{t+1}(s) > \tau_{t} * p_{t}(s)$$

Essentially, if we do more things while maintaining the rate of success, we are likely to get more successful outcomes. Likewise, if we continue to do the same number of things we do today, but increase our likelihood of success, then we'll also have more successful outcomes. And of course, there are other variations of increasing and decreasing either factor, but the message is that the product of the two factors - number of things and likelihood of successful outcomes - must be higher.

The implication of this is that one cannot simply do more - they must also ensure they are just as likely if not more likely to create value at each turn. Doing that can entail seeing that a certain level of quality and thoughtfulness is baked into the work, however many times it's done. Raising the likelihood of success means being even more thoughtful and strategic about our choices. None of these aspects are captured in the meme of moving fast. Instead, we are told that all we have to do is to try more things, and eventually, something will present itself as the thing, the culmination of all our wild attempts. But that idea is false.

The role of speed

At this point, it's important make it clear that speed is important - the more things we try the more we can learn. But the operating term is “can learn”, which is only possible if we design our work for that outcome. In fact, when it comes to experimentation, the best we can do is plan for learning - regardless of the outcome, so that we can anticipate what to do next to get to where we want.

As a retailer selling a wide range of products online, I could try every possible combination of elements to place on my website - anything from a search bar to a recently viewed carousel - and also experiment with every possible way to arrange the items - including placing the search bar in the middle or at the bottom of the page, and even placing it vertically because who knows?

While some companies can afford to do this due to the sheer volume of traffic they have, this is likely a very bad idea for a smaller company because they'd likely be turning customers away. Sensible reasoning and little data can steer them instead to more sensible choices - including a decision as to whether they should invest on the layout of the site or on fulfilling delivery orders or on ensuring they get repeat customers. But if the metric they choose to focus on is how many experiments they can ship, they are far less likely to think about where they should be spending their energy, and instead focus on optimisations with little to no return, and this is exactly what some teams in organisations do, slowly destroying parts of their product, by focusing only on how much they're doing.

I read once that “practice makes perfect perfect practice makes perfect”, because it doesn't matter how many times we try something - if we do it badly, we're not learning how to do it right. But if we plan to learn something from the experience, then we have the potential to pick up how to do things right, and this is where speed can come in and act as a catalyst for our learning and eventually success.

Putting it in order

Now, here is the gist - instead of focusing on increasing the number of things you do, you should instead focus in increasing the speed at which you learn.

If in the process of trying to run more experiments, tests, or build more features, our success rate drops by 50%, then we need to double our attempts just to achieve the same outcome - to put it differently, we spend twice as much energy to arrive the same result. This can be extremely wasteful, not to mention demoralising to anyone.

By focusing instead of the rate of learning, you shift your attention to the outcome of every initiative you plan - carefully designing them to yield something meaningful - an insight that will show you how to move forward, proof that you're on the right track or that you need to change, or even validation as to whether or not your idea has what it takes to keep trying. Time is precious, and people's time is valuable - yours, that of your peers, and that of your customers. The next time you're thinking about moving fast, ask yourself if you have defined your learning outcomes or if you're just hoping to see something work. If it's the latter, then perhaps it's time to consider what you define as value and pivot on your plans.