Linux isn't going to gain traction until they implement a proper GUI and software (graphical) applications to support it. You're not going to get casual users over to Linux if it takes editing configuration files and typing stuff in a terminal to get things done. And casual users make up most of the market.
You can teach a Technie Linux. Sure, no problem. You can probably teach kids Linux too. But it's not going to help until the ecosystem is there. Linux is mostly known for hacker-friendliness, for people who know their way around a terminal. Unless you change that mindset by getting over other developers, the problem is going to remain.