The wonderful adactio recently wrote about an issue he was having on one of his websites. He needed to make a technical choice between site security and accessibility, thanks in no small part to old devices falling foul of vendor software lock-in. You can read the whole story here, but the short version of it is that users attempting to access his website from old Samsung tablets and iOS devices were being turned away, as their browsers didn't support the more modern TLS 1.2 specification. His solution was to roll back to the less secure TLS 1.0.
I find this kind of discussion particularly interesting at the moment, because I've recently found myself on the other end of the issue. I bought an iPad 2 years ago - closer to a decade than I'd like to think about, in fact - and have enjoyed using it ever since. Whilst my original plans were to use it as a laptop replacement, I rapidly discovered it didn't fit that use case well. However, it did fit beautifully into a separate niche as (effectively) a portable TV screen for YouTube, a music player for Spotify, and an eReader[1]. The result is that the iPad has travelled with me to four continents and suffers more daily use than any other device I own, except for my phone.
After all that time, it's definitely showing its age. Web browsing via Chrome is deeply frustrating and it can't keep more than 2-3 tabs open without slowing to a crawl; using it as an eReader slowly waned as the RSS apps I used lost support; and, ultimately, its tiny amount of onboard memory means that I ran out of space for new apps years ago (in no small part because of the increasing size of iOS with each update). In all honesty, by about 2016 the iPad had simply become a YouTube device, but I still used it daily!
On weekends I'd grab it and watch a few videos in bed. During the week, it would routinely get propped somewhere so I could catch up on my favourite channels whilst cooking, ironing, washing up etc. If we had friends round I'd load up a music playlist and connect it to speakers. Through all of that, the YouTube app has remained fast, responsive, and a pleasure to use. Even as Chrome and the other installed browsers slowly marched into obsolescence, YouTube kept chugging along without issue.
Which is why it was quite the surprise when I recently opened the app to be met with a pop-up notification stating that I needed to update before I could watch a video. Uh-oh.
Apple no longer supports the second generation of iPad devices, which means I haven't received iOS updates for years. Because I only use the device for a small number of purposes, that never seemed like a problem, and I kept installed apps as up-to-date as possible. Of course, over time most of them have ended support for whatever version of iOS I now use, but that's fine. So what if I don't get any new updates; the apps do what I want? It had never occurred to me that a company would simply trigger a kill-switch to prevent old applications from connecting to their services... but that's exactly what Google have done.
I don't know why (I probably never will), but the most likely explanation is that some core feature or API of YouTube has been rewritten to use a web technology which my ancient app cannot interface with. The actual architectural change may have happened months or even years ago, but whatever legacy support has kept my use case running is now being sunsetted. The result is that my "working perfectly yesterday" YouTube app is now functionally extinct.
That left me in a bit of a weird position. Here I have a device which is slow, sure, but still functional and definitely usable. The screen is crystal sharp, the camera works great, and the few other offline apps that I use all run just as well as five years ago. But the main thing I use it for - YouTube - is no longer accessible. I battled this for a few days before giving up. I still use the iPad for YouTube, but now I have to load it up on Chrome. The user experience is infinitely worse, with a lot of back button usage and a refusal to play videos at full resolution without being told to every. damn. time!
To bring this all back around to adactio's decision (which was to support older devices 👍👍👍), this paragraph rang far too true:
If you’re using an older iPhone or iPad and you can’t upgrade to a recent version of iOS, you’re screwed.
This isn’t an edge case. This is exactly the kind of usage that iPads excel at: you got the device a few years back just to do some web browsing and not much else. It still seems to work fine, and you have no incentive to buy a brand new iPad. And nor should you have to.
In his case the user is stuck with an insecure browser. In my case, I'm stuck with a pretty painful user experience. Neither is ideal.
As a developer, I understand the irritation of supporting outdated hardware and how that can hold back features which other users would benefit from, or even need to have. From a business perspective, keeping legacy APIs and services around ad infinitum is not feasible. But at the same time, a team of software engineers in California shouldn't be able to strong arm me into buying a new device.
In a world that is quite literally on fire, we should be doing everything possible to keep older tech running until the hardware itself expires, not artificially limiting that lifespan with something so controllable as software restrictions. The mentality of forcing the user to upgrade, to get with the modern times, is one that needs to be stamped out. Instead, I can't help but feel that we should be giving people more options. Sure, YouTube/Google may no longer want to support my device, but that's where a third-party could potentially step in[2]. The first problem is that the YouTube API is pretty inaccessible, so there isn't a thriving third-party YouTube ecosystem; the second problem is that Apple have walled off their app store for my device, so even if I could build a solution I wouldn't be able to share it. I could flash it to the iPad locally, but that doesn't help someone else with the same problem.
I'm not too sure what the solution to this problem is, but I think if you're going to sunset a feature, application, or device, you should at the very least have to make it able to be modified. The day Apple dropped support for the iPad 2 is the day they should have jail broken every single one still connected to the web. When YouTube pulls support for their older iOS apps, they shouldn't make it a hard cutoff but inform the user and let them limp on with whatever still works (and, preferably, provide an alternative solution). My hardware is not obsolete, so stop trying to make that true; it's the software that's causing the problem.