I'm not sure why you're being downvoted for sharing your experience.
My experience (as a 10+ year Linux user) is similar. As a workstation/desktop OS, it's unbearable how many things break on a regular basis. My Ubuntu 14.04 (LTS, mind you) installation has constant issues with the update manager crashing. This is on a pretty lightly-tweaked 3-month old setup. In order to get dual monitors to work, I had to plug in one to the motherboard's DVI input, and the other to the dedicated GPU's (AMD) DisplayPort input. And I can't for the life of me get the color profiles to match on both displays, nor to fix issues with screen tearing (also inconsistent on both displays). There are many more issues like this that pile on and on, but these are just two I remember from very recent experience. The fact that this happens on what is supposed to be the best Linux has to offer to the mainstream consumer (I'm judging by Ubuntu's mainstream popularity here) is just terrible.
However, you can't beat Linux as far as the developer environment goes. I live in zsh, Git, Vim/Emacs, Python, Docker, and friends. I'm countless times more productive and trouble-free as a developer in Linux than I would be by using native Windows tools (unless I was a .NET developer I guess). In fact, the times I've tried to replicate my workflow on Windows, it's usually with MSYS2 and installing everything I use in Linux.
Anyways, just my experience. The fact is every OS has its pros and cons. Windows offers by far the better consumer experience, while Linux does the same for developers.
(1) The downvoting is close to the root of the problem here.
A long time ago there were a lot of people in the U.S. that would never buy a foreign car. As a result, American cars did not have to compete on price and quality and the carmakers grew fat. Slowly the customers died off or got sick of the abuse, and even before the 2008 crisis even the rental car companies were starting to buy ricers. Police departments are the one institution that still buys American cars, but our local sheriffs department did trial Hondas for undercover work because after 2008 it seemed possible American cars would disappear from the market.
Today there are lots of people who would never buy an American car so that's how it goes.
By lathering vitriol over anyone who says the emperor's clothes aren't there for the linux desktop, the Linux community continues to fall behind. If you look at Windows and Linux in 1995 vs 2015, you see that Windows has come far ahead and Linux has stayed still or even gone backwards.
(2) So far as a dev environment goes I used to run Linux under Virtualbox all the time, but these days I use Vagrant and for various reasons I am more likely to fire up a Linux box in AWS. If you are working in Java the experience on Windows is not too different from what it is to use Visual Studio and you have the ability to deploy on Linux, which is what I do.
My experience (as a 10+ year Linux user) is similar. As a workstation/desktop OS, it's unbearable how many things break on a regular basis. My Ubuntu 14.04 (LTS, mind you) installation has constant issues with the update manager crashing. This is on a pretty lightly-tweaked 3-month old setup. In order to get dual monitors to work, I had to plug in one to the motherboard's DVI input, and the other to the dedicated GPU's (AMD) DisplayPort input. And I can't for the life of me get the color profiles to match on both displays, nor to fix issues with screen tearing (also inconsistent on both displays). There are many more issues like this that pile on and on, but these are just two I remember from very recent experience. The fact that this happens on what is supposed to be the best Linux has to offer to the mainstream consumer (I'm judging by Ubuntu's mainstream popularity here) is just terrible.
However, you can't beat Linux as far as the developer environment goes. I live in zsh, Git, Vim/Emacs, Python, Docker, and friends. I'm countless times more productive and trouble-free as a developer in Linux than I would be by using native Windows tools (unless I was a .NET developer I guess). In fact, the times I've tried to replicate my workflow on Windows, it's usually with MSYS2 and installing everything I use in Linux.
Anyways, just my experience. The fact is every OS has its pros and cons. Windows offers by far the better consumer experience, while Linux does the same for developers.