The same way you do on a mac! You are using a virtual machine to mimic your production environment, right?
I have Win8 desktop and MBPr laptop and develop on both about 70/30. Brew is nice and all (tho has made me howl in frustration numerous times) but I want stuff running on the exact same software as what I deploy.
Between work and pleasure I use a mix of PHP, Ruby, Java, Node, and Python (well and Haskell.. hello coworker! /wave). Not that I actively develop in all of those but will use other programs written in them and sometimes modify the source. CLI on mac is better than cygwin on PC, but I have had hiccups with both getting the right packages/libraries installed. OSX is far from the holy land imo.
I never have a hair pulling event on Ubuntu installing things, sadly I am too frustrated with the NON-CLI parts of Ubuntu to make it my primary OS.
I have all of those languages installed "natively" (ie not through cygwin) on Windows so linting works in Intellij. For SPAs I can use bower,grunt,gulp,livereload etc in cygwin just as easily as OSX. I've not tried installing Haskell on windows, I run that in my VM exclusively.
Right now my biggest gripe is Ansible is a b to get working in windows, but it can work. Hopefully the "run ansible on host" PR gets merged soon into Vagrant.