See the hyarge post I just laid above, but the short version is that it comes down to control of the environment. If you're developing for Linux, it is overwhelmingly likely that you are probably creating applications that run internally to a particular organization, and that organization has (or should have) a very controlled, homogenous environment.

When you're developing for mobile apps, you have to hit every possible environment out there.