It’s been a strange, fantastic, impressive and bewildering Microsoft Build conference this year. My thoughts are largely still in reflection but I wanted to get down some feelings in particular about aspects of the initial Day 1 keynote which set the tone for the entire event and is still resonating in discussions in the Microsoft community.
The cry is less “developers, developers, developers” and more “cloud, cloud, cloud”. Amazon and Google continue to be chased, bettered and compared with at every step as Microsoft continues its rampant transition to a platform company where its services offerings are existential concerns, to become less and less a Windows dependent company. The day 1 keynote’s initial cloud session was by far the longest, and Scott Guthrie and others reeled off a bewildering array of great new features and pricing for Azure.
Then when we finally reached the Windows 10 section (and yes, everyone was waiting for it), Microsoft left everyone open mouthed at the prospect for the support of Android and iOS apps (clarification and detail to come) on Windows 10, using what they called “bridging” tools. Let’s call them bridge apps.
For consumers and Microsoft this appears instantly a great move. It deals to the app gap on Windows by making it easier for existing apps and games, wherever they were written, to come to Windows. And that can only be a good thing. Making porting easier is only going to help the Windows ecosystem grow, help sell devices and will certainly we believe be a net positive for Windows in the future.
But, and there is a but, it is not without its risks. There was a palpable air of disbelief when the Android announcement was made, and a stunned silence and intake of breath when the Objective C announcement was made. How could they!
There has since been much discussion and hand-wringing around the notion of a “Windows developer” who focuses only on say Xaml/C# to build “pure” universal apps, and does not get involved with Objective C or Java. Microsoft I think may have misjudged the messaging here in their attempts to make a clear statement of intent around the app gap and appealing to developers and publishers who, lets face it, were largely not in the room.
Microsoft developers are used to being Windows developers. For Windows, on Windows. Microsoft have broadened the notion of a Microsoft developer to include anyone who is building against Microsoft Services, and they have eliminated the strategy tax of running or using Windows primarily as being part of that.
We at Marker Metro recognise this, which is why we are able to work across multiple technologies (languages, tools, and operating systems) to ensure we can offer the best support for bringing apps and games to Windows.
The reality is that right now the iOS/Android “bridge” opportunities are great conversation starters with publishers who would not otherwise consider Windows as an app platform. They wouldn’t even consider it and now they might, that’s a positive thing.
However, bridge apps are not by any means a panacea. Right now the state of play with the iOS/Android bridges are that they offer limited or no extensibility with platform integration features. iOS offers a re-compilation approach with more extensibility, but more porting work. Android offers an emulator (sorry, subsystem!) that affords little platform integration control at this point. The Android support is also Windows Phone only (a present technical constraint only it seems). Performance is something we’re not sure about, particularly for say Android games with memory and framerate considerations.
Like with going cross platform and choosing say between Xamarin and Cordova, if you have siloed yourself with a pure native Java or Objective C application your move to Windows will involve trade-offs using a bridge or the pure universal approach.
At Marker Metro, we will help develop apps and games on Windows, whether or not our clients start with Windows or want to port a Unity, Objective C or Java based app or game. The new approaches are simply more opportunity to get more apps and games on Windows, and we can help our clients by embracing all the ways in which the Windows ecosystem can be bolstered and succeed.
We now have a possible technical route to save money bringing existing iOS/Android apps to Windows. Your millage may vary, depending on the app/game itself and the roadmap for your apps/games overall.
Once we put the bridging tools through their paces on clients’ apps and games, we can then start to build picture of how useful they are going to be from a commercial and technical perspective for the client, then advise further.
However, we hope to see from Microsoft clarification on not just the technicalities, but the longer term vision for bridge apps, and provide reinforcement around things that pure universal will always do better or exclusively which will help reduce uncertainty levels in the developer community.
You can’t build Holograms with iOS, nor build an Xbox game with Java. Not yet anyway !