I would take the Desire, for a few reasons:
1) I prefer hardware buttons as opposed to touch buttons, you can feel what your doing a lot easier (even with haptic feedback)
2) It has slightly more RAM. I know, it's probably negligible, but why settle for less?
3) I'm not worried about the updates. It's annoying with the Hero, because there is so much it can't do (bluetooth file transfer, several apps need 1.6, multiple Gmail accounts e.t.c). With Android 2.1, the phone will do everything I want it to. Yeah updates are great, but the phone is great as it is, so I won't worry too much about missing out on anything.
4) I really like Sense UI. I have been running an AOSP ROM for several months now, but recently went back to a Sense ROM and realised how much I missed it. They have some great widgets (clock with weather, mail and peep for the main), and the only seem to be getting better with the update.
5) It also has an improved bluetooth radio (2.1 vs. 2.0)
There is also the point that if something really amazing appears in the next iteration of Android, and HTC are dragging their heels while the Nexus One has it, then as MoDaCo has proven that the two devices are pretty interchangeable and I can root and go AOSP if I want to. The dual mics, while a nice addition are not really a draw for me. I've never had a phone with them, and the voice clarity has never been a problem.
Nexus, for many reasons:
- available to me NOW
-
carrier-free OS
-
unbranded by carrier
-
unlocked
- no Sense-UI, means quicker updates
- prefer the haptic buttons
- like the trackbal LED notification light
-
not sold by a carrier
- cleaner looking design
- looks better
- Noise Cancelling!!
If I get it, I will be getting it off contract, which kinda makes the points above in bold moot, as I can get the Desire carrier-free, unbranded, unlocked and not sold by a carrier.