A recent example - you buy a $1600 virtual reality headset (HP G2, specifically). A couple of years later the manufacturer drops support and Microsoft disables WMR capabilities.
This bricks a perfectly functional, expensive, device.
Personally, I feel the "right to repair" should extend to software. Why am I not allowed to revive an old mobile phone with a new OS version? Why am I not allowed to revive an old device by modernizing its hardware driver? Why can I not bring an old video game back to life?
Yes source code is IP - but maybe an expiration system similar to pharmaceuticals should apply where, for instance, a regulator compels a companies to release the sources of their drivers & services when a product or service is no longer officially supported.
This isn't acceptable, especially not for devices in that price range. I recommend to try it once as it is an experience, but otherwise VR is pretty much dead again. But don't buy Facebook or something similar, they simply don't offer support for their hardware.
Smartphones are a tragedy itself. Security theatre destroyed it. I could have a safer phone that is on a current patch level instead of using the OEM OS. But my digitally incompetent bank doesn't allow me to use a good phone to run a banking app, because it doesn't allow rooting devices.
Even without giving you any source, manufacturers could at least provide binaries and a mechanism to flash it to devices. There is no technical reason to not allow this.
So, ol' monkeyfun had a quest 2 controller grip button break. From gentle, ordinary gripping. And on the same day as fixing an unrelated problem in another controller. Tragedy!
Naturally this loser went to fix it. No guides? Oh well, at least she could see 3rd party 3D printed parts online for sale.
Might as well disassemble it to see how broken the part is, to know what to order. Whipped out tools, started disassem-- aaaaaaand it broke.
Not only was there a terribly placed ribbon cable made very difficult to access, not only were tons of parts inconsistently either held in by the lightest friction or intense nearly glued-together forces or strange catches, but the precise intersection of these aspects (and a ribbon cable that was seemingly stuck to the connector on just one pin) meant that when a disassembly step caused the controller to spontaneously fall apart into a few pieces, it was so forceful that it damaged that ribbon cable.
AAAAAAAAAAA!!!! ================
For what it's worth, I anyway discovered that the way the part broke would need me to extract an embedded piece of metal anyway and make some repairs to another piece of plastic, so it was never going to end in success.
But it really made me appreciate just how terribly designed those controllers are for repair. Even the component that broke was... designed to bend a piece of plastic repeatedly from what I could tell, rather than say just having a small metal spring.
So user-hostile.
- 1. use MagiskSU for rooting
- 2. add some modules to bypass SafetyNet/PlayIntegrity (https://github.com/chiteroman/PlayIntegrityFix/releases)
- 3. For especially annoying apps add some modules to hide well-known "root apps" from the applist, so these apps don't know they're installed (https://github.com/LSPosed/LSPosed.github.io/releases + https://github.com/Dr-TSNG/Hide-My-Applist/releases) [I only needed it to get Pokemon-Go to work, banking worked without it]
My local banking apps and even google wallet work mostly fine with these workarounds. Though it breaks every few months, which is then usually quickly fixed with a magisk+module update.
Honestly part of that is the fault of the OS itself. If shouldn't allow apps to tell if the phone is rooted or not. Unless I'm asking the app to do something that requires root, the app shouldn't have any ability to tell that it's on a rooted device.
If you're willing to buy a new device, then I recommend getting a Pixel on sale and flashing it with GrapheneOS[0]. No rooting required. Read up on it when you have a chance. Also, if you install the sandboxed Google Play Services layer (which doesn't require any Google account logins and has very limited access to the device) you will be able to run your bank app.
- https://www.meta.com/us/en/quest/accessories/quest-2-control...
- https://www.meta.com/us/en/quest/accessories/quest-touch-plu...
On the software side they have been pretty great with support IMO, e.g. by adding 120Hz to the Quest 2 quite some time after release and opening up the Oculus GO, after they discontinued it. Maybe not valve-level but definitely much more than I expected from meta, and their hardware was a third of the price of valve's, despite having an actual APU in them!
Same as we need copyright maximums in the range of a generation (20 years). Having something come out of copy right 100 years later removes the cultural impact that putting a copyright into the public domain has. Primarily because everyone who was impacted by the original copyright is no longer alive. A prime example is steamboat Willie, aka Micky mouse og, really doesn't have any interest in doing much with it because it is culturally stale/mummified/dried out.
Not saying that this shouldn't happen, though. Just saying that people suggesting this sort of stuff should realize that the economic consequences for some businesses would be major.
Not sure about others, but I am more likely to respect a company that does that and buy future products from them.
It's an unrealistic pipedream, but one can hope.
Hardware is complicated and there are just not enough people with the deep understanding to fix it. I've got lots of old 'open source' devices that lost traction in their developer community. Nobody ever managed to recreate a usable OS for the old Sharp Zaurus PDA until the device itself was completely obsolete.
New OS versions rely on new hardware functions (or just a higher amount of memory or I/O to be usable) so patching to run on old hardware won't deliver something running well.
Video games are a bit of a special case because there's the media copyright as well. But there are lots of reimplementations of game engines so maybe you can't but others certainly do...
In either case, these unsupported iOS versions share a lot of code with newer versions, that are still supported, and also with entirely unrelated products like MacOS, iPadOS, etc. So should Apple only be required to open-source only code that's no longer used in any version of their active products? Should they only open-source the drivers and unlock the bootloader so a third party OS can be made to work on it?
For the US, an expiration system is built into the constituion: "for a limited time"
It's just that that expiration has been stretched to absurdity where "a limited time" now means a whole second lifetime after the death of the author.