Windows Development Hell: A Twitter Thread.

It's time for Microsoft to own up to the nightmare experience they have created for Windows developers.
There's a reason there aren't new, exciting apps being developed for Windows these days. When getting ready to develop a new Windows Application, here are the decisions a developer has to make: WPF or UWP? UWP or Xamarin? WPF with WinUI? XAML Islands?
UWP with WinUI 2 or WinUI 3? What limitations exist in UWP vs WPF? Will I be able to build the app I want with UWP? Will I get halfway through a project and discover functionality I need is only available in WPF? What versions of Windows 10 should I target?
Will I build a UWP app for a platform that won't exist in 6 months? Will UWP even exist in 6 months? Why are they called Universal apps if they only run on Windows 10 PCs? What if I need to put my app in the System Tray? Change the background image on multiple displays?
What is .NET Core vs .NET Framework? How does that apply to .NET Standard? What is the Windows Runtime? Which languages work with which project type? Is WinJS still a thing? How should I deploy my app after it's built? Winget? Windows Store? Self distribute?
The sheer number of options and uncertainty is discouraging to a seasoned developer, much less new developers starting out. How is any new developer supposed to get started with this mess? The repeated platform abandonments, new frameworks, and new UI designs is maddening!
This is a platform with 1 billion users. It should be the largest, most vibrant platform for app development in the world. Instead it's a mishmash of technologies, app stores, user interfaces, and frameworks.
There is literally zero modern Windows app development today because it's exhausting trying to be a Windows developer. @thurrott wrote an article a while back about the death of UWP. It's not just UWP, the entire developer experience is rotten.
I have not built a Windows app in a year or so and with the announcement of WinUI 3 I was excited to get back into it only to discover their brand new control framework is not capable of building apps that meet their 2 year old Fluent Design System.
That realization and the time I spent trying to make it work before discovering it was a limitation of the framework immediately killed any initial enthusiasm I had for the project. How many developers go through this or other experiences trying to get started and just give up?
I wish I had a solution to offer. Some kind of recommendation that would make it easier to figure out. I started to make a decision tree infographic, but it got so complicated I couldn't even build a tree that anyone could follow.
Instead, I can only say that until Microsoft gets this straightened out, developers are going to continue to support legacy Windows apps, and flee to the Web, iOS, Android, and MacOS for their new projects and no shiny framework or runtime will make them come back.
You can follow @danielgary.
Tip: mention @twtextapp on a Twitter thread with the keyword “unroll” to get a link to it.

Latest Threads Unrolled:

By continuing to use the site, you are consenting to the use of cookies as explained in our Cookie Policy to improve your experience.