Eric Colson28:31
Well, I've heard this similar statistic that lots of data science-related projects are failing. I haven't dug in enough to know whether it was a successful trial—meaning you tried something and the idea didn't work out—or the execution itself failed. I'm not sure which one it is. But I will say that I believe for some companies, trial and error is the way to go. What do I mean by trial and error? It's hard to define, but let's go with the opposite. The opposite I'll call overly rigorous planning and execution. That's where the company may take a lot of ideas and instead of trying a lot, they take just one or two, put all their eggs in a few baskets, and do endless research to plan them, making sure they convince themselves that these things have a 100% chance of success. They plan them out to the nth degree, done their market research, customer surveys say these are for sure going to work, the only thing that could possibly go wrong is execution error. The problem is that a lot of companies haven't done a lot of experimentation. One of the first things you learn when you embark on experimentation is that you realize you're wrong a lot. A lot of your brilliant ideas do not pan out. Almost all business ideas are intended to improve things—revenue, retention, customer experience—but when you properly measure them with a randomized controlled trial, 80 to 90% of them fail. They either do nothing at all—no statistically significant result—or they actually fail; they did the opposite. You intended to improve revenue, you actually hurt revenue. That is a startling thing to learn, it's very sobering. I believe most companies do not know this. It's only the ones that do a lot of experimentation that have learned this. Once you learn that, you realize you have to do something different. You can't bet on just one or two ideas. The opposite of overly rigorous planning and execution is trial and error. That's where instead of trying just a few ideas, you try more. Even if you can't change your success rate, at the same success rate, if you just try more ideas due to sheer volume alone, you're going to find more wins. You'll get more failures too, but if you can figure out how to make the failures as cheap as possible, then it could be very lucrative. I think it's a general philosophy that could apply to a lot of companies and a lot of functions—marketing, merchandising, all the functions could benefit from doing this under certain conditions. That said, I think data science has it better in most cases. They have three properties that make them super amenable to trial and error. I distilled it down to at least three, sometimes I describe it as four or five. The first reason why data science ideas—and I usually mean algorithm ideas—are more amenable to trial and error is because they're cheaper to explore and try. Let's separate exploring idea versus trying idea. Exploring really refers to doing enough research to flush it out, to know if it's viable, to see if it's a promising idea. I think these data science ideas can be explored really cheaply. In fact, it's happening all the time from your data scientists. They're a curious group, as I described earlier. Nobody was asking to look into finding new customer embeddings; she did that out of curiosity. That happens more often than people know. The reason is that the data is right there at their fingertips, so exploring ideas is really easy. Example: there's a new data set that came to the company, maybe social media posts are now included in a data warehouse, and all your algorithm developers have access to that. You don't even have to ask them; they're going to hit that really quickly. They're going to just simply open a new tab in their Jupyter notebook and they're off to the races sifting through that data. It's amazing because they can explore it really quickly. Within a few hours, they can get a sense of the distribution of values for the data. They could even, if they have the right infrastructure, try it as new features in an existing algorithm. This is against historical data, not a real A/B test, but they could add the new features and try them out just to see if there's signal there. If it's promising, then maybe they can take it to the next step to be a real trial. I think this exploration of ideas is constantly happening with your data scientists even if you're not asking them to do it. They don't have to ask permission because the data is right there at their fingertips. By contrast, I like to tell this story—it's an apples to oranges comparison, but—I remember a colleague. She was in marketing, exploring the idea of a new loyalty program. Apples to oranges: a loyalty program versus a new feature in an algorithm is very different, but the reason they were somewhat apples to apples was because the expected impact was about the same. For her to explore this loyalty program idea, she didn't have the data at her fingertips. She has to get time to dedicate to this, she has to ask permission, she has to go outside the company sometimes to look around and do some research on what other companies have done, she may have to engage with consultants, she at least has to chat with engineers to see how hard this would be to build. It's a lot of information that she doesn't have at her fingertips, and she has to gather. It's much more expensive to gather. The key is that she's going to ask permission to do that. She has this idea, she's going to go look into it. 'Can I get some time?' Where the data scientists are not asking; they're just going because the data is right there at their fingertips. That's the difference in low-cost exploration. Now that's just to gather enough information to say, 'Should I keep going?' In the case of the data scientist exploring new features for an algorithm, they may have flushed it out enough that they're confident enough to try it in production. This is where infrastructure assumptions come into play. If you have a good infrastructure, that code can be improved a little bit just enough to drop it onto a data platform, and it can take care of it, abstracting the data scientist from all the complexities of distributed processing, automatic failover, containerization. I know Metaflow does a lot of this stuff. Metaflow came after my time at Netflix; we had to build our own type of solution at Stitch Fix. This could really enable data scientists to actually try something in production for remarkably cheap, nearly free. They may still not have even asked permission. They can allocate themselves a small amount of sample to try a few customers to try out their new version of the algorithm. The main difference is no capital outlay is asked for. There's no funding needed from finance to try out this new algorithm idea. By contrast, if we go back to that loyalty program idea, it's a great idea, but you're going to need funding because you're going to have engineers build this thing, and you have to get designers, and depending on the nature of the loyalty program, there might be prizes and awards that you need to be able to purchase, and also an expectation to keep it running from the demand side. So there's a big difference in the cost profile to explore and try ideas. I think the algorithm ideas can be done relatively cheaply with some infrastructure assumption versus a lot of the other domains that need capital outlay. That's a big difference. So that's the first reason that makes them really amenable to trial and error. The second is what I call evidence. Data science ideas like algorithms typically come with some evidence as to their merit. During the exploration phase, for example, you can use some historical data, add your new features to an existing algorithm, and you can run it and get some feedback in the form of how it improves accuracy or AUC. This is good feedback for the data scientist to have. If there is no signal, it's not doing anything, they might just put it away and move on to their next idea. But if there is signal—big increases—that gives them more confidence to go forward to the next stage, the trial phase: 'All right, well, I better fix up my coding a little bit because I'm going to actually try this in production.' That little bit of evidence is really helpful. It tells you when to stop, it can also compel you to keep going. It is hard for other functions. Again, with that loyalty program example, she may explore the idea gathering all that information we talked about, but at the end of the day, all she has is a bunch of assumptions. She doesn't have the actual empirical data to support this decision. So that's a big difference in the amount of evidence you get. But that's just from exploring. Data scientists can try this out in production. They can allocate themselves some sample and try it on a real A/B test, and that's trial feedback. That is really solid evidence. The exploration stuff is better than nothing, but there's no guarantee that just because you have AUC through the roof, it's going to manifest in production. But it's also fairly cheap to try out. Again, if you have the infrastructure set up, you can easily allocate yourself an A/B test and try it out on real customers. By contrast, for other functions—marketing, merchandising, product—oftentimes it's just not the case. A lot of these things simply can't be A/B tested. Imagine a brand campaign, you can't A/B test that. Opening a new physical store, you can't A/B test it. New partnerships can't be A/B tested. So you can't really get that evidence that you need. In the case of a loyalty program, actually probably you could most companies won't, but you could feasibly try it on a couple hundred thousand customers and only expose it to them. They get the perks of points on every purchase, and you can run it for several months enough to get the feedback you need. But it's going to be costly. You have to get the engineers, the designers, customer service on board even though it's only going to be an experiment. It's still quite an investment to roll that out to get that evidence. By contrast, I think the algorithm ideas are generally fairly cheap to get the evidence you need, whether during the exploration phase or the trial phase. It will produce some pretty solid evidence that can give you confidence. The last reason, the third reason, is that data science ideas are more amenable to trial and error: optionality. What I mean by this is when you try an idea and it doesn't work, you don't have an obligation to keep it going. You can generally pull it down pretty easy. Some ideas are hard to back out of. That loyalty program: suppose you did try that as an experiment and you rolled it out to several hundred thousand customers and let it bake for several months, six months, and you get your results back and find it's just not doing what you thought. It's not moving the needle or even hurting retention. You might have to make the very difficult decision to dismantle it, to pull it down, and it's not so easy. You have to send notifications to the customers that have been exposed to it: 'Hey, you've been using this new feature, but we're going to be getting rid of it.' Some may have earned a lot of points, they'll be disappointed. You have to figure out some way to compensate them. Also when you send notices like that, the press usually picks up on them. You can imagine the article: 'E-commerce company pulls back experimental loyalty program.' That could be embarrassing. Even internally, that merits a broad communication. You have to send it to employees: 'Hey, this thing we were trying, it's coming down, it didn't work.' In my mind, there should be no shame in doing that. It was a well-reasoned hypothesis, a great idea, and it didn't have the outcome we wanted, so we're pulling it down. That's awesome, you tried it. But I do remember a certain case—it wasn't this loyalty program, but something similar—that email went out saying after a year of trying, we decided to abandon this idea. I had that reaction: 'Oh, that was good they tried something.' But a different exact reply-all said, 'We need a postmortem on this. We need to figure out why this didn't work.' I thought to myself, 'Oh, that's kind of going to quell future innovation. Nobody's going to want to try things after that.' By contrast, algorithms are usually very easy to pull down. They're usually baked into the system behind a feature flag, meaning we're going to try it out for this many customers for this long, then it'll automatically shut off. They're behind the scenes; customers don't even know that we're swapping out and trying a new algorithm. No notifications needed. If it doesn't work out, you just revert it back to what they were using before. No messages go out, so no press to deal with. Even internally, you don't need to send a broad communication. Maybe locally with an algorithms team, you might want to share that knowledge: 'We tried this, didn't work.' But no need for broad communication. So that's optionality. Algorithms are really easy to pull back; it's kind of baked into the way we deploy them anyway, versus other things that are highly visible to customers. Those are some of the properties: low cost exploration and trial, the evidence, and the optionality. These make algorithm ideas very amenable to trial and error. I came up with that upon reflection after sitting for years and years in these executive meetings with my peers—the CFO, COO, CMO—where we all had similar pressure to deliver business value. Quarterly or half yearly, we would all present to each other our big ideas that we're going to be trying out. I remember thinking, 'Boy, their ideas all had these big capital outlays. They had to ask for funding from finance. They really had no evidence, just strong conviction or opinion to lean on. And almost all of them were going to be very public, so if they failed, they'd have to do a very public apology either internally or externally or both to pull them down.' I felt like I always had a little bit easier. It made me really appreciate my peers. They deal with far more uncertainty and far more risk-taking than I do. I actually had a lot of gratitude. They're doing the heavy lifting in the company. I'm not taking that kind of risk. I mean, I remember even the facilities manager would have to take more risk than I do. She had to sign like a five-year lease. That's a big capital outlay. There's no evidence that she can use to say where we're going to be in five years. She didn't have any data that's going to really help her with that, and it's going to be very hard to undo if she's wrong. I appreciated her because she deals with more uncertainty. Here I am running my biggest expense of employees, the AWS bill. At the time, I didn't even do reserved instances. I just used the spot instances that were more expensive because I didn't want to commit to one to three years of reserved instances, even though the cost was cheaper. It just really gave me a fond appreciation for the business teams and how much they bring to the table and their risk-taking and their comfort with uncertainty.