My Android experience has been shit, and I'm really getting sick of it.
Admittedly, much or even most of the problem for me is the OEMs screwing things up and not sending out updates.
My Android experience has been shit, and I'm really getting sick of it.
Admittedly, much or even most of the problem for me is the OEMs screwing things up and not sending out updates.
.. support is terrible on the Android side. Really terrible.
In my opinion if you're not going to buy a Nexus device or a Moto E/G/X then you might as well buy Apple. The Android One program will hopefully add more to that.
Most people don't have the ability to make an informed decision about a phones purchase (or they want to buy an iPhone or Nexus but they simply can't afford it).
I bought a Google Nexus at USD650 retail - a perfect counterexample to your advice.
I recommend iPhones to those who can afford it (purchase price, insurance, screen replacements etc.).
I recommend Huawei Y310/320/330 for those who don't have much.
In between there are too many other factors to make a straight recommendation (e.g. buy second hand iPhone versus a Moto G).
But as a slight counterpoint, given the fast release cycle, you can't expect them to support a phone forever. You mentioned iPhones. Well I have an iPhone 3GS. It's a perfectly capable phone that still works and that was still sold as the low-price alternative after iPhone 4 happened, yet Apple stopped supporting it as well. But I can understand that, because these OSes get more bloated with stuff and it leads to a shitty experience. I was able to upgrade an older Galaxy S (first generation, shipped originally with 2.1) to 4.3 by means of CyanogenMod and it was unusable due to the less than capable hardware.
Google did drop the support too early for the Galaxy Nexus, but try out CyanogenMod. I'm even thinking of installing it on my Nexus 4 because the Android on this device is bloated with Google-stuff that I cannot uninstall and it pisses me off. It's also enlightening to install CyanogenMod without Google Play, for an all open-source experience ;-)
I'd love to buy an iPhone but I want to run Android software so Android it is.
Buy a Windows Phone, then.
The GNU/Linux terminology is actually quite relevant here, seeing as Android is Linux, but not GNU/Linux. Hell, Android's libc comes from OpenBSD, so...
Can I do that with an iPhone? Maybe, but probably have to put up with a lot of Apple garbage, trying to make things "easy" for non-technical people and/or keep you in their ecosystem.
I also like that Android uses Linux because I think the proliferation of Linux is good for me. (For various reasons, not that I have a financial stake in it, although I do indirectly due to my technical areas of competence.)
In that sense, I prefer that it uses Linux marginally over, say, using FreeBSD, which I would still prefer infinitely more than a proprietary OS.