Determining a programmer's desktop requirements is not a black-and-white proposition, but matching equipment to programmer type can help productivity. Which "programmer type" are you? (Read related article)
Minimalist (just give me a green screen to get the job done)
Realist (my desktop is not cutting edge, but it's not archaic either)
Extremist (my desktop has the latest bells and whistles, even if I have to install them myself)