There are several major problems with Linux:
- Lack of good graphics drivers
- Very low standards in user-interface looks and ergonomics. Yes, some apps look and feel great, but most of them don't. GUI expectations on Linux are very low and this results in apps that have horrible GUIs.
- Lack of good free apps. Yeah, who would have expected that on a FREE OS?? There's a lot more excellent free apps on Windows than on Linux.
- Some popular apps don't have their Linux versions. Now, if that app is absolutely needed for your work, then you have no choice.
For those reasons Linux is still not as popular as Windows. But one of the major problems is that old users are more in love with the command-line than GUI, resulting in more command-line apps, which repulses other users.