We roll out in phases for some fairly simple reason. One is simply a resource issue -- we can't soak too many devices at once, carrier labs can't test too many at once, and servers can't handle the distribution of too many at once.
It's also true that some device gets to go first, and some go second, and some third, etc. No matter how we make the lineup, owners of other devices complain. It's built in to the process and human nature. I'd tell you not to take it personally but that doesn't really help, does it?
There are certainly advantages of going second. The first devices to get Gingerbread -- well, let's just say it wasn't all wine and roses.
We are working hard on ICS. Sometimes there are small but essential changes that we need to push out without waiting.
I'm sorry I got up on my hind legs and appreciate your very civil response.