There are times when a phone should get an update, and it just isnt. The Droid Charge is still on Android 2.2, and that is ridiculous. This is the real issue with Android updates, not that the HTC Hero was only updated once. When a phone was sold as high-end, it should not languish for months on end. But likewise, it should not launch on old software.
Android lets manufacturers make all kinds of phones, and some of them are low-end. We need to realize that, and know that they might not get updates. If you bought a $50 iPhone 3GS a few weeks ago, would it be reasonable to expect two years of updates? Probably not, and the same goes for an Android phone with similarly slow internals and a low price.
This infographic makes some points, as indicated above, very well. But its not the first to make those points, and actually goes off the rails discussing things like the fact that Android phone prices often end in 99-cents, as in $199.99. That is not, as the author points out, a warning sign of being "nickel and dimed"; its just confirmation bias.