Why 'Xamarin' is the future of mobile for Microsoft
What if Microsoft could convince developers that there is a single "mobile" platform to develop for, rather than three distinct platforms, iOS, Android and the oft-neglected Windows?
That could be the answer to Microsoft's infamous "app gap" problem. To say that Microsoft has had a hard time convincing developers to develop for Windows phone and the Universal Windows Platform (UWP) would be an understatement.
The Windows Store has always lagged significantly behind the App Store and Google Play. Sadly, even after the introduction of Windows 10 and OneCore (and the anticipated boost they could have provided), the Windows Store still boasts less than half the apps Apple's and Google's platforms offer.
Developers don't love Windows. Can Microsoft mend the relationship?
The app gap trap
Data proves most people spend most of their time with just six core apps, rarely search app stores, and many of the millions of apps in the top app stores are never downloaded. Despite these facts the warehouse of apps model still dominates. As such, developers are compelled to get their apps into the App Store and Google Play, due to the hundreds of millions of mobile users to whom those stores cater.
Sadly, Microsoft has very little smartphone audience to speak of. Thus, even with over 400 million Windows users, primarily on PCs, Microsoft has not been able to make a compelling argument to mobile-motivated developers to develop for the UWP. Moreover, Microsoft's Windows on phone strategy is currently in a state of transition.
An enduring lack of new first-party devices invokes further doubts in developers' minds about the future of Windows on mobile. The past failings and the current state of Windows phone seem to solidify the notion that there are only two distinct platforms in the mobile space worth targeting: iOS and Android.
What Android and iPhone users need to know about Windows phone
Get the Windows Central Newsletter
All the latest news, reviews, and guides for Windows and Xbox diehards.
Despite the challenges that Microsoft has faced in the smartphone space, I believe its leadership is convinced that it has a strategy for mobile. As a provider of a range of development tools, Microsoft is positioned to elevate Windows to the same priority level as iOS and Android in the minds of developers. With Xamarin, Microsoft can create a single mobile target and "universal" app development platform. (Xamarin is a company founded by CEO Miguel de Icaza and CTO Nat Friedman in 2012, and it gives developers the tools to use C# to share code across various mobile platforms such as Windows, iOS and Android.)
Before it does, however, it must reassure developers that Windows still has a position in mobile.
Still in the mobile game
Given the news of Microsoft's move out of producing phone hardware, the quarterly "Windows phone is dead" articles have made their ritualistic appearances. Despite what you may have read, Microsoft's Windows on phone strategy continues unhindered.
No Windows phone isn't dead and it may never die
First, Microsoft is still developing the platform that runs on mobile hardware. Thus, OEM partners such as HP, Alcatel and any other OEM who wishes to, can continue to use Windows to power mobile hardware. Second, I have persistently argued that the next phase of Microsoft's Windows on mobile vision would not be a phone, but an ultramobile PC with telephony.
Microsoft's Surface phone should be much more than a phone
This category defining, Continuum-powered device will, in my estimation, be running full Windows on ARM with Cshell. Microsoft no longer making "phone" hardware makes perfect sense from this perspective. Third, I've argued that full-Windows, always-connected cellular PCs, which are expected later this year, would serve as a segue from Microsoft's current Windows 10 Mobile phone-focused paradigm to the full Windows 10 on ARM ultramobile PCs I envision.
Cellular PCs are part of Microsoft's mobile strategy to move always-connected and eventually telephony-enabled PCs into the mobile, not smartphone, space. Thus, Windows is still a viable mobile platform for developers to build for despite the erroneous claims that Microsoft is leaving mobile.
At the Build developer conference this year, Microsoft will likely stress the coming OEM-supported category of highly mobile cellular PCs (no mention of the subsequent ultramobile PCs or Surface "phone" is expected) to draw developer attention to the company's current phase of Windows in its mobile play.
Microsoft hooking developers into the company's narrative for the mobility of Windows is key to Microsoft winning developers to its Xamarin-enabled development vision.
What is Xamarin?
Xamarin had been an active partner with Microsoft up to its acquisition by the Redmond company in 2016. Freidman said the following of the acquisition:
The companies' shared visions are to enable developers to use a comprehensive singular development tool to develop apps for multiple platforms. "Write once, publish everywhere" is the central and ambitious vision. Microsoft's Scott Guthrie, executive vice president of the cloud and enterprise group shared Microsoft's perspective of the acquisition:
With Xamarin as an integral part of its app development platform, Microsoft is positioned to provide developers with the tools to target Windows, iOS and Android as a single composite mobile platform. Such a Herculean task will require more than explaining the merits of the tools to developers, however.
Microsoft has to embrace the challenging task of composing a message that changes the way mobile is perceived by mobile-focused developers who see the term as strictly Android and iOS.
Xamarin, one mobile platform to rule them all
Microsoft has positioned itself as a platform company and has a goal to provide users with the tools to "do more." I believe that Microsoft wants to position itself as a dev box to help mobile developers do more than target the disparate mobile platforms that are iOS and Android.
The personal computing landscape is increasingly one where a user's digital experience not only transition from device to device but also moves across ecosystems. For instance, many people have a Windows PC but also use a mix of Microsoft and other apps on iPhones and Android phones.
The personal computing space is not a hodgepodge of disparate segments, as it may seem. With Microsoft's cross-platform development efforts and efforts to integrate Android and iOS into the Windows ecosystem, it is clear that the cloud-supported personal computing space is becoming less about distinct platforms.
Composing the single development platform message
I believe that Microsoft should arrest this message on the development side of the equation.
Currently, when developers think about developing for mobile, Windows is rarely a consideration. If it is considered, it's often as a second tier priority, if an individual's or company's resources will allow.
The app bridges, though well-intentioned, reinforce this thought pattern as they beckon developers to take their first-tier iOS and Android code and convert it to the "second-tier" UWP. In essence, the bridge philosophy does nothing to raise Windows to a first-tier consideration in the minds of developers. It supports the continued thinking of three distinct mobile platforms, of which iOS and Android are the targets and Windows is an "if-you-want-to-but-don't-really-have-to" platform.
As all mobile platforms are designed to offer the same fundamental mobile experience, I submit that an ideological eradication of platform distinctions is (or should be) Microsoft's goal. In other words, Microsoft needs to change how developers think of mobile.
To raise Windows to a first-tier target the company needs to encourage developers to see mobile as a single target that is a Windows-iOS-Android composite rather than three distinct platforms. With Xamarin, Microsoft has the tools to do just that:
Positioning the 'universal' app development platform
As an industry-wide provider of development tools, Microsoft could promote Xamarin to the millions of developers who are currently writing apps for iOS and Android, as well as Windows. Ideally, Microsoft will have put in the investments to make Xamarin a powerful, desirable, efficient and accessible development tool to encourage developers to use this single tool for cross-platform development.
If successfully positioned both technically and ideologically, Microsoft could encourage iOS and Android developers to use Xamarin to continue with their mobile development objectives while "seamlessly" incorporating Windows into that vision.
If this is Microsoft's strategy, the company likely hopes that developers who are inclined to use Windows as a development platform will be enticed to target Windows as an app platform. Though changing minds is an ambitious goal, this strategy has the potential to alter the perception that iOS and Android are synonymous with mobile.
If Microsoft is successful, "mobile" will be seen as a single Windows-iOS-Android platform, and Microsoft with Xamarin will be regarded as the industry's development platform for that newly defined mobile target.
Build 2017 is around the corner. Along with a push of project Centennial to bring Win32 apps to cellular PCs and eventually an ultramobile PC, I expect a strong push toward Xamarin this year.
What are your thoughts on a potential positioning of Xamarin as a universal app development platform?
Jason L Ward is a columnist at Windows Central. He provides unique big picture analysis of the complex world of Microsoft. Jason takes the small clues and gives you an insightful big picture perspective through storytelling that you won't find *anywhere* else. Seriously, this dude thinks outside the box. Follow him on Twitter at @JLTechWord. He's doing the "write" thing!