The real problem is they're still selling it brand new (in the form of the non-retina Mini) and with Apple's policy of supporting devices for 2 or 3 years that means the device will get six years of updates, even though it's already aging badly at this point.
I still have an iPhone4S in a drawer; it's visibly slower than when it was under iOS6 and even compared to a 5S it's night and day, but compared to other middle range android phones that's still decent. Side to side with a Moto G for instance, it's basically the same reactivity, but no one would call the Moto G an unusable device.
That's quite a big difference. I've been pretty happy with my Nexus 4, and hoping to get a full third year out of it... since the Nexus 5 isn't a huge bump, and the N6 is way out of the ballpark on pricing imho. I've been recommending the Moto G LTE for most people lately... it's a usable phone without a lot of extra monthly expense.
The Moto G is under 250 unlocked and the first gen is one year old. The 4S went for a bit less than 700, is now 3 years old and resells for roughly 200. I don't think comparing the performances of the two under the most recent OSes available is biased.
Apple does indeed a better job at supporting older devices, however new iOS releases are basically unusable on devices older than 2 years. I have for example a 2-year old iPad 3 and iOS 8 is usable on it, but for iPhone 4S or IPad 2 the upgrade turned usable devices into unusable ones.