Remix.run Logo
Analemma_ 3 days ago

Microsoft's developer relations are highly variable: they are great in some areas (C# and .NET Core continue to be fantastic, Visual Studio's debugger is second to none, going back to gdb after it is like banging rocks together to make fire), and awful in others (if I want to write a GUI application in Windows, what should I do to be on the idiomatic happy path? Microsoft: shrug, try one of these half-dozen half-baked frameworks. No we won't tell you which one, and that doesn't matter because it'll be deprecated in three years anyway).

This is better than the story from Apple and Google, who are just terrible consistently, but there is room for improvement.

____mr____ 3 days ago | parent [-]

This has been my experience as well. All code that doesn't need a UI feels good to write, but as soon as you try to make anything that doesn't run in the console you are met with so much boilerplate and bad tooling that I start dreading waking up.

I've had to make a couple of side projects for my company and I've tried WPF, Blazor, MAUI, and Winforms.

Blazor is the best out of all of these but even it has tedious boilerplate and unintuitive state handling.

MVVM makes WPF and Winforms a hassle, and customizing the looks of components is a nightmare, where some seemingly universal attributes will either get misapplied or outright ignored.

MAUI is a nightmare to work with. Cross compilation is both slow and opaque which makes it impossible to debug and since you are interfacing with the xcode compiler as well you are forced to debug using divine inspiration and hoping it works. We tried to make an RTC AR POC app a while back and it took me 2 weeks of trying different ways to make iirc arkit or webrtc to compile with dotnet and the result was us giving up and just making the iOS version in swift/using xcode instead. I think this is why I still have fond memories of xcode because despite all of its flaws it was noticeably better than trying to cross compile an iOS app from dotnet