After Eating, Software Will Bite the World
overcomingbias.com
overcomingbias.com
The author doesn't seem to understand that software rots because of software and hardware innovation.
The entire point of RHEL and CentOS is that they have extremely limited changes so you can optimise for a very specific and stable situation.
If everything ossifies then software won't magically start failing other than inherent bugs (like the 2038 date problem)
That said, I have met very few founders with the kind of morals to shut down their company due to the risk of no maintenance.
I see a few problems in this assumption.
Durable: what's the incentive to manufacture durable hardware and how do we maintain it? Example: my laptop is about to become 10 yo and still pays my bills but it's 10 yo in the same way a ship is 100 yo: nearly everything is replaced to keep it afloat. In my case: I got a screen replacement after about one year because of a defective hinge (the initial 3 years warranty paid for it), I replace keyboards myself every 2 or 3 years because I worn the most used (or the most fragile?) keys, I replaced the HDD and the DVD-RW with two SSD (that was a choice but they could have failed by now,) I upgraded the RAM (another choice but it could have failed by now,) I replaced the battery. From the original laptop I still have the mobo, CPU, GPU, fan and heatsink, the main body around the keyboard, the touchpad, WiFI, Bluetooth and all the I/O ports.
Plentiful: replacement of failed parts will make devices not-plentiful in a few years. I could keep using the laptop with a USB keyboard and a mouse when there won't be replacement keyboard anymore. I won't. I'll buy a new one instead but in a world of scarcity I would adapt. I wouldn't work around the absence of compatible RAM (I think it's still 2666 MHz) or no more SATA 3 disks (technically it could boot from the USB 3 port).
And CPUs and GPUs also fail or become incompatible with the available software. Well, maybe somebody will write a driver for the ATI Radeon X1600 in my previous laptop from 2006. I couldn't update the Linux kernel past a certain 3.x release because I would lose sync. Too bad I won't be around.
So, no matter what, there won't be that many available spares because they are consumed in a few years. Nobody will be going to rebuild fabs for old processes: all the 2666 MHz RAM that will ever be manufactured has already been manufactured, unless some critical industry or the military uses it and is paying to keep a fab alive.
> However, roughly thirty years from now world population will peak, and the world economy will peak not long after. Population and the economy will soon fall by a factor of two every one or two generations.
There is no reason, why artificial womb, possibly with multiple selection box for genes, is not a very realistic possibility, along with state funded child rearing services. (see Norway)
2. Most people actually want children. Getting someone to actually procreate with that will share burden.
3. Investing in children should hel to fund future pension payments. There is pretty good case for self-interest.
4. China won't care, neither will Russia or other parts of world.
5. Countries that will do that will have a better outcome than countries full of retirees. Unless AI takes over, natural selection will take care of rest
As far as I can tell, this narrative has been pushed by prominent EA'ers and such to try to counter the calls for research/investment in renewables and responsibility over the data on climate change with culture war fears demanding short-term growth.
Addressing the largest stated reasons for not having children (affordability and child care), or physics-defying carbon capture machines, What could actually exist in 30 years I wonder?
I'm hoping that this is true because simple systems that require a single-maintainer are my specialty. It's almost unbelievable how much software I'm maintaining right now for myself and my small community:
- A quantum-resistant blockchain (it includes a server component which can be configured to support custom currencies... It includes a bash client, JavaScript client, front end wallet app; all can be configured/whitelabeled to support any currency based on the tech).
- A decentralized exchange which can work with essentially any blockchain (includes back end node, clients, UI trading front end).
- An open source WebSocket library with a focus on scalability (includes server and client). This one gets a fair bit of production usage among startups.
- A no-code platform which lets users build real-time apps using only HTML. This one is new and I'm currently finalizing and working on documentation.
And I still have a lot of spare time. I don't get many bug reports these days. My main concern is that I started to forget details of how some components work because I barely look at the code of some of these projects anymore. Not hard to refresh my memory though I guess. Architecture and tooling is very consistent and I use as few dependencies as possible.
It's hard for me to imagine an environment where software is constrained by the availability and cost of engineering talent and where maintainability becomes the number 1 priority. So far, I suspect that maintainability has ranked VERY LOW on the list of priorities. The only reason some systems are maintainable today is because maintainability is correlated with security which is a bit higher priority.
I feel like the priority of software development over the last decade has been 'shipping fast' as enshrined in Facebook's motto "Move fast, break things." everything else has been neglected in favor of shipping fast. So I can understand the author's point of view that software is likely to experience a decline; it was not built to last and thus requires an unreasonable amount of human resources to maintain.
We’re already in spitting distance of this with current language models. I don’t think you even need AGI to make this happen, a large language/image model gets you most of the way there.
Your argument was very common and quite persuasive two years ago. Not so much today.
While our current models generate imperfect code, GPT4 code is much more usable out of the box than GPT3.5 code. If that trend continues we will absolutely get to the point where mistakes are the exception not the rule.
You then just have to make sure it's iterating on the thing you actually want.
Getting a computer, within the next decade or two, to do better, doesn't seem realistic—not because I think it is impossible that we will have a computer fully capable of parsing natural human language into internal representations of the concepts it represents with high fidelity, but simply because humans are bad at communicating.
Tell me you've never, ever had a project described to you by someone who was horribly nonspecific—or even outright wrong—in their description of what they need. (If you can truthfully do so, I can easily find you a dozen people who can't—starting with myself.)
Human language is woefully inadequate to convey the breadth and depth of human experience, needs, wants, requirements, etc. This is why we invented programming languages in the first place.
For too long, software has been written to make inefficient use of hardware, and/or designed with only next quarter's profit in mind. Based on the implicit assumption that faster hardware is just around the corner, and will make crappy software look decent. Security, frugal use of resources, reliability, maintenance, most anything was sacrificed in order to put products/services out there asap. Once out there, a continuous upgrade treadmill, and 3..5y later it's ewaste / bitrotted away.
We can put more compute in a few mm^2 than any human ever needs, at ridiculous low cost. It's about time the software world gets a breather, makes slow UIs fast again, and does some rework to dump the GBs of crap that populates today's systems.
True for hardware, definitely not true for software. See Wirth's Law.
https://en.m.wikipedia.org/wiki/Wirth%27s_law
As others have pointed out, the article also ignores the obvious impact that AI is going to have on software. By themselves these two errors void the validity of this article without even looking at any of its other claims.
The old processes with less software were probably more fault-tolerant and could implement new requirements more easily.
Overall, however, I don't see a major problem, it's ultimately not that difficult to pay your bills or maintain the supply chain.
https://www.wiwo.de/unternehmen/it/haribo-lidl-deutsche-post...
That's just asserted as a fact without any justification given. A so is a bunch of other stuff.
That pretty much sums up the general denial in the policy and tech circles: "something something our destiny to colonize the galaxy something something" and "it worked in the past, so it can't possibly ever stop working".
A prediction from Silicon Valley VC like Andreesen has a "1%" chance of being right. Observations about the world from a compulsive gambler should be tempered with reality. Raise interest rates, take away some of the gambler's (borrowed) money, and the memes start to taper off.