Microsoft
was burning devs on each major release, and that was a big issue. But IMHO, windows mobile 10 was a disasterous release and that doomed it.
WP7 and WP8 weren't amazing (although three of us liked it), but they offered tremendous value on the low end. You could get a $100 WP8 phone that was more responsive than a $250 Android phone. Microsoft was telling people that most WP8 devices would be upgradable to WM10, then they removed low memory devices from the list, then they released WM10 in such a state that upgrading anything was a bad idea.
In particular, (trident) Edge was so awful, it was almost unusable. Mobile IE had a terrible rendering engine, but at least the UI was responsive. Edge queued inputs, so when a page was busy loading, it wouldn't respond to the back or stop buttons or navigating to a new page until the page finished loading... Not sure what the stop button is there for when it waits to stop until after everything is done.
When you are driving developers away by launching a different development model every release, users are going to be driven to the browser, and if it sucks too, what are they going to do?
WM10 had Continuum for high end phones which is neat, but it neglected the low end market where WP7 and WP8 shone.
It wasn't until the final build of WM10 that they got performance to be good on my test phone. (Edge still sucked) But that was way too late. They needed to have WM10 come out of the gate as good or better than WP8. AFAIK, WM10 never got bigger installed base numbers compared to WP8 even though many WP8 devices were upgradable to WM10.
Perhaps moving phones into the overall Windows org wasn't the right choice for the product. Almost certainly eliminating dedicated Test engineers reduced the quality of the product.
In an alternate reality where Microsoft provided a usable WM10 base install, tested and fixed WP8 -> WM10 upgrades before release so apps didn't fail on upgrade, had an option of a reasonable browser (letting android or chrome into the store or at least offering the old mobile ie), things would have been a lot better. If Intel hadn't pulled the plug on Atom for phones days before the Continuum demo, it might have been buy a high end x86 Windows Phone and run win32 apps on it when you're at your desk... Maybe WM10 would have still failed, but it would have put up a good fight.