Hacker News new | ask | show | jobs
Problem with software is bitrot. Web app lasts about a year, iOS app 2–4 years (twitter.com)
18 points by bestinterest 1128 days ago
3 comments

I was thinking that this was not quite correct as I saw the problem. A vanilla html-css-js page from 10 or 15 years ago will probably run just fine in a modern browser (though it will look its age). The loads of external dependancies is what will doom web projects.

A tweet down-thread coined a word for this:

Ry @RyanMorey I think we need a different term for this than bitrot. It’s not data corruption breaking these, but like compatibility corruption? PlatformRot

Platform Drift?
C programs, on the other hand, last for decades. You can take a C program written 20 years ago (using POSIX API) and it will still run just fine today.
As long as it’s on a VM; and not exposed to Bluetooth, the internet, or any external devices. This may be true.

I miss my VIC-20 too, but those days are over.

That's not necessarily true. Bitrot and bit flipping is pernicious and largely silent, while it affects source code less than object code, its still an issue regardless of the language medium.
I think you're using the strict technical definition of bitrot, but bitrot as used here is the more metaphorical "the OS/libraries/browser has removed some APIs and now the program won't work".
I use the classical and only legitimate definition of bitrot.

Any other instance using that term is merely a corruption of language meant to mislead and confuse, and make communication harder if not impossible.

Its hard enough communicating technical issues without people corrupting the language used to do it. Bitrot has nothing to do with program design and deprecation.

You should only speak Lojban then. Human language always drifts in terms of word definition. Or do you mean classical in terms of 'part of the axial period of Hellenistic civilization'?
> Human language always drifts in terms of word definition.

While that is true of general day-to-day speech or vernacular (vocal), that fails with regards to anything that is reasonably technical, or written, and making a comparison between the two overgeneralizes and is apples to oranges. Both are flawed ways of thought.

If you've ever tried to communicate the structure of a binary tree, abstract syntax, what makes up determinism, syntactical vs lexical parsing, systems properties, or anything else that is highly technical there are specific technical words which are used fundamentally to describe the structure, or behavior, and these meanings do not vary.

They have specific meaning to describe specific things. Communication is the sharing of meaning, and its receiver based. If the receiver has no words to describe it, or the words used have so many possible meanings; they won't understand. Its the all is nothing. There is a signal or there isn't.

If you corrupt language and communication calling something its not, and doing so in a way that can cause loss under any circumstance on someone else, you then are arguably so much worse than a liar, engaging in crazy making behavior, and definitely lack credibility. This is true even if you do not intend this which is why one must be careful in what they say and not bandy words (and their meanings) about irresponsibly.

To be clear, that includes the loss of time and confusion resulting from misleading others. There's enough deceit in the world without adding to the noise or legitimizing corrupt acts.

Corruption of language has no place in civil and rational conversation.

I've been shocked to discover the number of MVP shops that exist and sell broken shit.

I can't stand the npm ecosystem because every project can't just sit there. When I return to it, something is broken and I can only find out by debugging it via runtime.

Thus is why I'm building my own shit from top to bottom as a vertical investment.