My practical solution is a nice pair of noise-canceling headphones.
I don't know what your office culture is like, but at ours it's 100% acceptable for the developers to wear headphones at pretty much any point when we're at our desks.
I don't know what your office culture is like, but at ours it's 100% acceptable for the developers to wear headphones at pretty much any point when we're at our desks.
Though I rarely play music very loud (I'm a musician, and very protective of my hearing), I still find the headphones to be tiring to wear for hours at a time. I've found this to be true even when I'm not playing any music at all. It seems to be something about the air pressure, or perhaps not being able to hear any background noise at all, that makes them tiring to use.
The ATH-M50 is a popular choice, but I haven't personally tried them.
I'm not saying that it is the wrong solution for you, but it's not a viable solution for everyone.