When you are in the world of science, every now and then you will run across a piece of code that only runs on Linux. If you don’t know what Linux is or ever have to use it, be grateful. The only good thing about Linux, as far as end-users are concerned, is that there are versions of it that are free and works fairly well in general. Beyond that, it is an overcomplicated, confusing, and poorly documented system where anything beyond the basic usage requires intimate knowledge of command lines, configuration files, and environment variables. Further, I think it encourages those who write Linux-specific code to also adopt these non-intuitive practices, which can bleed into Windows ports of these programs.
This post is dedicated to those like me who would like to be able to run Linux programs when we need to, but otherwise to shove it in a dark corner of our computers where we never need to see it again. I will introduce the basics of Linux and describe how to install it inside a virtual machine on Windows 7.