Well, what kind of programming are you talking about? The language matters because of the code base, cross platform potential and available compilers out there. For just learning linux and how it runs on a platform you may want to try a course of somesort online.
If you want to dive right in without mucking up your windows installation then try a liveCD (running the OS from a CD/DVD) version of linux like Slax or Knoppix. If you want to actually install linux, then the most popular choice would be either Ubuntu or Fedora, but I wouldn't just install it unless you plan on using it for some practical purpose. There really isn't anything to installing it, it's fairly intuitive. Drivers are going to be tricky for the beginner, thats why you should stick with a popular choice, so that you will have a wide forum base where questions will already be answered and your answers (cause you will have plenty of questions) can easily be found. Another reason why choosing a popular version of linux is a wise decision is because, 9 out of 10 windows to linux users just use the GUI anyway... so all you really do as a beginner is try out commands in a terminal window and then launch firefox to tell us all about how you are using linux now on TF. Sounds funny, but it's the truth. Most windows users get tired of it really quick because the practicality of the OS is not what they have in mind, and frankly... gaming is not on their radar. Anyway, once you get your requirements or what you NEED from a linux OS.. then you can start to drill down what linux OS you actually really need to install. But, if you are just starting.. there's nothing that an online tutorial/Knoppix and Ubuntu can't teach you.