Hacker News new | past | comments | ask | show | jobs | submit
Couldn't agree more.

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.

The current VR generation was destroyed by the manufacturers themselves with the exception of Valve. Oculus did develop nice devices as well, but you never could get a single replacement part if anything broke. Want to exchange a heavily used controller? Tough luck, maybe you find a used one that is heavily overpriced. Using any other controller isn't possible.

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.

God, I just have to share a little experience that not too long ago happened to me, relating with what you said about oculus and repairability.

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.

Regarding rooted android, it is possible to bypass the root checks of most banking apps:

- 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.

loading story #41516521
>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.

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.

loading story #41508628
> Smartphones are a tragedy itself. Security theatre destroyed it.

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.

[0] https://grapheneos.org/

While I would agree that overall repair-ability isn't great, you're wrong. Replacement controllers are available without an issue directly from meta:

- 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!

loading story #41501129
Need some kind of public domain requirements on sunset code/software.

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.

I think this would seriously tank the smartphone business. The reason why I have to buy a new phone every few years is basically sugarcoated planned obsolescence. If the software running my five year old Android phone was public domained, likely the community would keep my phone running for at least five more years.

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.

loading story #41498680
loading story #41503951
loading story #41504601
loading story #41502044
I agree, but I also give the company the concession of being able to open-source the product when support ends. If they do that, I'm okay with it. As soon as they're done making whatever money they could from the thing and it becomes a burden to their pocketbook, hand the source code and schematics over to the community and let them take the wheel.

Not sure about others, but I am more likely to respect a company that does that and buy future products from them.

Open source would be ideal but I imagine the reality of NDAs and proprietary bits and other lawyer stuff means most companies won't or can't. Which, fine, but if you cut off services for a cloud encumbered device in a way that will effectively brick it, you should at least be required to push a final update that lets it continue with whatever basic functionality is reasonable. None of this "we reserve the right for this thing to stop working arbitrarily when we feel like it" in the ToS, the maker is legally obligated to make it keep working if you ship a product like this.

It's an unrealistic pipedream, but one can hope.

loading story #41510202
> 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?

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...

Related to this specific example, WMR headsets are just open enough for linux VR software to work with them - https://lvra.gitlab.io/docs/hardware/#xr-devices (of course this is an uphill battle, ...)
Removing 3rd party code from the sources is apparently a monumental task and a major reason why sources for dead software aren't released more often.
This necessarily requires software regulation, too—if your software requires internet connection, functionality should also require internet connections. Why am I making an account with you just to track my periods?
While I do like the idea of requiring vendors to open-source their IP when support for a product ends, I don't think it's practical. For example, the iPhone X is out of the support window for iOS updates, does that mean Apple should be required to open-source the first version it shipped with (11) or the latest version they supported for it (16)?

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?

Modern software stack for a phone or even less advanced devices contains a fair number of proprietary drivers, which wouldn't be released because the chipset designs they are written for typically outlive the devices they are used in (the chipset gets modified slightly and repurposed for another device). You cannot really get all of the software for the device even if you wanted to.
> 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.

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.