I work in an open office space and because of that listening to music through big bulky over-priced headphones is a big part of my working day since we (software engineers) need to spend quite a bit of time inside our own heads to do what it is that we do.
Traditionally I haven't thought that much about what music I'm listening to, but recently I've started to realise that different music has different effects depending on what mental state I'm in and what it is that I have to do.
My taste in music is fairly broad as I believe that there are good things in pretty much every genre of music. This means that while doing development I've been listening to everything from metal to country, without really thinking too much about what I'm listening to at what time.
Lately though I've been on a run of trying to A/B test things for myself to squeeze out every possibly tiny bit out of every day, and while testing distractions I did come up with some (to me) very interesting things.
First thing I learned was that music with really engaging lyrics are only really good in some certain situations. Especially when doing mechanical repetitive tasks some of this is great since it keeps me from drifting off. An example of a task of mine where this has applied for me recently, is doing slicing/exporting of graphics from Photoshop and Illustrator for a project.
Second thing was that it depends if I'm really crunching hard on something or if I had more time to do something what kind of pacing feels most right. However, it is not an absolute indicator as I need to balance it with how I feel.
Sometimes when stressed it's better with something more downtempo to calm me a bit and keep me more focused to avoid mistakes and to lower stress level.
However, sometimes when stressed it's better with something with super-high energy to give me more energy to push faster and riding the wave of energy that comes with pushing towards a tight goal that you know that you can do.
Basically whatever music I can play to should only be a plus and never make me feel more stressed than I would be otherwise since if it does then that is only going to be detrimental. So while listening to Paganini is great when I feel like a virtuoso it is much better to listen to Gridlock when my stress level is too high.
Also, when slogging through something that is non-urgent but necessary to do I may also need to go either way as either way may be helpful depending on the situation. Sometimes it's good to stay mellow and sometimes you need a shot of energy.
I experimented for a while with focus@will that had claims of making you more focused and more productive. It has the weird business model of that it's free if you don't register an account, but is limited if you do register an account and don't pay for it.
The "Classical" and "Alpha Chill" stations were actually pretty good, but I think they are too wrapped up in hyperbole. I would recommend experimenting with listening to their music but I'm not convinced it's worth the price they charge.
Now I mostly use rdio to stream the stuff that is actually in their catalog which is, in my opinion, slightly better than Spotify but still only has a fraction of the music that I listen to. For the stuff that is in their catalog though their web player and player apps are great experiences.
I also have my own Subsonic server set up and I stream things from that using Thumper on the Mac and iSub on the iPhone. This I use for all music I can't find anywhere else.
Then I also listen a bit to Digitally Imported. Primarily to the Cosmic Downtempo, Space Dreams and ChillHop stations. This is mainly as sometimes it is nice to not have to decide what to listen to but rather to just to roughly pick a style of music to listen to and then let someone else do it for you.
Lastly I'm going to leave you with a random music recommendation which I find to fit almost every category and that is Shiina Ringo.
She is quite simply exquisitely brilliant in every way and I really love her music. If you have not listened to it before you really should... It may help you become a better developer, or it may make you smile as you rock out on a Saturday morning.