I see many negative comments about Microsoft and "yet another UI framework"... I started back in the Webforms/Silverlight days, and brough over my skills to each next iteration and had a pretty pleasant dev. experience ever since.
I was using the following: Silverlight -> WPF -> Windows Phone -> WPF -> Angular/webdev -> Xamarin.Forms and now since MAUI Preview 11, we've been building our new mobile/desktop product with it, and we'll release it soon.
The part where I was a web developer was honestly awful. Web frontend isn't even close to what any of those mentioned above are right now. Layouting stuff on the web is a nightmare, a little less now that grid is coming along, but still lightyears away from what you have in WPF/XF/MAUI... and then there's decoupling UI code from your business logics for testability. With Angular/React/Vue (Vue suted me most, but it's still meh) it's halfway there but still meh.
On the .Net stack, you have battletested frameworks and libraries that have been around for ages, on both, hobbyist apps to full blown enterprise solutions. At some point I was working on a desktop app that would run on a 5*6 monitor array (highway control room software)... 30 windows open in parallel from one app, everything in sync, everything just working 24/7.
And now, we'll cover Android/iOS and Windows desktop, with one codebase, and it's not just a simple CRUD app. We're connecting with RFID readers, using cameras, geo service etc... I can't imagine pulling this off, in the timeframe we did, and the amount of devs working on it, with any other stack.
Yes, there's no Linux support, but the way MAUI is laid out, it shouldn't be too hard to get that going. Just look at who and how contributed the Tizen backend. I'm sure the folks at MS will welcome you with open arms if you want to contribute some effort into making Linux happen.
> Web frontend isn't even close to what any of those mentioned above are right now. Layouting stuff on the web is a nightmare.
One with more experience with web dev can easily submit the exact opposite comment - web layout and tooling are light years ahead of whatever most recent .NET endeavor.
The web is also already cross-platform, where every platform looks and feels native to itself. This announcement doesn't show off a single native macOS or iOS component. Seeing it's inspired/supported by Xamarin, APIs for look & feel are minimal unless you opt for a platform-specific implementation anyway (e.g., the "common" animations API is a fraction of what one requires for a good experience on iOS).
I'm sure MAUI will be famous in enterprise apps where the latest productivity tool needs to be put together quickly and inflicted on employees for years to come (cough* Teams, Office...).
Until dog fooding happens, it's a hard pass. Wrote teams on electron / reactive native? Undo that and do it using MAUI. Prove to your developers it's a good stack to sink your time into.
> But but... it was written years ago when MAUI wasn't a thing...
Well it is now and you have infinity money so just do it. We need high profile application to be MAUIs face.
I love many things about Microsoft & .NET. Most, even.
Their UI frameworks are not among these things. I don't know that they could ever be trusted again with something like this.
We do use Blazor right now, but I've already got us sliding back into a bare-ass vanilla JS solution that only uses the most minimalistic of AspNetCore APIs. I.e. connect websocket & run my own protocol on top type of deal. Blazor showed me the way (push deltas and events over websocket), but I don't like the lock-in to anything Microsoft+UI.
The open web is a much more trustworthy path. Nothing else comes close on a historical basis.
Yeah, I am with you and do not trust the longevity of any MS-related UI technology. History seems to indicate that it will either be outright killed or will die a slow death as they jump on the next shiny thing.
I love ASP.NET Core but this attitude sadly seems to have infected it as well. There's still a lot of room for improvement in MVC and Razor Pages, but these seem to be in all but maintenance mode as focus has shifted over to Blazor and Minimal APIs.
It's nice to see this project coming to fruition. I just find it sad Gnome/KDE/Linux are not supported. Still there's always the possibility of doing an Electron-like app using Blazor for Linux apps.
The most annoying part to me is that apparently some version of the framework support Tizen, which is just a weird version of Linux running plain old Wayland and Pulse.
I'll have to skip MAUI again because of its lack of Linux support. I guess Microsoft doesn't want the Linux plebs to use their ecosystem.
It's 2022 and Microsoft is doing yet another UI framework. I wonder how many months it will be supported before it is dropped and a completely different UI framework is promoted instead? But hey don't worry! Rewrite all your important business applications in this new framework! It will be awesome! And in a few months time when it is dropped, rewriting everything again in the next new UI framework because this time it will be the one to last more than a year! Really! Surely! Trust us!
.NET is known for its homogeneity and massive standard library that seems to be a black hole where eventually all good implementation of popular libraries end up in.
With one exception: UI frameworks. For whatever reason, UI frameworks have bloody and complicated history starting with early versions of .NET Framework and ending with the latest upcoming .NET 7.
Let's hope, fingers crossed, this time is different :D
[+] [-] g0gzs|3 years ago|reply
I was using the following: Silverlight -> WPF -> Windows Phone -> WPF -> Angular/webdev -> Xamarin.Forms and now since MAUI Preview 11, we've been building our new mobile/desktop product with it, and we'll release it soon.
The part where I was a web developer was honestly awful. Web frontend isn't even close to what any of those mentioned above are right now. Layouting stuff on the web is a nightmare, a little less now that grid is coming along, but still lightyears away from what you have in WPF/XF/MAUI... and then there's decoupling UI code from your business logics for testability. With Angular/React/Vue (Vue suted me most, but it's still meh) it's halfway there but still meh.
On the .Net stack, you have battletested frameworks and libraries that have been around for ages, on both, hobbyist apps to full blown enterprise solutions. At some point I was working on a desktop app that would run on a 5*6 monitor array (highway control room software)... 30 windows open in parallel from one app, everything in sync, everything just working 24/7. And now, we'll cover Android/iOS and Windows desktop, with one codebase, and it's not just a simple CRUD app. We're connecting with RFID readers, using cameras, geo service etc... I can't imagine pulling this off, in the timeframe we did, and the amount of devs working on it, with any other stack.
Yes, there's no Linux support, but the way MAUI is laid out, it shouldn't be too hard to get that going. Just look at who and how contributed the Tizen backend. I'm sure the folks at MS will welcome you with open arms if you want to contribute some effort into making Linux happen.
[+] [-] isodev|3 years ago|reply
One with more experience with web dev can easily submit the exact opposite comment - web layout and tooling are light years ahead of whatever most recent .NET endeavor.
The web is also already cross-platform, where every platform looks and feels native to itself. This announcement doesn't show off a single native macOS or iOS component. Seeing it's inspired/supported by Xamarin, APIs for look & feel are minimal unless you opt for a platform-specific implementation anyway (e.g., the "common" animations API is a fraction of what one requires for a good experience on iOS).
I'm sure MAUI will be famous in enterprise apps where the latest productivity tool needs to be put together quickly and inflicted on employees for years to come (cough* Teams, Office...).
[+] [-] unknown|3 years ago|reply
[deleted]
[+] [-] metaltyphoon|3 years ago|reply
> But but... it was written years ago when MAUI wasn't a thing...
Well it is now and you have infinity money so just do it. We need high profile application to be MAUIs face.
[+] [-] jnash|3 years ago|reply
[+] [-] hbcondo714|3 years ago|reply
I'll wait until this at least.
[+] [-] psd1|3 years ago|reply
[+] [-] bob1029|3 years ago|reply
Their UI frameworks are not among these things. I don't know that they could ever be trusted again with something like this.
We do use Blazor right now, but I've already got us sliding back into a bare-ass vanilla JS solution that only uses the most minimalistic of AspNetCore APIs. I.e. connect websocket & run my own protocol on top type of deal. Blazor showed me the way (push deltas and events over websocket), but I don't like the lock-in to anything Microsoft+UI.
The open web is a much more trustworthy path. Nothing else comes close on a historical basis.
[+] [-] jerriep|3 years ago|reply
I love ASP.NET Core but this attitude sadly seems to have infected it as well. There's still a lot of room for improvement in MVC and Razor Pages, but these seem to be in all but maintenance mode as focus has shifted over to Blazor and Minimal APIs.
[+] [-] tumetab1|3 years ago|reply
[+] [-] WorldMaker|3 years ago|reply
[+] [-] banashark|3 years ago|reply
Specifically I made a small application with F# and the FuncUI library https://github.com/fsprojects/Avalonia.FuncUI
So far the most complex real-world application I've seen is Lunacy: https://icons8.com/lunacy
It's nice to have something like this out there. It definitely eased my apprehension of using the platform on the grounds of it being immature.
I've a decent amount of experience with Xamarin (Native and Forms), and so far I've had 1/100th of the build issues with Avalonia.
I am excited to try out MAUI however and see how things have evolved!
[+] [-] jeroenhd|3 years ago|reply
I'll have to skip MAUI again because of its lack of Linux support. I guess Microsoft doesn't want the Linux plebs to use their ecosystem.
[+] [-] zamalek|3 years ago|reply
[+] [-] jnash|3 years ago|reply
[+] [-] isodev|3 years ago|reply
[+] [-] chizhik-pyzhik|3 years ago|reply
[+] [-] neonsunset|3 years ago|reply
.NET is known for its homogeneity and massive standard library that seems to be a black hole where eventually all good implementation of popular libraries end up in.
With one exception: UI frameworks. For whatever reason, UI frameworks have bloody and complicated history starting with early versions of .NET Framework and ending with the latest upcoming .NET 7. Let's hope, fingers crossed, this time is different :D