Setting Up Dev Environment
For development purposes any flavour of Linux would do but I already had Ubuntu installed so I went ahead with that. It is highly recommended to dual boot Linux and windows. Though if you are not interested in installing Linux on your machine, you could still use Linux environment in a virtual machine sandbox on your Windows OS.
How to install Linux?
Following are some useful resources that I have used to successfully dual boot windows with Ubuntu on my machine. (Was a lot of hard work and a lot of fun :p)
And after you successfully install Ubuntu on your machine, have a look at this awesome customisation walk through that will make you appreciate your new workplace even more :D