The problem with the tech world is, from an operating system provider’s point of view, that the goalposts keep moving. These perambulating pieces of wood killed Symbian, killed Blackberry, have almost killed Windows Phone and Windows 10 Mobile, and, one day, may even kill iOS as we know it today. With hindsight, it’s all too clear, but at the time OS coders were making sensible choices.
Operating systems come, and operating systems go.
It talks about releases, NFC, web browsers support and such.
What really killed Symbian, was having a C++ dialect (Symbian C++), with a toolchain that was a mix of batch files and Perl scripts.
Three IDE reboots, Metrowerks, an initial attempt with Eclipse, followed by yet another one then named Carbide.
Then the OS APIs, got PIPS, followed by a mix of Qt and Symbian APIs until the burning platform memo.
Oh, and they were the first mobile OS to support web apps.
Likewise Windows Phone 7 was a reboot from Window CE 6, being only about Silverlight and XNA.
Windows 8 complete reboot with WinRT, complete different APIs between mobile, tablet and desktop.
Windows 8.1, change of APIs (UAPs), now at least mobile, tablet and desktop can share business logic, but not yet the views.
Windows 10 renames UAP to UWP, and allows the code to be truly portable across all Windows 10 devices.
The broken promises repeated multiple times about which devices would get 8.1 and then 10, and then the ones that actually got it.
These were the actual goal posts being moved, that angered developers and consumers, not NFC payments, web browser support, IoT gadgets and such.