Linux can run virtually any program written for an older version of linux, thanks to built-in compiling support.
Ok mate, it's not quite as ur saying it. Linux can virtually run "anything", as long as you spend LITERALLY (and i MEAN that cause I've been there b4) HOURS tryin figuring out how to do it. And by the way, don't forget some programs run better on a given distro rather than another. Actually you could spend hours trying to install a program already made for Linux LOL which is quite sad. Kralik can confirm it.
So that statement of yours really means nothing, cause if we are to talk about programs, then Linux will really be the worst OS of all, cause it doesn't have a standard for installation of new programs (it has a lot of standards, but how does that help?) and different distros will need different stuff and deal differently with programs and so it's a huge mess. On Windows every program has a setup.exe; double click it, next, next, ur done

doesn't get much easier than that. Even a 5 yr old can install Warcraft.
Don't get me wrong, I like Linux! but i wouldn't use it for my home pc, it's not easy and practical enough. It's nice when you get Ubuntu for example, that comes with tons of software and you don't have to touch it once you install it. But try installing a pure Debian linux, for example, and then install the programs you need one by one, including the graphical interface. I'm sure it'll drive you nuts if you're not an expert.
Linux is still AWESOME for servers. Free and stable.