I currently own a Samsung Galaxy S T-mobile Vibrant and in the past I had an HTC T-mobile G1/dream. I have played around with hacking and loading custom roms on these phones for a while now.
On the G1 being the first Android phone out, no one every expected much in the form of updates. We did get some Updated to Android 1.6, but from there on all updated stopped. CyanogenMod quickly be came the go to 3rd party developer that was willing to squeeze all versions of Android on the the aging G1. Heck by the time the Vibrant was released with Android 2.1, I had Android 2.2 on my fossilized G1 Thanks to CyanogenMod. The best part of it all is Cyanogen and other Rom developers are doing this for free.
Now with my Vibrant, I am disappointed because Samsung softly promised an update to Android 2.2 by late Oct 2010 ~ early Nov 2010. Unfortunately, the phone was plagued by GPS issues as well. Samsung seemed to be trying to fix the phone rather that update it and by many accounts they eventually did fix the phone(some are still having GPS issues) Late Nov Samsung did release Android 2.2 for some International Galaxy S phones. Those 2.2 updated have yet to be delivered to the US.
The Amazing part of all this, is that despite the multi-billion dollar companies of Samsung and T-mobile being utter failures, Small Independant developers have come to the rescue and are turning out updated better versions of the Android system. The latest system information can be found in the forums of the XDA-Developers website.
Now there are dozens of different developers and different versions of Android (Roms) to try out on your phone. I am currently Running the Axura 2.2 Rom on my Vibrant. I love this build. It is stable, fast and flashy to showoff. You can find information about it on XDA or at DevsforAndroid.
The next version of Android 2.3 Gingerbread has just been released and I guarantee that the independent developers on XDA will have it ready for most phones before the manufactures do.
My Review of the Axura 2.2 Rom coming soon.