2015 UPDATE
The situation has changed drastically during the last few years.
Today the answer is: "Run all of them - AT THE SAME TIME!"
As long as you can run Docker on your distro (and there's a good chance that you can) then you can run programs in any Linux distro at will. E.g. see my Docker Experiments and you'll find some shell scripts there that run over 20 (sic!) different Linux distributions on every script invocation. Today it matters even less which distro I use, if every command I run can be executed in any other distro if it makes sense.
Here's my original answer from 2012:
Best Linux distribution
The best Linux distribution for programming is ... all of them. There is really no distribution that I know about that would be bad for programming. The tools and languages that you use are available on every Linux distribution. The differences are not with tools or languages but with package management systems, versioning, philosophy, release schedules, default desktop or software installed by default, but this can usually be changed easily.
Debian
For example if you use Debian Stable then your system will be rock solid but would not get any new features after release, only bug fixes and you never know when the new Debian Stable version comes out: it's released when it's ready.
If you use Debian Unstable then you will have a running version that is always on the cutting edge but you pay the price that not everything is tested as thoroughly as on Stable.
Ubuntu
Ubuntu is based on Debian but the versions are more recent than on Debian Stable and it has a predictable release timeline so you can plan your upgrades ahead of time and you can use the Long Term Support version and be sure to get bug fixes for 5 years.
The other difference is that Ubuntu doesn't support as many architectures as Debian so software that is only available on intel architectures can be used by default while it cannot be used by default on Debian.
The most important difference of Ubuntu other than cosmetics is AppArmour and Upstart but if that is an advantage or disadvantage is entirely up to you. Both Debian and Ubuntu are very developer friendly in my experience.
Arch Linux, CentOS, Fedora, Gentoo, openSUSE, Slackware...
You may also want to see what distros offer commercial support, or if they are available in hosting companies that offer shared hosting, dedicated servers, VPSs etc.
For example Linode currently offer those distributions:
Arch Linux 2012.10,
CentOS 6.2,
Debian 6,
Fedora 17,
Gentoo,
openSUSE 12.1,
Slackware 13.37,
Ubuntu 10.04 LTS,
Ubuntu 11.10,
Ubuntu 12.04 LTS and you pretty much can't go wrong choosing any of them. It's nice to have the same system on your laptop than on your server, but then again you might not care. It may give you some idea on how tested and widely used they are, though.
Communities
Another way to make your mind would be to take a look of the online communities of the distros that you are thinking about. For example Ubuntu has Ask Ubuntu here on Stack Exchange so you can check it out.
Documentation
The documentation is also something that may be important to you. There is a nice documentation and wiki for Ubuntu. There are various Debian resource and documentation.
Those are just examples. Every distro has some community and documentation so search for it and see if it satisfies you. Keep in mind that not always the biggest community must be the best for you, you may feel more comfortable with a smaller, maybe even a very special purpose distro, with a community that would highly value your interest and possible contributions.
Live CDs
I would suggest to try as many different distros that you can reasonably try on Live CDs and choose whatever feels right for you.
You can start from the list of Linux-based live CDs on Wikipedia and read the Wikipedia articles about the ones that you are interested in for a good start.
Good luck.