For months, many pundits, partners and customers have wondered aloud whether Microsoft's Universal Windows Platform (UWP) has a future. Officially, the story is UWP is alive and well. But the Win32 platform lives on and seems to be back on Microsoft's radar screen. So what's the real story?
I had a chance this week in Seattle to ask Kevin Gallo, Corporate Vice President of the Windows Developer Platform, for his take on what's going on with the Windows developer platform.
When Microsoft launched UWP originally with Windows 8 (and continuing with Windows 10), officials promised that the platform would provide apps with better performance and security because they'd be distributable and updatable from the Microsoft Store. Developers would be able to use a common set of programming interfaces across Windows 10, Windows Phone, HoloLens and more, officials said, when selling the UWP vision. The downside: UWP apps would work on Windows 10-based devices only. Developers would have to do work to get their apps to be UWP/Store-ready. And Win32 apps wouldn't get UWP features like touch and inking.
Arguably, Gallo told me, "we shouldn't have gone that way," meaning creating this schism. But Microsoft execs -- including Gallo -- continue to maintain that UWP is not dead.
Over the past year or so, Microsoft has been trying to undo some of the effects of what Gallo called the "massive divide" between Win32 and UWP by adding "modern desktop" elements to Win32 apps.
"By the time we are done, everything will just be called 'Windows apps,'" Gallo told me. "We're not quite there yet." But the ultimate idea is to make "every platform feature available to every developer."
Last year, Microsoft introduced "XAML Islands," which is technology aimed at helping Windows developers to use UI elements from UWP in their existing Win32 applications, including Windows Forms and Windows Presentation Foundation (WPF) technologies.
This month, the team took additional steps. In a May 6, 2019, blog post, Gallo explained to developers: "You've told us that you would like us to continue to decouple many parts of the Universal Windows Platform so that you can adopt them incrementally such as WinUI, MSIX, and Windows Terminal." The plan is to provide these components to Win32 developers, not just UWP ones.
A week before, in a further move toward undoing the Win32/UWP divide, Microsoft announced that "non-packaged Windows desktop apps are going to be able to use Windows Runtime (WinRT) components. This will be turned on simultaneous with Windows 10 1903 (the May 2019 Update).
"Registration-free WinRT enables you to access more features in the UWP ecosystem by allowing you to use Windows Runtime Components without the requirement to package your application. This makes it easier for you to keep your existing Win32 code investments and enhance your applications by additively taking advantage of modern Windows 10 features."
In short, Microsoft's new goal is to try to make all features available to all of the Windows frameworks. Saying that Microsoft is dropping or deprecating any of the Windows frameworks seems to have been declared from on-high as a big no-no. Instead, Win32, UWP, Windows Presentation Foundation are all "elevated to full status," as Gallo told me.
SEE: Microsoft Build 2019: The biggest takeaways (free PDF) (TechRepublic)
The Windows team has been facing additional confusion and a lack of clarity around what's happening with the Microsoft app store. In recent weeks, a number of people have noticed that Microsoft is no longer putting its Office apps in the Microsoft Store. I asked Gallo if the Store is dead. And unsurprisingly, his answer was no.
In Gallo's view, "the Store is about commerce. It's another channel for distribution." But it's not the only way Windows users will be able to get apps.
"You can trust apps differently. They don't need to be in the Store. People really just want to know if Microsoft considers an app good," he said. And that means there needs to be a trust model on Windows.
From my discussion with Gallo, it sounds like Microsoft may be moving toward a model of getting apps Microsoft-certified and trusted and then allowing Windows developers to decide how best to distribute them -- via the Microsoft Store, the Web or other methods of their choosing. And Microsoft will help users find those trusted apps, wherever they may reside.
My main take-away from chatting with Gallo: The days of trying to push Windows developers to build and/or repackage their apps to be UWP/Store apps seemingly are over. It's now Windows apps or bust.