As a programmer, you're looking for three features in a processor
- multiple cores (4 being better than 2)
- virtualization support
- x64 to address more than 3.5gb of RAM
Unless you're working with massive codebases, the marginal performance you get from a core i7 will NOT make any noticeable difference.
What you will need, however, is something that can handle lots of concurrent tasks, while utilizing a sizeable amount of memory.
You will also need to run several virtualized environments to run/test your code in. Personally i have 2 different XP, 3 linux, 1 vista, 1 windows 2003, and 1 windows 2008 environments all setup under virtualbox on my programming workstation. At any given time i can have 2-3 of these running concurrently, making a quad core CPU a necessity. With most virtualization suites you can set specific VMs to run on a single core.
That said, your run of the mill Core2Quad and AMD Phenom X4s CPUs will do the job JUST FINE, and save you a ton of cash over the core i7. Motherboards are cheaper for these CPUs, and you're not tied to pricier DDR3 memory to boot (no pun intended).
In short. SAVE YOUR CASH.