Your statement A:"The longer something has been around, the longer it will be around" is not the opposite of B:"the shorter something has been around, the shorter it will be around".
Rather they mean the same thing. 'longer' and 'shorter' here are just English language ways of referring to the same time t that an object has been around.
If someone tells you "the longer a distance is, the more time it takes to walk it", that is exactly the same as "the shorter a distance is, the less time it takes to walk it"; there's no logical leap there.
I could conceive a rule that says "archeological artefacts are likely to be around for a long time" and it'd be a mistake to conclude that this means that non-archelogical artefacts will only be around for a short time.
But that doesn't seem to be how the Lindy effect is formulated, either on Wikipedia or on your post, so there doesn't seem to be an error in applying it to new things.
the more something has been continued to be around due to be continuously and repeatedly selected from a pool of similar other somethings, the longer it will likely continue to be so.
Because this is a statistical effect (longer lived things are drawn from a pool of things, some of which are not long lived), you cannot invert it trivially.If there is no selection process, then the Lindy effect is either meaningless, or decomposes to an assertion that the current thing is the only way to do something.
Why can't we 'invert' it, just because it's statistical effect? Yes, in your formulation, some of the new things in the pool will go on to live a long time, while others will be selected out.
But so what? We are talking about the expected lifetime of an item in the pool, conditioned only on it's age. There's no fundamental problem making a statement that this expected lifetime is short for new things, even if some fraction of those new things will last a long time, right?
After all, we don't know any one individual item that's been around a long time will last a lot longer. We only know we expect it to. Because even long lived items have finite lifetime, hence they'll eventually die (and when they do it'll be really surprising, because they've been around so long; but it will happen eventually.)
And so the statement is always talking about expected lifetime, whether for items that have already lasted a long or short time.
(Hence I still don't think there's really any logical 'inversion' here.)
Everything that's new in the pool might be better than everything that's old.
All you can say about the old stuff is that it was better (by some metric(s)) than anything it had to compete with so far.
But you can't say anything about the new stuff. Sure, statistically it is likely that it will some blend of bad, middling and good, but you don't actually know the mix, or which term describes which items, until after the selection process (i.e. time) has taken place.
But I think you are outside the Lindy effect model at that point.
To put this in the example of the original post: The author says visual studio code is expected to last less time than VIM.
You could counter by saying: "hey, maybe, uh, the rise of Product Management as a discipline has meant that modern software overall will have longer lifetimes, and hence it's not fair to guess that VIM will outlive VSCode".
And that'd be a fine position. But imo the right way to frame that isn't "the author did an incorrect logical inversion of the Lindy effect model"; rather it would be "I don't think the Lindy effect model applies to this domain".
(No one is saying the Lindy model is universal.)
I guess you could say you want to apply it only within a given year of software; so, we're happy to look backwards and apply the Lindy model to software written in 2011, but we've no idea how to think about the lifespan of software written in 2022, and aren't allowed make any inferences from software written before 2022.
That's fine, but that's an additional constraint we've added, is outside the Lindy model, and, really, we're in "all models are wrong, some are useful" territory here, where I'd ask "is it really useful to throw away all that previous data? Wouldn't it be a better starting point to use the lifetimes of previous years as at least a prior?" And if you grant that, then I think theres no logical error here.
It "might", but the empirical observation behind the Lindy effect points that this is unlikely (if we take "better" to mean "more fit to live and grow old and still used").
Sure, we haven't seen the new things develop yet. But we have seen that most new things dont survice time: the things that survive are a small subset of each "new things" (say, vi and emacs, and not one of 100+ 70s programming editors).
Then if the software has been around for one year, the expected value of p is 50%. But if the software has been around for ten years, the expected value of p jumps to 0.5^(1/10) ≈ 93.3%.
In this way, if a piece of software has been around for longer, then it has a greater chance of sticking around. In fact, the expected number of years it has left is indeed equal to the number of years it has already been around, as stated in the article.
In practice this mechanism is more complicated, as all software is influenced by a changing environment, but this same idea is still at the core.
This reasoning is incorrect. You have to take the distribution of p into account.
In a world where almost every software has p=0.5 the software which has been around for 10 years is likely to have been lucky and not to have higher p.
that's comparing A->B with A->B. comparing A->B with B->A would yield "the less time a distance takes to walk, the shorter that distance must be"
Yes, that's the point. feral (your parent comment) has accurately observed that Etheryte (your grandparent comment) has mislabeled A->B as B->A. But feral is completely correct that "the more time something has already been around, the longer its future expected lifespan is" is exactly the same claim as "the less time something has already been around, the shorter its future expected lifespan is". Etheryte is making a pretty bizarre error; he seems to be under the impression that "a < b" is the opposite of "b > a".
To use your own example: You have to take a long time to walk a long distance. That doesn't mean you have to take a short time to walk a short distance.
You basically only know one thing about something, which is how long it has been around. The things that come to life and die that you observe will be, on average, in the middle of their life.
So if something has been around for five years, given no more information, your best bet is that it'll be around for another five years.
One year? Another one year.
Hopefully this explains well why the Lindy effect also says that something that's been around for a shorter period of time is more likely to disappear sooner.
You can see Notion come out, and go "wow, I find this good and I think it will keep being around and good for a while". Like the GP said, the fact that it is young doesn't mean it is doomed, or even that it is not good. The Lindy effect says nothing in that direction.
Sure, you can have a much richer model of the world than the Lindy model provides.
>fact that it is young doesn't mean it is doomed, or even that it is not good. The Lindy effect says nothing in that direction.
No; it says that young things are less likely to last than old things. If the average expectancy is small, sure it doesn't guarantee any one thing is doomed (some aren't) but it absolutely does tell you that most of them aren't going to last long.
Imagine a friend tells you that they know someone who is planning to become a professional rock star when they leave school.
They are probably not going to make it, because most people who try don't. You can't be sure, because some people do become rockstars. But it's not an error to be sceptical of their chances.
If you hear they are still gigging after 3 years, even if they haven't made it yet, you are probably a tiny bit less sceptical.
That all makes sense, right?
If you tell your rock star friend to go back to school, you are helping him minimize risk. The chances are that he won't make it, but that's not a consequence of the Lindy effect. It's because surviving in the rocking world is difficult as it requires that people pick your music repeatedly over other available bands, which is the requirement for the Lindy effect to apply, not its consequence.
More importantly, if you tell every rocker to stop and go back to school because their chances of succeeding are low, you end up with no rock bands. Because all rock bands have to start out being new.
Believing that most new rockers won't become big is fine. Believing that any rocker that is new won't make it is wrong, in fact you can be certain that some will.
We're not making absolute statements about either new or old things.
We're not saying any one new thing definitely won't last another 10 years, the same way we're not saying any one old thing will definitely last another 10 years.
The whole discussion is about what things are likely to do.
There's a place for formal logic in discussions of probabilistic models, but it can also confuse people.
> Believing that any rocker that is new won't make it is wrong, in fact you can be certain that some will.
If you were made to bet money repeatedly on whether a new rocker or an old rocker would still be a rocker in 5 years, you would end up with more money if you always picked the old rocker. This means that older rockers last relatively longer and new rockers last relatively shorter ("on average" / "by expectation" / "probabilistically"); that's literally the same statement.
That the underlying mechanism might be gradual removal doesn't change this, and doesn't matter.
I got the sense that the author is trying to say the latter, however what they literally said is more like the former: Visual Studio Code, specifically, is likely not to be around in 30 years. I can't argue with that.
Yes it is, in this context.
When you take into account more factors, then sure you can get a better prediction. But then it's not the Lindy effect anymore.
I'm talking about the Lindy effect only. Nothing else.
First sentence on the Wikipedia page:
> The Lindy effect (also known as Lindy's Law[1]) is a theorized phenomenon by which the future life expectancy of some non-perishable things, like a technology or an idea, is proportional to their current age.
Proportional.
So if we assume that's implicit in my example, how does the Wikipedia page on the contrapositive help now? (It doesn't, as my argument isn't relying on any property of it.)
I would read up on the topic if I were you. Statistics can be unintuitive sometimes, and basing your argument on supposition can be unreliable. I'm not sure about the correct answer here, but most folks get e.g. the Monty Hall problem incorrect if they rely on their intuition.
For a product at T = 0, why would it be optimal to assume its lifespan would be T = 0 as well, rather than the average age of all products?
No; not sure where you got that from.
>For a product at T = 0, why would it be optimal to assume its lifespan would be T = 0 as well, rather than the average age of all products?
I'm not saying it would be. (The original blog might, but that's irrelevant to my posts here.)
If you knew the average lifespan of all products, that would be your best estimate of the lifespan of a new product. (You can't use average age naively without thinking about right censoring.)
If the average lifespan of a product was short, then the average lifespan of a new product would be short. As the product aged, it's expected lifespan would increase.
I.e. the longer something has been around the longer it will be around, or, equivalently, the shorter it has been around the shorter it will be around (both obviously taking about expected times.) Make sense now?
But this is a stupid-obvious problem. The Lindy effect is easy to write out in formalisms:
age(x) > age(y) ⟶ life_expectancy(x) > life_expectancy(y)
Here's the claim that Etheryte says is the opposite of that: age(x) < age(y) ⟶ life_expectancy(x) < life_expectancy(y)
It is hopefully obvious that these two claims are identical, not opposites. But if it isn't, consider that we can rewrite the first one like so: age(y) < age(x) ⟶ life_expectancy(y) < life_expectancy(x)
Statistics aren't relevant to the question in any way; it doesn't matter whether they can be unintuitive sometimes.The moment you negate A, both positive B and negative B, satisfy implication.
I.e. you can't claim shorter life implies shorter life remaining. For that to hold you need equivalency, not implication.
Here is an example. Rain implies streets are wet.
Does no rain implies streets are dry? No. There could be a flood or street cleaning, or a pipe burst.
The Lindy effect says that entities with longer realized lifespans have longer expected future lifespans.
In other words, if one thing has been around for 5 years, and another thing has been around for 3 years, then we know three things:
1: The first thing's expected future lifespan is f(5) years.
2: The second thing's expected future lifespan is f(3) years.
3: f(5) is greater than f(3).
Etheryte claims, in a gross error, that this does not imply that the expected future lifespan of shorter-lived things is shorter than that of longer-lived things. This is ridiculous; the claim Etheryte denies is a simple restatement of the Lindy effect. For our two objects of ages 5 and 3 years, the "new" claim would tell us the following three things:
1': The expected future lifespan of the first thing is f(5) years.
2': The expected future lifespan of the second thing is f(3) years.
3': f(3) is less than f(5).
But 1' is exactly the same claim as 1, 2' is exactly the same claim as 2, and 3' is exactly the same claim as 3. No claim has been negated, only repeated.
Because it doesn't hold invariant to time.
It's not hard to make a counterexample. E.g. when Windows 3.11 existed for several years and Microsoft published Windows 95.
If we were to travel back then and use Lindy effect we would get wrong predictions.
Because it's such a simple heuristic it only demonstrates one way effect.
Obviously? Look at the statement of the Lindy effect:
> The Lindy effect proposes, simplified, that the longer something has been around, the longer it will probably stay around still.
What do you think the word "probably" means?
It would, if the only thing that could make the streets wet is rain; ie if we were in a limited model where that was true.
We're talking in the context of a limited model in this thread. My point was that the statements are equivalent in this model.
Alternatively:
Imagine we were talking about the size of a pizza and how big a dinner it will lead to.
A blog says "wider diameter pizzas generally lead to bigger meals. Narrower diameter pizzas generally lead to smaller meals".
The first comment here says "just because wider pizzas implies bigger means doesn't mean narrower pizzas implies smaller meals, the blog has made a logical error!".
I reply "in the context of roughly round pizzas the two statements are the same".
You then give the example about the rain and streets. Hopefully it's clear that your general logical point isn't relevant to the pizza discussion, where there is a relationship between width and area.
Similarly, in the Lindy model, which we are actually discussing, there is a relationship between age and expected lifetime. That relationship is more complex than the pizza one, which confuses things, but hopefully the pizza example makes it clear why there isn't a general logical error here.
We are in a limited model. Many factors affect software lifespan.
It's a heuristic at best.
> The Lindy effect is a theorized phenomenon by which the future life expectancy of some non-perishable things, like a technology or an idea, is proportional to their current age.
This implies that things that have been around for a short period of time do in fact have a short expected lifespan. You're correct that "A implies B does not mean B implies A as well", but that assumption is not needed.
Also someone commented about COBOL. Of course no one thinks COBOL "is around", what also means statistics about usage. COBOL is declining and almost no one uses it anymore, so it is safe to say "it is almost not around".
https://www.bmc.com/blogs/cobol-trends/#:~:text=According%20....
The only way we stop using COBAL in production this century is to have some kind of apocalypse, or maybe an apotheosis.
Take any random thing and random time (with zero knowledge of actual lifespan), and on average, you are in the middle of it's lifespan. Therefore, if Thing-A has existed for 28 years, it is likely to last for another 28, if Thing-B has existed for 6 years, it's likely to exist for another 6, and so on.
It may be somewhat informative for comparisons but not in real life.
You are hiking away from a disaster with all your possessions and life's savings in your backpack, and are now at a muddy riverbank needing to cross. You ask me how deep the river is and I tell you the average depth is 6 inches. That sounds great, but I have most definitely NOT told you that you'll be able to get across without finding a deep spot and having to drop your backpack to survive.
Using this effect to make judgements about product lifetime is similarly uninformative. It is a hint leading to only a possible inference, not data leading to a valid prediction.
1. Not sufficiently useful relative to involved costs for most applications(data formats, configuration maintenance, etc.)
2. Disrupted by something that is "10x better" for the purpose(e.g. using a spreadsheet instead of a text editor for 2D, cell-oriented data)
3. Outside forces invading the ecosystem and obsoleting dependencies(new OS, hardware, etc.)
So what the Lindy effect describes in long-lived software is just the software that is relatively cheap to keep around, is hard to greatly surpass and resists invasion - which describes a lot of "worse-is-better" software, where the UX kinda sucks, and it's actually a bit too unstructured for any particular application, but not enough of these things that anyone cares to address it in the relevant professional scenarios where it comes up: instead the user just girds themselves to fight it into submission because they can spend six hours fighting it and one week debugging it or two weeks making a Right Thing that is much less compatible.
The basis for this kind of reasoning is essentially that, if you can assume that you are an 'average user' (and you don't have reason to believe you're especially late or early), the chance that your prediction about the longevity of the project is correct is most likely to be true if you 1/3 - 3x[1] the lifespan of the project currently.
That is because if say, you predicted VsCode existed a hundred times longer than it currently did, that prediction is only true if you are indeed among the first 1%. 99% of VsCode users making that prediction will be wrong.
[1]https://cdn.vox-cdn.com/thumbor/2VfpAbtj-yOq5gHhYIdgrAIdBuw=...
The Lindy effect is named after a restaurant, Lindy's, which ironically closed recently. If we were to take it as invertible, we would have to conclude that a brand-new restaurant, which opened an hour ago, is most likely to shut down one hour from now.
This is an obvious absurdity: if we wish to speculate on the longevity of new things, we can't use the Lindy effect to do so. It's a good heuristic for betting that something will continue, it's a bad heuristic for betting something won't.
A new restaurant that opened one hour ago existed for months during its planning stages. That restaurant will probably not survive its first few months of business.
Yeah but in an hour it most likely shut down in two hours /s
I really don't get the whole argument over this definition, to me it sounds like a funny observation more than a law of the Universe.
It's not useful if you're trying to decide whether Bob's Education Mill will last longer than the state-funded community college opened in the same year, there are plenty of other heuristics which we might use there, but not this one.
That includes the expectation that something young will be (on average) half way through its lifespan.
It works based upon the 100% certainty that whatever you are, at some point you will cease to be.
On average, regardless of what you are, you are in the middle of your life or existence (some very high variance here).
In order to generalise it to non-certain events, such as a program crash, you'd need to remove the certainty assumption and rejig the consequent statistics - it might be doable, but you wouldn't end up with something quite so clean and simple.
Is it more of a process thing (having to change unit tests, code review, hire new people, etc) that prevents this? Or is it just too risky given the important roles of the mainframes?
Such a change would be transparent to the end user.. Except for gotchas like not all users have the source code for all of their dependencies. What happens if you want to update your program and you have a dependency on a binary from some vendor who went defunct 35 years ago? You're stuck compiling against whatever artifacts you have so does transpiling to C still work?
And note that the Lindy effect is about the expected value (mean). The statement "probably run another T hours without incident" could be interpreted as relating to the median, which is actually a little less than the mean. So the statement should either be "the expected value of the number of hours until the system stops is T", or "the probability of the system running for at least another T hours is a little less than 50%".
[1] Calculation: Lindy proportion 1 corresponds to a Pareto distribution with probability distribution function `a / x^(a+1)` where a = 2 and the range of x is [1, ∞). The cumulative distribution function is `1 - 1/x^a`. So the probability of the remaining lifetime being less than or equal to the observed lifetime is CDF(2) = 0.75.
I don't believe that, btw, just guessing at the mindset of the author.
Visual Studio Code is based on a much older line (visual studio) which dates back to 1997.
It's not nearly so new as it may seem, although I certainly appreciate the refresh from the older, more feature-filled (and feature slowed) visual studio proper.
Not to mention - most of the "new stuff" in visual studio code is really just a nice UI layer that's built using mature and incredibly battle tested tooling - HTML/CSS/JS.
It comes from the same parent company, with a lot of interest in solving many of the same challenges. The UI paradigms are obviously related, and if you've ever done any real VS project debugging, you'll find the structure of those configuration files very (very) similar to how tasks work in VSCode.
I don't believe the VSCode codebase ever actually pulled anything from the original visual studio, but the roots of the application clearly come from the same place.
Some people, a few for now, are migrating from VS proper to VS Code, including for languages like C++/C#. I am one of them.
I appreciate what VSCode is achieving, though, I can run on my Linux host and remote into my microcontroller bare-bones OS for debugging and everything works nicely together but it ain't no Visual Studio.
Should have called it something like "Technical Notepad."
I think the error is interpreting these things literally. If we did, then if it were 1990 we'd say Windows wouldn't be see the next century. Probabilities are attached.
By the author’s logic, COBOL programs still in use today will long outlive Linux. That could even be true.
There are 10 things that have been around for 10 years.
I think it’s safe to say that there is less chance of any individual thing that’s 1 year old being around in 1 year than the things that have already survived for 10.
I think there is a linguistic ambiguity here. What is meant by "the longer something has been around"? Longer with respect to what?
If you mean to say if A has been around longer than B, then A will stay around longer than B (in expectation), then this law is commutative with respect to A and B and what you specify as "opposite" holds.
If you mean to say if something has been around for t then it will stay around for some f(t) where f is an increasing function, then again what you specify as "opposite" holds.
I think you wanted to write A implies B does not mean "not A" implies "not B" as well. B implies A would be: the longer something will probably stay around, the longer it already has been around.