7 ms·
Why do people think that the universality of decay can be stopped? I would even question the assumption that it should be stopped. On a long enough timeline, t
by javajosh 5y ago
Why do people think that the universality of decay can be stopped? I would even question the assumption that it should be stopped.
On a long enough timeline, the survival rate of all APIs goes to zero. (Except Lisp, which is Eternal).
- quickthrower2 5y agoLambda calculus API is eternal. There are multiple LISPs, so multiple APIs, changing over time.
- deleted 5y ago[deleted]
- dannyw 5y agoOne of the great things about the web is the fact that I can expect anything I create today, to be relatively forwards compatible, and I can build things in a way so they're either backwards compatible or degrade gracefully. The philosophies around entropy isn't really relevant here IMO. The web should continue to be evergreen.
- DrSiemer 5y agoSupporting legacy constructs forever can be hugely detrimental to progress though. Something completely new would fasttrack innovation. It could leave out all the quirky workarounds and get advanced features built in or easily extensible. When adoption is high enough it could include a legacy box, to run good old HTML based content. Have any attempts at this sort of thing ever been made?
- mod50ack 5y agoI don't think this is really a good idea. HTTP and HTML aren't perfect, but they've been made into ubiquitous standards already used by everyone. In order to switch to a new standard, you'd need to have a pretty convincing way in which it was better. And I don't think you can ultimately outbalance what we have now. Not to mention that the only way this could probably actually happen would be through Google doing it, which would be disastrous for the open nature of the standards.
- DrSiemer 5y agoThere's plenty of ways in which we could improve on the current setup. Everything could be so much easier, for one thing. Basic things like animation, drag & drop and responsive design all require libraries or extensive knowledge to get them right. Something like websockets is not exactly accessible to a beginner, but there is a huge need for online content that supports live interaction. You are right that it's not going to be easy to get everyone on board, but that should not be a reason to stop trying.
- Jasper_ 5y agoFlutter started with Ian Hixie and a few other Chrome people going "what happens if we remove all the 'junk' from the HTML spec". Of course, what's junk and what's not might be controversial, but that's where it got its start.
- themodelplumber 5y ago> Why do people think that the universality of decay can be stopped? Theory: A lot of those people tend to survive by jumping from metaphorical ship to ship (API or software or whatever). So to them, the reality is that the ship you're currently on pretty much always feels like it's sinking, and you're always looking out for signs. You write articles lamenting sinking ships, because that's your reality. These people also may feel like the universality of decay can be stopped in the current context, by moving away from a decaying ship/system. It's more of a question of where the decay isn't as bad, or as seemingly needless. Example Pro: After a while you can get really good at evaluating ships. Con: It feels useless to build your own ship; you're afraid you'd have to jump from your own ship and wouldn't that feel awful. Other people survive by building ships. They're cool with decay, because building new stuff that works better is interesting. Their job is to support their stuff, and to a lesser degree to patch others' stuff, like maybe their supply ship, or a friend's ship. To people like this, the reality is that holes just happen. So you learn to deal. Maybe you even learn to love patching holes, and you get so good at building ships that your ship's holes are downright fascinating anyway. These people aren't usually as worried about decay. But they may have a problem of eventually going down with their ship, or finding that their ship is no longer just a ship but also a lot like a baroque form of floating junk pile. Example Pro: Obvs, you can build ships. Con: People will try to jump on your ship, and they'll probably tell you they think it's sinking, and expect you to do something about it.
- bryanrasmussen 5y agoIs one of these examples showing why people think the universality of decay can be stopped? I was confused about that, because it seems to me like neither of them think that?
- themodelplumber 5y agoI added some bits to try and clarify. Just a dumb theory anyway, but in case it helps.
- bryanrasmussen 5y ago
- Santosh83 5y agoAbsolutely. However all these endless discussions have an implicit time frame, say 50-100 years backwards and forwards, during which time, old, well used stuff like HTML are expected to not suddenly remove stuff that's being used in the wild. Because web pages and simple web scripting is often done by non-professionals, who cannot be expected to follow standards processes in perpetuity to keep their pages/scripts working. They often author a few pages and move on with other things in life, which is why browsers being ultra-conservative about breaking stuff is important for the robustness of the Web.
- javajosh 5y agoIndeed, but then it becomes an argument about degree, not kind. FWIW although I'm actually a fan of decay, I think its a terrible idea to deprecate `alert()`. I get it that it's abused, but it's also an important part of learning js -- it's the easiest way to make a side-effect. (No, `console.log()` isn't easy because you have to open dev tools, which is scary and hard. A simple modal dialog is far friendlier and immediate and visceral and gives a feeling of power.)
- pcl 5y ago> Because web pages and simple web scripting is often done by non-professionals, who cannot be expected to follow standards processes in perpetuity to keep their pages/scripts working. They often author a few pages and move on with other things in life, which is why browsers being ultra-conservative about breaking stuff is important for the robustness of the Web. I am a professional software engineer at my day job, and we strive to keep our software up to date etc as the world changes. But I am also exactly this non-professional developer in my after-hours. I have written a number of little web apps that solve some small need, and I really have zero interest in maintaining them over time. When I wear that hat, I really appreciate the conservatism of most web stuff.
- dmitriid 5y ago> Because web pages and simple web scripting is often done by non-professionals, who cannot be expected to follow standards processes in perpetuity Professionals can't keep up with standards processes either. Because Chrome employs people to work on them. Who's going to pay me to keep track of literally hundreds of standards currently in development?
- zeven7 5y agoBrowser vendors have long opposed making backwards incompatible changes. The problem is if any existing websites start breaking some users will switch browsers because of it. Browsers that don't implement the backwards incompatible change will in turn gain users. No browser wants to lose users, all browsers want to gain users, so no browser is willing to make any changes that cause old websites to break. Once it's a browser feature, it's always a browser feature (with very limited exceptions).
- deleted 5y ago[deleted]
- MonkeyClub 5y ago> On a long enough timeline, the survival rate of all APIs goes to zero. (Except Lisp, which is Eternal). <3
- HWR_14 5y ago> Why do people think that the universality of decay can be stopped? Because information can be perfectly copied? If you replace the components as they wear out, you can still have a computer from the 1980's running fine. The OS and software still work exactly the same. Whatever data will still exist as a perfect copy. (In fact, rumors are that George RR Martin does exactly that, and sends whatever he writes to his publisher on 3.5" floppies)
- EvanAnderson 5y agoI share you opinion. I'm a little bit horrified by anybody who is alright with digitally-represented information somehow "decaying". Why is that an acceptable thing? We should be working to create new less-volatile and longer-lived storage media, and to be documenting the specifications for the machines that process our data so that gate-level simulations can be made in the future. Nothing we store digitally need ever be lost so long as some basic stewardship is performed. For now that means moving data to newer storage formats, making redundant copies, using error-correcting codes, etc. Maybe eventually we'll get the mythical "store all your data in a diamond" 3D / 5D holographic storage that always seems to be a few years off.
- TeMPOraL 5y agoExactly. And this is, in fact, the very reason digital won over analog: digital data does not decay. The medium carrying it does, but data itself can be perfectly read and copied ad infinitum. Somehow, we've managed to take that natural feature away.
- strgcmc 5y agoBecause humans are the constraint, not the bits. Humans (in a group, societal sense) need to context switch over time, and cannot perfectly retain equal, active understanding of how to use all systems or frameworks ever invented, no matter how perfectly the bits are preserved. That being said, in an archival sense, it would be a shame and seems unnecessary to lose anything, since perfect preservation is achievable. But archival preservation, is different from staying in active use with a healthy community of practitioners perpetually ad infinitum.
- vbezhenar 5y agoWinAPI worked for 25 years. Windows 11 did not deprecate it, so probably it'll work for another 10 years at least.
- int_19h 5y agoDoes it, though? We still use some APIs from >50 years ago at this point (parts of C stdlib). I don't think the industry has been around long enough to make any definitive conclusions. FWIW, given how most software development is done these days, I think we'll just keep building layers upon layers, with lots of legacy CRUD baked inside, invisible but still necessary for the whole thing to work.
- forgotmypw17 5y agoIf you only use a super-basic subset of HTML tags, design carefully, and ignore "standards", you can write a website which works across 25 years of browsers, mainstream and obscure, with gated enhancements for browsers which support them. I think that's pretty impressive as far as API age.
- mschuster91 5y ago> Why do people think that the universality of decay can be stopped? I'd rather say that the "universality of decay" is a U-shaped curve. Just have a look at old arcade and console games... they went out of fashion, the hardware (sometimes literally) rotted, but emulator technology is getting better and better all the time - the result is you can use any modern computer or many smartphones (!) to run all that stuff that is sometimes many decades old. All that any kind of technology needs to survive into modern ages is one (single or group of) person that engineers an appropriate abstraction layer. Polyfills, virtual machines and other emulators, FPGA-based hybrids... the list is endless.