So I've had my G2 for a bit over a month now; here are some first impressions.
1. I like it! It's sleek, it's cute, it does things. I don't feel bad for not having an iPhone. The UI is generally well designed, and I'm not easy to please in this regard.
2. It can be slow. I think there are two reasons for this:
2a. The processor is not fast enough and maybe it needs more memory. This means that actions sometimes time out, and you get a dialog offering you the chance to "force close" or "wait." In my experience, one round of "wait" almost always clears this up. The sluggishness is extremely annoying, though, when you are trying to take another incoming call. Maybe it's the sluggishness, or maybe I haven't figured out how to switch calls correctly and it's just a UI design problem.
Having read a bit about how the Android OS works, I think you can help avoid some sluggishness by keeping a smaller resource footprint: if you're not coming back to where you are in an app, back out through as many screens as you can to get to the home page, rather than hitting the home button. Then Android will not hold on to the state for each of those screens.
2b. Going to the calendar takes quite a while, I think because it is syncing with the cloud each time you go in. Between this and not having solved my attendee-entry problem, it means that I'm entering all my appointments into Gcal, and letting them sync up rather than adding them on the G2.
3. I'm glad I got the G2, in terms of memory and battery, and probably in terms of footprint, but I miss the physical keyboard from my old Treo 650.
4. The T-Mobile coverage actually seems quite good in the places I usually am. Not so good at my old house, so when I was there cleaning it out I couldn't use the phone much.
5. Haven't tried any programming yet, but I'm looking forward to that! Stay tuned for Minesweeper for Android! (maybe)