A few Microsoft properties have received grief the last couple of years about shipping features, or even entire apps, on non-Microsoft platforms before those same features or apps come to Windows and Windows Phone. I talked to a friend about this a few months ago, and as rumors swirl that Office for iPad may arrive before a Metro/Modern version of Office for Windows 8.x I thought I’d relay his explanation.
What groups inside Microsoft are finding, just as third-party developers have found, is that the API set in WinRT and on Windows Phone is deficient compared to Android and IOS. So the development team envisions a feature they want to add. It takes them a couple of days to implement that feature for Android or IOS. But for Windows/Windows Phone they get into a cycle of negotiating a feature request with the OS team and then waiting for an OS update that includes the feature. That can take man-weeks of effort and many months of elapsed time.
Now the app or services team faces a dilemma. They can wait the many months for the Windows support to appear while they lose competitive ground, or they can ship their feature on Android and IOS as soon as their own update schedule allows and play catch-up on Windows. Years ago they most likely would have taken the hit to their own business in order to protect the Windows franchise. However in an age where Microsoft is an underdog in many areas that is no longer considered a viable way to do business. Thus we will sometimes see features or entire apps on non-Microsoft platforms before we see them on Windows/Windows Phone.
Now of course this really should be putting pressure on the OS team to expose a greater and more competitive set of features through their modern API sets. This is something third-party app developers are getting rather vocal about as well. So on one hand a lot of Microsoft fans are going to get upset as functionality comes to Android and IOS before appearing on the various flavors of Windows. On the other, they should be happy that Microsoft teams are putting a lot of internal pressure on the OS team that in the medium to long-term will greatly improve Windows as a modern app platform.
This is the result of the Windows 8 team, and the Windows Phone team, developing their platforms and API sets largely separate from the other divisions within Microsoft. Of course it would not have been possible to launch Day 1 with everything they needed, but if they had consulted sooner, we may have been a little closer towards a viable API openess which Office, Dynamics, and outside companies like Adobe may need to make WinRT more viable in the short future.
I think it goes further back than Windows 8/Windows Phone 8. Win32/C++ was neglected far too long as .Net was developed and promoted. Then when Longhorn blew up, Mr. Sinofsky and others developed what pretty much has to be described as an irrational hatred of all things .Net, despite the fact it’s probably Microsoft’s largest developer platform. Combine that with the Windows Team’s over-reliance on telemetry and completely ignoring customer/developer input, and the size of the development effort required for integrating Windows Phone with the Windows kernel, and we end up with the current state of affairs. A decent .Net implementation would probably result in a lot more apps being available for Windows 8/Windows Phone 8.
Since I’m not a System Administrator, the lack of RDP on Windows Phone 8 while it’s available on iOS and Android is just an embarrassment. If I was an SA, that would be a deal killer and I’d be using an Android or iOS-based phone instead of my Lumia 920.
Now if Windows Phone Blue and Windows 8.1 Update 1 don’t solve a lot of those issues, I’ll be a lot less inclined to give Microsoft the benefit of the doubt. Hopefully BUILD will help clarify things.
Can you give specific examples of WinRT lagging behind iOS and Android? And of the affected Microsoft apps? From what I recall, the only case was Skype being far less powerful on Windows Phone 7.x due to its lack of background running tasks.
I vaguely remember other Microsoft apps that were released earlier on iOS (or that were more fully features), but I never got a sense that it was due to API limitations. (Of course, that is possible, I just don’t remember)
I think the worry the OS team has is as more of Microsoft’s services show up on competing platforms (especially platforms with larger, mature ecosystems), choosing Windows becomes a harder sell. Office for iOS and Android are necessary but they also signal that Windows is a “dead” platform even to Microsoft itself. I agree this should put pressure on the OS team but I wonder if it may fall on deaf ears.
There a probably several logistical reasons why this isn’t happening already, but wouldn’t it be a powerful statement if MSFT would/could release on several OSs on the same day.
This is not new. PowerPoint for Mac dates before PowerPoint for Windows, and I read that PowerPoint for Windows had to wait until Win3.0 to arrive.
PowerPoint was developed by a small company in Silicon Valley as a Mac-only application, which was then acquired by MS.
You are probably right though, PPT would probably not be possible on Win 2.x
Another example of the wreckage that Sinofsky’s Windows 8 team brought to Microsoft. We, the developers, TOLD them during development that WinRT was a joke. Just like anything else critical of W8, we were ignored.
Evidently even in-house folks agree with us.
What a disaster.
WinRT is a v1.x product. Do you remember how awful iOS or Android were back then?
That doesn’t excuse anything but let’s not blow this out of proportion.
Sadly, unlike Apple or Google, Microsoft has a far less loved brand, so they get criticized more easily.
I don’t know much at all about iOS or Android, but I did start with .Net beta 2. .Net 1.0 was somewhat limited but two year later, when .Net 2.0 was released, it was pretty much full featured. This is not to say that there is no real improvement from 2.0 to 4.5.1, but rather that by 2.0 .Net was very usable. October 2014 will be the two year mark for WinRT. We can only hope it’s as full featured by then as .Net 2.0 was.
The story and the comments are all pretty much on the mark but at the end of the day talk is just that and pressure is just that. The key question (before we reach the tipping point) is WHEN.
When will this become reality because at the end of the day that is all that matters in this instance.
Sorry if this sounds a bit snide, but, Hal, please could you say “iOS” instead of “IOS”? Apple use the little i in all their branding. If you don’t follow their lead, iOS developers may prejudge you.
Thanks, I usually follow their conventions but got lazy.
The lack of System.Data was very surprising to me.
spot on. spot on. But is it too late? Let’s say they ship WinRT2.0 at build, now with just as many capabilities as iOS/Android. Does it matter? I think office for the ipad acknowledges windows is dead to consumers regardless of an API because MSFT could have easily done what they did with IE and given themselves native access to win32.
I think nothing says your mobile strategy is over when your CEO in his first major presentation basically nukes your OS as irrelevant garbage not worthy of even a preview.
And why should devs follow MSFT? Windows Forms: abandoned. WPF: Abandoned. Silverlight: Abandoned. .NET: Abandoned (at least as far as store apps go). How many times do they have to start over? Why not improve .NET performance, put the whole framework in lieu of winRT, ditch that POS crap of convoluted COM mixed with .NET, and keep extending .NET to replace win32 while letting us do PINVOKE when we run out of legs.
If they do that tomorrow, watch every app on earth be ported to win8 in less than a year. We don’t need winRT.