As an anecdote: we have an iPhone 3G in our household, a phone that became progressively worse with certain updates after the release of both the 3GS and 4, to the point that it is nearly unusable for surfing now. This leaves me with exactly two options: stop using it as it was meant to be used, or buy a new phone. And for the other camp: in order to get an inofficial version of Android that is newer than Gingerbread on my phone, I would have to reformat its internal storage, which I can only do since it is unlocked by now. However, even that is not entirely without risk, and it is not supported.
Oh, I entirely agree; I've been bitten by this myself (and on desktops/laptops, not on mobile devices), and it's one of the main reasons I don't have an iDevice and don't use many apps on my Android tablet.
I'm just saying that you and I are outliers; most users appear not to care that their device is locked down and they will sooner or later be forced to upgrade. (Many of them are used to upgrading every time their phone carrier comes out with a shiny new toy anyway.)
But the reason this happens is that most people, even when the computer they owned really was a general-purpose computer, didn't use it as one. Anyone reading or commenting on HN is an outlier; we actually need a general-purpose computer, because we need to be able to do things with it that its designers and builders never thought of. But most people don't. Most people want a small and pretty much stable selection of apps, and if those apps are there, they don't care whether or not the device they're running on could also run an infinite number of other apps.