In today's episode we run a thought experiment. What happens when a story changes? Can we ever get back "on track"? History is complex. Predicting history gets more and more complex the further away we try to predict. We should be careful with our predictions.
Today's episode is sponsored by LaunchDarkly. LaunchDarkly is today’s leading feature management platform, empowering your teams to safely deliver and control software through feature flags. By separating code deployments from feature releases, you can deploy faster, reduce risk, and rest easy.
If you enjoyed this episode and would like me to discuss a question that you have on the show, drop it over at: developertea.com/contact.
If you would like to join the new experimental Discord group, reach out at developertea.com/contact, developertea@gmail.com, or @developertea on Twitter.
If you're enjoying the show and want to support the content head over to iTunes and leave a review! It helps other developers discover the show and keep us focused on what matters to you.
Transcript (Generated by OpenAI Whisper)
Every once in a while on this show we like to do a mental exercise because it's a thought experiment that's the official term for it. Really all it is is a deep thinking process about a fictional situation. So that's what we're doing today on this episode of Developer Tea. My name is Jonathan Cutrell, you're listening to Developer Tea. My goal on this show is to help driven developers like you find clarity, perspective, and purpose in their careers. And this thought experiment should drive home a few realities. We can explore the reality of complexity through very simple thought experiments. And the reason I want to do this is because so much of what we think about, so much about our behaviors, so much about our thought patterns, our perception of the world is based on confidence in our own perception and our perception not just in a singular moment, but also our perception of entire narratives. So I'm going to give you kind of a visual thought experiment around the complexity of narratives. And the visualization you're going to have to create in your head or you can probably draw it on a piece of paper. But here's what I want you to do. I want you to imagine that you have a piece of paper that doesn't have any discernible boundaries. In other words, if you had a piece of paper sitting in front of you, imagine that it could stretch out on that single plane as far as you can see. And then if you were to travel in one direction or another direction, it wouldn't really matter because it continues to expand beyond whatever you can travel. So this is a limitless and infinite piece of paper. And I want you to imagine drawing a single dot with a discrete point on that paper. And now I want you to imagine drawing a line to another point. And in fact, I want you to draw, let's say, 10 lines. And these lines and points represent a narrative. Now, when I say a narrative, I don't mean somebody sitting down and telling you a story. I mean a sequence of events that are somehow related to each other. Now, we could get philosophical here for a moment and talk about how all events are somehow related to each other. But if we were to zoom in and create a controlled microcosm of the world, or you could change only one thing about a given narrative, that's the thought experiment that we're going to run. So what I want you to imagine is that you have this 10 point narrative. And at that first point, instead of going to the point that you chose, the second point, you go to a different point. Now of course, it's possible that your narrative will overlap. That this alternative narrative will overlap with your original one. But here's the problem, or maybe not the problem, but the reality that we face when we're talking about interlaced or interwoven events, events that change each other. There is no possible way to have the, we're on the third point, I suppose, to have this same exact third point. So let me clarify one more time here, because this can get a little bit confusing. So on the first narrative, you drew out 10 points, on the second narrative, you chose a different second point. And now our imagination says, well, I can just kind of get back on track. I can go back to the third point, and everything will be the same. The only difference is going to be that second point. But the problem with narratives and the way they work is that everything that came before changes the things that come after. So there is no such thing as a re-overlapping or a return to the original narrative. There's no such thing as going back to whatever could have happened before. Anytime you break away from a given event, from that pathway, you have to stay on that unique pathway, because every event that came before has unique and profound impacts on the events that occur afterwards. So anytime you break off of this chain of events, that creates a truly 100% unique following chain. Okay. So if you're into graph theory, you would probably be able to give this a particular name. We're not going to get into that. Instead, we're going to focus on this basic idea that at any point, if you were to change one thing, the rest of the narrative changes. This is a profoundly important thing to understand. All of the previous events that we've experienced in a given narrative, they have an effect on the following events. And this is very important for a lot of reasons, but I want to also address one more thing here. We're talking about drawing out a 10 point narrative, right? There's only 10 points on that chain of events. But in reality, that chain could be hundreds or even hundreds of thousands of small events. And each of those, as an example, you could make a particular expression with your face. That might be an event on that narrative chain. You could choose to say something one second later than you would have said it in a different chain of events. And so what we have is this potentially incredibly complex set of possible narratives. And when I say incredibly complex, I mean, incalculably complex. Because we have so many different points at which things could change, right? And because if anything changes, that will have the effect that we're talking about just a moment ago, where the following events are going to be unique on their own. The following events after any difference, any change are going to be unique. They're going to have their own kind of timeline, if you imagine it that way, right? And so what you can imagine is this infinite piece of paper has an equally infinite number of possible narratives. And once that sinks in, it's a really profound reality, first of all, of our current experience. But also, and this is the important part that I want to talk about today, when we imagine what is true. And we imagine a narrative, especially when we imagine a complex and complete narrative. There is so much complexity possible that we should automatically develop a sense of doubt in what we believe. We're going to talk about that right after we talk about today's sponsor, Launch Darkly. Speaking of complexity, launch darkness is going to help you manage your complexity. Launch darkness is today's leading feature management platform, empowering your teams to safely deliver and control software through feature flags by separating your code deployments from your feature releases. You're going to be able to deploy faster, reduce risk, and ultimately rest easy on a Friday night after work, whether you're an established enterprise like Intuit or small business, like Glowforge, thousands of companies of all sizes rely on launch darkly to control their entire feature lifecycle and avoid anxiety fueled sleepless nights. For example, you all probably know about O'Reilly media and they release on a very regular basis using launch darkly releases used to be stressful for O'Reilly, but they've decoupled their releases from their deployments and had a transformative effect on their team, according to Chris Gidry. Chris said, we can test features in production well in advance of a marketing launch and if a feature causes problems on the day of the launch, we can just turn it off with the kill switch. No rollbacks. Launch darkly makes our releases boring. So if you want to make your releases newsfest and start deploying more frequently and securely with less stress, like O'Reilly has, and head over to launch darkly.com. That's launch darkly.com. Thanks again to launch darkly for sponsoring today's episode of Developer Tea. So we've established this idea that narratives are inherently complex and this has a lot of basis in computer science theory, the idea that having a given event and all of its following events, the preceding event create or kind of spin off a wholly unique chain of events after that. And so because we know this is the case, because we know we can't ever kind of return back to a specific event, we can imagine that the predictability, right, the predictability about what's going to happen in a given scenario, the amount of complexity we would have to be able to predict through to be able to reduce is incomprehensible. And so when we have a narrative, and here's the really critical thing to understand, because let me back up for a moment. When we have multiple narratives that are possible, there's likely a lot of versions that look pretty similar. So let's not throw the baby out with the bath water here. It's important to understand that our predictability is based on trying to find a statistically likely set of events. So a lot of those narratives might look pretty close to each other. On that infinite piece of paper, they're relatively close to each other, relative to extraneous or extreme versions of reality. However, there is still a lot of complexity that is irreducible about narratives. And so this is the crux of what we're talking about today. And we try to predict a full narrative. And this happens when we're trying to imagine what's going to happen with a given situation with other people and a social scenario in a work social scenario specifically, how are things going to play out? We can imagine so many versions of a narrative that are not true. And the critical factor here is that all of our narrative building, let's say that we're building a narrative understanding of another person, another human being. What do they care about? What is going on in their mind? This is something that we do very often. We try to imagine that we know what another person is thinking or what they're feeling. So we create a narrative. And then every following thing that we're trying to predict about this person or trying to intuit about them is dependent on the previous things being true. In other words, in order to continue building up this perception of another person, we have to accept or we have to imagine that our previous perceptions were correct. And so just by nature of statistics, the longer we do this, the more likely we are to stray off the real path. When I say the real path, I mean, the picture of reality as it truly is versus what we're trying to predict. And so our error rates will go up. You can kind of see this at play, if you imagine what you think someone that you, you know, somebody in your long lost past. So somebody you knew in high school, and maybe you're a few decades removed from high school. Somebody that you haven't kept in touch with, you don't know anything about their life now. Imagine, try to imagine what they are doing today. Try to imagine what their life is like, what they're interested in. You're going to extrapolate from what you knew about them, but because there's such a distance, in distance, I mean time, because there's such a large gap of time, your error likelihood, the likelihood that you are wrong about your kind of backwards prediction is very high. Because you have so many possible points along that narrative pathway to have gone off the path. And so we can learn a lesson from this. Specifically, when we try to imagine, especially for long periods of time, without correcting, in other words, without coming to terms with a true picture. An example of this might be actually asking the person what they think, actually getting feedback from them, actually collaborating with them. Instead of doing all of this in our minds, building up these imaginative narratives about the world around us, we need to find ways, if we care about having accurate narratives, we need to find ways to reconcile the errors that we have predicted. We need to find ways to compare what we are imagining with truth. If we don't do this, what we end up creating is a false narrative about the world around us or about the people around us. And then we operate off of that false narrative, which can be detrimental to our relationships, it can be detrimental to our jobs, to our job performance. And ultimately, it can distort our perception on the world around us. Thank you so much for listening to today's episode of Developer Tea. I hope that this was a thoughtful exercise for you. And hopefully you can accept the reality of the complexity of narrative, of narratives in general, of narrative-based reasoning, of understanding the world through that lens. Thank you so much for listening. Thank you again to today's sponsor, Launch Darkly. Launch Darkly is today's leading feature management platform. By separating co-deployments from feature releases, you can deploy faster, reduce risk, and rest easy head over to launchdarkly.com to get started today. Thank you again for listening. If you want to join the Developer Tea Discord, head over to developertea.com slash Discord. We are having meaningful conversations on a daily basis. We discuss even the episodes. So if you wanted to come and talk about this episode, what you think about it, where you agree or where you disagree with what I'm saying here, that is all welcome in this Discord community. developertea.com slash Discord. Thanks so much for listening. And until next time, enjoy your tea.