Linux was a million times more stable and much more pleasant to use as a programmer (no SDKs to download with complex installation instructions). It also had a package manager which made installs/reinstalls a breeze. You could actually write a bash script to redo your setup automatically, wow! Never looked back.
I recently installed Windows 8 on an older computer I was setting up for my mom (she didn't want Linux, understandably). It was my first time using Windows in two years or so. Windows Update was broken out of the box. It wouldn't run. You had to manually download a patch to get it to work. I don't really understand why desktop Linux gets so much hate when commercial software is this bad.