My opinions only...
1) MS Office (Word/Excel/PPT/etc) has never been available for
Unix/Gnu-Linux. Word and Excel have long been 2 apps users require.
Not OpenOffice. While OpenOffice is quite featureful, it is not 100%
bug for bug compatible with real MS Office products. Similar for
Outlook vs say Thunderbird with respect to the way Outlook is integrated
into the MS universe.
2) Windows vs Unix/Gnu-Linux, Windows is a single operating system.
Whereas on the Unix/Gnu-Linux side you have so many choices it's
overwhelming. Different distros, you have several pure Unix variants,
multiple Linux variants for the underlying OS and then you have
X-Windows with it's myriad of choices. There is no clear single choice.
And then there's the different packaging systems...
3) X-Windows, though as cool as it is to be able to run things remotely
and display them locally, this is rarely used--most individual users
will never use that functionality. Aside from that, X-windows is an
unmitigated disaster from a UX perspective. X's original underlying
programming interface left it up to the programmer to do everything.
This caused every early programs to look and work differently without
any consistency. To fix this, toolkits came along and along with the
toolkits came the toolikit wars and then the window manager wars and
then the wars between Gnome and KDE and other desktops (desktop wars?).
Even multiple ways copypaste works. From a user point of view nothing
is consistent across all apps on Unix/Gnu-Linux and X-Windows. All of
this has kept Unix/Gnu-Linux and X in the "geek space".
4) I've not see a single X-windows based desktop that looked as slick
and as polished as modern Windows or MacOS. Everything seems to just
look and work more clunkily and a bit slower. This is very much my
aesthetic opinion, I know. Things like consistent font sizes and icons
and their proportion and slickness. All very subjective I realize but
in my opinion, this too has made the difference. The "wow" factor just
isn't there. There isn't even a single approximate "look and feel" to a
graphical UI on top of all Unix/Gnu-Linux systems that one could point
to, though some are more popular than others.
There have been efforts to standardize things in the Unix space like
Posix and The Open Group but again, without a single consistent user
paradigm. The people in this space have rallied around choice and not
trying to get programmers to write to one standard but let programmers
create. I have sat on Posix committees and the standards that got
written were to include everything rather than narrow it down to the
best thing to do. Many people have told me over the years that they
really appreciate the diversity of the way applications work under X
windows, that each one has a different UX, some with scroll bars on
left, some on right by default, some square buttons, some rounded,
nothing the same from one to the next. This "wild wild west" approach
has kept Unix/Gnu-Linux from being more mainstream.
5) There is less main stream software available for Unix/Gnu-Linux. As
mentioned above the MS tools suite. Most of the Adobe tools like
Photoshop. Financial tools like Quicken. Some of these things have
moved to online web-based tools. Web based MS Office tools are
definitely not the same as the real ones though. You can argue that
there's a replacement for almost every tool like Gimp for Photoshop but
it's not Photoshop. Most photographers have heard of or used Photoshop,
but not many know or know about Gimp. These are just a few examples,
there are many others. This effect has a knock-on effect of lower
uptake for Unix/Gnu-Linux.
6) Support. Who does the non-technical user go to for tech support?
Since the Unix/Gnu-Linux OS and windowing tools were developed all over
the place, not in some walled garden of Microsoft or Apple, this is why
all this competing and inconsistency has occurred. It's great that we
have Unix/Gnu-Linux don't get me wrong. I'm just giving you my opinion
of the history of why a single Unix or Gnu-Linux system has never had
the same uptake as Windows or MacOS has.
So some mainstream things ARE Unix/Gnu-Linux... MacOS is Unix based, or
at least Mach which has it's lineage from Unix, so there's a mainstream
Unix based OS. But you can't just run MacOS things on anything other
than MacOS (not easily anyway). Android is Linux based and you can get
Android "chrome books". There is Ubuntu and a few other packaged Linux
based OSes (Ubuntu mostly but probably also RedHat) that sometimes ship
on computers but they're never nearly as popular as Windows. Why?
Mostly see (1) above in my opinion. And also you have sheer momentum
behind Windows and MacOS which is hard to get traction foothold in.
Unix/Gnu-Linux (mostly Gnu-Linux as far as I'm aware) is used behind the
scene of many many hardware devices.
7) Once most people buy a computer and it's shipped with an OS, not very
many will wipe it out and install a different OS. MS knows this and
they get hardware vendors to ship Windows.
I think Unix/Gnu-Linux with all it's diversity and openness is great!
Without some unifying force, I just don't see an easy way a fully free
and open system is going to become a mainstream OS used on
desktops/laptops, though Google has managed to do this for phones,
tablets, and some "chrome books", so maybe that's the future, who
knows.....
These are my opinions of why we haven't historically see Unix or
Gnu-Linux running on more computers sitting on mainstream
laptops/desktops. I'm sure some people will disagree with me and will
correct me if I've gotten some of my facts wrong above or forgotten
something important, so feel free to add/correct.
Michael Grant