As good as I personally think Windows Phone 7.5 is, there's no denying it has a bit of an application problem. Sure, there's enough applications when looking at quantity, but when looking at quality and having the applications people want, it's a different story. ZDNet managed to get its hands on Microsoft's plan to attract the developers of top mobile applications to Windows Phone.

Actually, both Android and iOS support building code in C++ and using OpenGL... What mostly differs is the gui libraries, a not insurmountable obstacle given that both android and ios are major platforms.

Windows phone is a niche platform, and its totally incompatible with the others meaning not a lot of code can be shared and therefore has to be rewritten... Why would anyone go to that effort for a niche platform?

As another example, *BSD are pretty niche, but they benefit from sharing APIs with linux, so a lot of code written for linux can be used on bsd.

Microsoft are doing what they do on the desktop, a completely incompatible proprietary system... That works when people are already locked in, and helps keep them locked in... It doesn't work when your trying to enter a new market.