4 ms·
Why do you feel WinRT/UWP (and probably MAUI) were such failures?
by jimbob45 2y ago
Why do you feel WinRT/UWP (and probably MAUI) were such failures?
- pjmlp 2y agoIt starts by Microsoft not following the "Developers, Developers, Developers" meme they became famous for. While, from my point of view, UWP is what .NET 1.0 should have been (see [0]), the way it was introduced, requiring a complete rewrite from Win32/.NET applications, with limited capabilities, already required some adoption love. Then while trying to achieve feature parity with Win32/.NET, this was done at the expense of breaking compatibilty across WinRT generations (8 => 8.1. => 10 => WinAppSDK), and if that wasn't enough, also breaking the .NET and C++ tooling experience in the process. I think it was a mix of issues, management naturally, lack of empathy for the Windows developer community, whatever internal KPIs they had/have to meet, and most likely also quite relevant, it appears new employees don't have much experience with Windows development or its culture, were raised in a world without Windows. People like myself have been PC users since the early days of MS-DOS 3.3, naturally new employees now have other backgrounds. [0] - https://arstechnica.com/features/2012/10/windows-8-and-winrt-everything-old-is-new-again/ https://arstechnica.com/features/2012/10/windows-8-and-winrt...
- fifticon 2y agobasically MS has dropped the ball on UI since the time of WPF (I maintain apps stuck in WPF at work). It looks like the crayon electron browser kids are running the ship now adays :-/ I find WPF incredibly unsexy; unfortunately everything they have tried afterwards is even more amateurish. As others have mentioned, they have probably doomed themselves to eternal KPI hell, so with zero management vision, zero management talent, zero management strategy and zero management commitment, they are incapable of delivering anything to rise above Q3 mediocrity (Ie, they cannot deliver on any meaningful multiyear strategy, because they all have their heads up Q4 asses). They are the Intel of UI, at this point.
- cosmic_cheese 2y agoNot the OP, but as a primarily-Apple-ecosystem dev who had interest in building native Windows apps, the main issue was WinUI missing important desktop widgets (no datagrid, really?) and for the widgets that did exist, it wasn’t unusual to find missing functionality and rough edges. Perhaps most discouragingly there was often no happy path for mimicking patterns seen in first-party Fluent apps. Figuring out how to piece it all together was a nightmare, too with searches turning up documentation and blog posts for N similar but different C# UI frameworks, which compounded with my unfamiliarity with C# and where its stdlib ends and the UI framework begins. It’s all very confusing for someone coming from other platforms. It was very frustrating. Even Android with its notoriously bad and idiosyncratic Android Framework was less of a hurdle to pick up and start using.
- fifticon 2y agoI wholeheartedly agree. For decades, MS management have treated UI dev strategy as an 'almost forgot' afterthought, and the result means halfassed and soon-orphaned attempts at quickly 'reinventing everythimg' every few years, with too little care and effort. Devs then skip these, having been burned. I still recall the mess of silverlight - ui framework designed and guided by clueless managers.
- pjmlp 2y agoEven if I tend to bash Google for how the whole Sun thing went down, or how they kind of mishandle Java support, one thing to really appreciate is how despite all the killed projects they are known for, they managed to have a business unit that firmly believed in an OS with managed userspace and pushed it at all costs. What Longhorn could have been if the .NET and Windows Development teams actually worked together and not against each other.
- neonsunset 2y agoThe common advice nowadays is to not use WinUI directly in .NET land. Instead, it is usually recommended to use AvaloniaUI or MAUI (which, as I've heard, has improved). There is a variety of SwiftUI-style declarative GUI packages and built-in APIs to absolve you from ever touching XAML if that's your preference.