Microsoft's UWP = Unwanted Windows Platform?

IT giant recommends migration for those unhappy with current functionality

Microsoft has further clarified its plans for the Universal Windows Platform, a desktop application framework which at the launch of Windows 10 was said to be the future but now looks headed for oblivion.

Principal program manager lead Thomas Fennel has posted on GitHub about the choices facing developers invested in UWP applications.

He explained that the new Windows App SDK – formerly known as Project Reunion – is "using the existing desktop project types as the foundation of the Windows App SDK, due to the vast amount of existing desktop APIs and compatibility that desktop project types provide."

In addition, new capabilities including Fluent Design – Microsoft's design system used for Windows and cross-platform applications – are part of the Windows App SDK, to enable an up-to-date appearance.

What about those who bought into the hype and developed UWP applications? The good news is UWP will continue to get "bug, reliability and security fixes." If you are happy with the functionality, leave it alone, said Fennel. The WebView2 browser control is also coming to WinUI 2, used by UWP apps. The bad news is... everything else.

".NET 5/6 is not coming to UWP project types," said Fennel. If you need this, "we recommend you migrate your project to a WinUI 3 desktop project," he added. WinUI 3 is the UI framework of the Windows App SDK, and unlike WinUI 2 cannot be used by UWP applications.

Fennel said that migration should not be too hard, though there is no automated porting. For a user interface defined in XAML, "in general, you simply change your namespaces from Windows.UI* to Microsoft.UI*." However, developers will know that there are often issues that appear with this kind of migration.

Formerly Project Reunion, the App SDK includes WinUI 3

WinUI 3 ... out of bounds for UWP applications

One remarked in response: "I simply don't understand how you can tell us 'if you're happy with your current functionality in UWP' – we're pretty much 8 years behind any decent advance there has been made." The dev complained about bugs as well as difficulties interoperating with the file system.

Across the Windows universe

UWP was an evolution of WinRT, the API for the Windows Runtime introduced with Windows 8, and was originally designed to be a sandboxed system to make Windows more secure. UWP applications were also intended to be deployed via the Windows Store.

The Windows Store has now been updated so "developers can publish any kind of app, regardless of app framework and packaging technology."

"Once again you abandon a framework. How disappointing!" said another developer.

What went wrong? Business as usual for Microsoft perhaps, but the origins of the UWP debacle go back to 2004 or thereabouts and the decision to remove the dependency of Windows Longhorn (the codename for Windows Vista) on .NET. Early previews of Longhorn used .NET "Avalon" (Windows Presentation Foundation or WPF) at the heart of the Windows UI but performance issues forced an infamous reset and a return to the Server 2003 codebase.

The relevance of this is that the Windows team at Microsoft became convinced that .NET should not be too tightly coupled to Windows, which is why when a new application model was sought for Windows 8, a new thing called Windows Runtime was invented, instead of building on what had been done for Windows Phone, which used the .NET-based Silverlight.

The Windows Runtime supported development in .NET, JavaScript or C++ equally via projections. Clever stuff, but it was new, immature, and lacked compatibility with existing Silverlight or WPF applications. Arguably that decision from the Windows team contributed to the failure of both Windows Phone and, in due course, Windows 8 because lack of compatibility slowed adoption of the new model.

Windows 10 was the beginning of Microsoft unwinding much of what was done with Windows 8, though UWP was still based on the Windows Runtime. Now UWP is going away, the new thing is "WinUI 3 in Desktop" using C# or C++, and Windows developers wary of how long WinUI 3 will endure have to consider options including sticking with Windows Forms or WPF, or jumping ship to JavaScript or other cross-platform solutions. ®

Similar topics

Broader topics

Other stories you might like

  • Ex-Qualcomm Snapdragon chief turns CEO at AI chip startup MemryX

    Meet the new boss

    A former executive leading Qualcomm's Snapdragon computing platforms has departed the company to become CEO at an AI chip startup.

    Keith Kressin will lead product commercialization for MemryX, which was founded in 2019 and makes memory-intensive AI chiplets.

    The company is now out of stealth mode and will soon commercially ship its AI chips to non-tech customers. The company was testing early generations of its chips with industries including auto and robotics.

    Continue reading
  • Aircraft can't land safely due to interference with upcoming 5G C-band broadband service

    Expect flight delays and diversions, US Federal Aviation Administation warns

    The new 5G C-band wireless broadband service expected to rollout on 5 January 2022 in the US will disrupt local radio signals and make it difficult for airplanes to land safely in harsh weather conditions, according to the Federal Aviation Administration.

    Pilots rely on radio altimeter readings to figure out when and where an aircraft should carry out a series of operations to prepare for touchdown. But the upcoming 5G C-band service beaming from cell towers threatens to interfere with these signals, the FAA warned in two reports.

    Flights may have to be delayed or restricted at certain airports as the new broadband service comes into effect next year. The change could affect some 6,834 airplanes and 1,828 helicopters. The cost to operators is expected to be $580,890.

    Continue reading
  • Canadian charged with running ransomware attack on US state of Alaska

    Cross-border op nabbed our man, boast cops and prosecutors

    A Canadian man is accused of masterminding ransomware attacks that caused "damage" to systems belonging to the US state of Alaska.

    A federal indictment against Matthew Philbert, 31, of Ottawa, was unsealed yesterday, and he was also concurrently charged by the Canadian authorities with a number of other criminal offences at the same time. US prosecutors [PDF] claimed he carried out "cyber related offences" – including a specific 2018 attack on a computer in Alaska.

    The Canadian Broadcasting Corporation reported that Philbert was charged after a 23 month investigation "that also involved the [Royal Canadian Mounted Police, federal enforcers], the FBI and Europol."

    Continue reading

Biting the hand that feeds IT © 1998–2021