Is there a future for true Universal Windows Platform (UWP) apps on Windows 10?
Movement on the true universal app front has been pretty slow now that Win32 apps can tap into UWP APIs, so what does that mean for the future of native UWP apps?
Today, Microsoft's Universal Windows Platform (UWP) is about much more than truly modern universal applications. It's a platform that allows developers to take advantage of all the new Windows 10 features introduced over the last couple of years, regardless of whether your app is universal, a legacy Win32 program, or even a progressive web app. UWP in its current form welcomes many app types, and while that's great news today, it is a bit of a compromise when it comes to Microsoft's future ambitions for Windows.
The original plan for the Universal Windows Platform was this idea of truly modern universal apps that let developers build once and scale across many different device types and versions of Windows 10. These universal apps target common core UWP APIs, and as such can run on modern versions of Windows 10 such as Mobile, HoloLens, and Xbox. This was quickly pushed aside when it became apparent that developers were not adopting Microsoft's new universal platform, which led to Win32 programs being allowed into the Store.
Allowing Win32 programs to tap into the universal platform today is not a bad idea at all. In fact, it makes sense, because the most popular version of Windows 10 on the market right now is the one that supports these legacy programs. Because of this, it's fair to assume that the concept of true UWP apps is dead. Movement on the universal app front has been slow, with most developers opting to shove their old legacy programs into the Store instead now that this is an option.
Is there a future for true universal apps?
So does this mean that Microsoft's vision of truly modern universal apps is dead? I don't think so. It's true that right now, not many developers are building native UWP apps on Windows 10, but that doesn't mean it's going to go away. It will always remain an option for developers, because the future of Windows depends on it. The version of Windows 10 available today is an OS built on decades of legacy code, which makes competing with more modern platforms like iOS and Chrome OS incredibly tricky for Microsoft.
The Windows Core OS (WCOS) effort is attempting to build a new version of Windows 10 that scales across different device types and guts the OS of legacy components and features in favor of native UWP apps and experiences. It's a truly modern version of Windows that's primary app platform is universal Windows apps. Of course, it will still run Centennial Win32 programs in some form, but Win32 apps will no longer be the primary, native app platform on Windows Core OS. This doesn't mean full Windows 10 today is going to go away, but it does mean that Microsoft wants true UWP apps to be the main way developers build Windows apps in the future.
I think that over time, Win32 programs will slowly take a back seat when it comes to building and using apps on Windows 10, only existing for legacy applications or programs that require APIs or functionality that simply won't be coming to UWP. Windows Core OS can run Centennial Win32 programs, but this functionality is only really there to fill any gaps that true UWP can't or hasn't yet filled.
Now, this isn't going to happen overnight, but this is Microsoft's long-term goal for Windows. As such, I firmly believe that true UWP apps are here for the long haul. I imagine that over the next few years, Microsoft is going to continue building out the Universal Windows Platform with more features and capabilities for developers to take advantage of. The end goal is to make UWP a viable replacement for legacy Win32 programs, but that's going to take time. It will be a long while before we start to see developers building desktop-class applications (like Photoshop) as true UWP apps, but that is the future Microsoft is building towards.
Get the Windows Central Newsletter
All the latest news, reviews, and guides for Windows and Xbox diehards.
A long-term goal
Just like Win32 programs, developers are welcome to build native UWP apps in a number of ways, using languages such as C#, JavaScript, XAML, HTML, React Native, and more. A true universal app is one that targets only core UWP APIs, allowing it to function on versions of Windows 10 that do not include legacy APIs like full Windows 10 does today. In this context, PWAs are native universal apps. Unsurprisingly, legacy Win32 programs aren't natively universal, as they use other APIs that are not part of the core UWP API framework, and as such can't run on "modern" versions of Windows like with WCOS.
It's also important to stress that Microsoft wants UWP to be more than just mobile and lightweight apps. It wants developers to choose UWP for desktop-class apps as well. One of the big reasons we're not really seeing that yet is because the platform isn't mature enough right now, and there's no real incentive to rewrite Win32 apps as native UWP. It takes time for an app platform to mature, but UWP is slowly getting there. Interestingly, Adobe is just coming around to the idea of a full Photoshop app on iPad. It's been eight years since the iPad launched, and Adobe is only now starting to think about building a desktop-class application for it. Developers should eventually begin to do the same on Windows with the Universal App Platform.
I mean, it's pretty laughable to assume that in 10 years time, Win32 will still be the primary platform for Windows apps. Once Windows 7 is long out of support, there's little incentive to build new Win32 programs as it would be more beneficial to build a native UWP app at that point. I imagine the only apps that will still be Win32 are ones that already exist today, assuming by then they haven't been rewritten as native UWP apps. Of course, there will always be people who need legacy Windows and legacy Win32 programs, and full Windows 10 will always exist for those people. But for the rest of the world, most people would be okay with a true UWP experience, assuming the universal apps are there.
So, yes, I think there is a future for true UWP apps on Windows 10. Microsoft's end goal is to make it the primary app platform for Windows, regardless of whether it's on Windows Core OS or versions of Windows 10 that natively support legacy programs. In fact, I think Microsoft's WCOS effort is proof that the company is committed to true UWP apps alone, it's just a really long-term goal that's going to take a lot of time to achieve. I'll be talking a bit more about the Windows Core OS project and the future of Windows, but in the meantime, what are your thoughts on the future of UWP apps? Let us know in the comments!