Developers develop for developers first
As somebody who has used pretty much most version of Unix (Solaris,HP-UX,AIX,BSD,SCO, etc), OS-X and Windows since the 90s either in a professional or personal capacity, my conclusion is that Unix/Linux, is developed by developers for developers or highly experienced IT people. Yes from a functional point of view they are far superior being far more flexible, but there are also issues with that in itself.
Even an experienced user can make fundamental mistakes as their knowledge is based on experience. E.g. used to configuring a VM to run with a Netapp filer, suddenly presented with an EMC Isilon, will make the wrong assumptions and wonder why things run slowly.
But on the personal PC front, the end user should be at the forefront of the developers focus. They want to install the OS without any issues and the hardware should just work (which it does the majority of Windows installs, because of third party support).
They want to install apps without the need to go down to the cli (which is still to often a requirement) and run them.
Apple have managed to do this on top of OpenBSD, the Linux community needs to stop the UI wars and focus on a single UI that looks great and is easy to use for an end user.
By all means have all the useful stuff, but hide it away so it doesn't confuse the end user.