It seems obvious but I'm not sure we're heading in that direction.
We tried PE on the web. It's a great idea and the browsers and languages support it eminently. But most developers (including product people, and engineers like myself) are obsessed with the glamorous option rather than the plain-but-plainly-better lower bandwidth version.
I feel like progressive enhancement is my choice to make. What do I purchase, what can it do, etc.
Whereas graceful degredation more is the product designers's choice. What does it do when it doesn't get Internet or electricity.
But I don't see data centers/internet/power being an issue. Data centers are already globally distributed and load-balanced. Internet is near-ubiquitous, with growing wired, wireless & even satellite options. Power generation from renewables, along with storage, have been growing at an accelerated pace even despite (or some say because) the pandemic.
Also, an off-grid solution is very feasible: I can easily imagine a near future where I have my "smart home" running on a local Alpaca instance, being powered by my solar roof.
Renewables aren't the panacea so many people want them to be.
I can't imagine that near future because despite the feasibility, the companies that manufacture smart home products want people in their thrall. Why go for a one-and-done purchase when that ubiquitous Internet can be used to hold basic functionality hostage for a recurring fee?
Renewables aren't a panacea, but they exist now and are seeing growing deployment, even without "fuel sources becoming less plentiful". Too late to prevent climate change, but definitely early enough to prevent widespread power scarcity.
Oh, companies will definitely try, and many people will go along with it. But, people who care will continue to maintain self-hosted projects e.g. Home Assistant. Hardware can be jailbroken, and/or small manufacturers will be willing to charge a premium for open/hackable versions. Worst case, many "smart" items can be cobbled together from Raspberry Pi/ESP32/ESP8266.
I find that this is no longer working. But I also remember it being reliably working at the time of first reading this. Anyone know when/why it "broke"?