In today's episode, I want to give you a tool that you can use.
It's actually kind of a meta tool.
And most of the time on this podcast, we talk about specific things like mental models, specific tools that are, uh, that are directly applicable.
Well, in this episode, I'm going to teach you a layer above that.
And this is kind of a generic shape for models that you may encounter.
And if you've done any kind of work in, for example, algorithmic analysis, then you probably have an idea of this concept that we're going to talk about today.
And really any kind of graphing math, you should understand this concept as well, but the idea that's covered in algorithms is probably most directly applicable, and that is the idea of logarithmic complexity.
And more specifically, I wanna talk about logarithmic relationship.
So in your algorithms class, you may have talked about big O notation, and it would have been, you know, big O log of, or log of O, maybe is the way it's notated.
It's been a while since I looked at big O notation.
And the idea is that over time, the amount of time that a particular operation takes reduces logarithmically.
If you don't know what a logarithmic curve looks like, it's probably best for you to Google it, but And essentially, if you were to draw a straight line from the bottom left of a graph to the top right of a graph, the logarithmic line would be entirely below that.
And it would start out as a curve that looks similar to that linear kind of line directly across.
It starts out at that slope and then it's going to curve off.
Right. That's approximately how you can think about it.
And the specifics of that are less important than the relationship as the graph moves out to the right.
On the far left of the graph, the slope is it's greatest, and the slope continuously decreases the further you go to the right.
Now interestingly, the logarithmic function has some similar properties to an exponential function.
there is, for example, a limit on a logarithmic function.
We want to talk about in today's episode some of the things that might fit a logarithmic function.
What you should be thinking about is the x -axis is not just time or iterations, but instead, some other variable.
I want to talk about some of the models that might fit this.
the kind of colloquial model that you would think about here or kind of a trigger term that you can look for is diminishing returns.
Diminishing returns, what does that mean?
It means for every input of effort, let's say unit of effort, you receive some amount of returned value, right?
The returned value might be, for example, let's say that your effort is sales calls, right?
And the returned value on your sales calls is answers.
Okay, so we could look at the return value or the likelihood that there is some kind of logarithmic limit to return on sales calls.
And for most purposes that would be unlikely to be true, right?
And the reason for that is because the number of sales calls that are answered is not necessarily directly correlated to the number of calls that you've made.
So call number five is probably about as valuable as call number 50, and call number 50 is about as valuable as call number 500.
If, of course, you are counting value as the number of people who answer, right.
So in this system, the likelihood of this model fitting is very low.
But what is another model that does have diminishing returns?
One good example of this might be reliability of a given system.
So given a specific kind of system architecture, right?
The likelihood that you are going to be able to increase the reliability of that singular system through improvement of quality, let's say, right?
You're gonna go bug hunting, you're going to increase your coverage, you're going to pressure test the system, The likelihood that you're going to get a highly reliable system through this method is logarithmic.
In other words, the more you put into it, the slimmer and slimmer the gains are at the top end.
Now the reason for this is fairly simple.
In the earliest parts of that effort, you're going to find low hanging fruit.
You're going to have a lot more potential bugs to find point, and it takes more effort later because the system has improved, and therefore the likelihood of a bug is much lower.
Another good example of this is any kind of estimation effort that you do.
We talk about estimation in the show probably too much at this point, it's so much of our jobs to try to figure out what's gonna happen in the future.
But we have diminishing returns when it comes to estimation.
And the reason for this is because at some point in order to determine all possible futures, it becomes an exhaustive exercise where you're having to play out all possible futures.
Eventually you get to the point where doing the work is actually cheaper than trying to predict the work.
But the truth is we rarely need to go beyond these limits.
We really need to identify a true 100 % or even 99 % accurate estimate.
And this is the trick.
And probably the most important aspect of these particular types of models, that is to know where that diminishing return curve actually crosses some threshold that you care about.
This is the fundamental idea behind the Pareto principle or 80 -20 if you've heard of this, the idea is that 80 % of the value comes from 20 % of the effort.
If you think about what that means, that means that the first 20%, you have a high value.
Well think about that logarithmic curve.
the next 80 % produces much less value.
And you could imagine that the first 5 % probably produces more than the next 5%.
And you could, you could also imagine that even going up to, let's say 30 % effort may produce even as close to 85 or 90 % of the value depending on how that curve shakes out.
And that's the important part of this model, understanding where to stop or understanding how far to go when those diminishing returns actually kick in.
Very often meetings also follow a similar logarithmic curve, the amount of time spent in a given meeting likely produces diminishing value.
Many of our learning processes Interviews also have a logarithmic shape to them.
So, for example, let's say that you are new to hiring.
This is your first couple of interviews that you've ever done and you seem to be making a high rate of mistakes.
Over time, as you gain experience, your mistakes will lessen.
and the less and more and more.
But you'll never get quite to zero mistakes, right?
The quality then is what's following this logarithmic curve.
The quality starts out as relatively low and quickly you gain experience and you learn a lot in those first handful of interviews.
But once you go to interview number, let's say 200, you've probably only learned a marginal amount from what you learned in Interview 199 or even 150.
So there are diminishing learning returns and that's true in most situations where you're learning by experience.
The curve of your learning is likely going to have a logarithmic shape.
Why is this important?
Well, if we can understand the relationship between different inputs and outputs and this is fundamentally, when you think about different mathematical mental models, this is a fundamental mental model that's kind of a tongue twister.
If we understand what those inputs and outputs look like we can start to make better decisions about where to put our time.
For example, you may imagine that something is logarithmic but it turns out that it's polynomial.
If you want a good example of this, google the Dunning -Kruger curve.
We don't naturally think in these curves very often.
It's possible that logarithmic is perhaps slightly more natural to us because we do encounter it so often in our lives, but many times we behave as if the return on investment in a logarithmic situation is linear.
And sometimes we even behave as if finishing those last few things has exponential value.
And there's a bunch of different kind of cognitive distortions that can come from our perception, our perceived value of a given investment, for example.
But if we can set out and understand, uh, especially when we're or investing large amounts, or when we have some very important input -output relationship, if we can set out and understand those base models that we expect something to follow, then we could be a little bit more sensitive to whenever the return or whenever that output, that Y value, gets to some threshold that we care about.
Thanks so much for listening to Developer Tea.
I hope you enjoyed this episode.
I hope you will consider these models as you go forward especially this specific logarithmic model try to find it.
In your day to day life I think you'll be surprised at how often you see it and how often it can be clarifying for you on how you can better spend your time, your efforts, your resources.
Thanks so much for listening and until next time enjoy your tea!