Live data from Hacker News

.NET MAUI: .NET Multi-Platform App UI

github.com

101–110 of 260 posts

Re: .NET MAUI: .NET Multi-Platform App UI

#101
post #37

The amount of energy Microsoft is pouring into these front-end efforts is pretty incredible. A more recent development that has me very excited is Blazor Desktop: https://medium.com/young-coder/blazor-desktop-the-electron-f... > This leads to the second difference — in a Blazor Desktop app hosted in WebWindow, there’s no built-in web server. Instead, it’s pure .NET all the way down. And while we haven’t seen exactly…

> I have been able to implement things in 4 hours that would easily have taken 4 weeks if I had to argue with other developers about the shape of a JSON blob on the wire. I can’t comment on your specific circumstances because I don’t know the details, but this reads like someone who is drinking the blazer coolaid. It’s a technology like any other, with specific trade offs. If you have a front end team who lacks the b…

The fact that you have to interface between different teams/languages is often a big part of the slowdown.

The productivity improvements are real. Not having to design and expose an API for the frontend and instead just reuse the same classes and services is a massive shortcut. Running Blazor on the server is even easier because there's no serialization at all and you can directly call database queries in response to UI events.

I suggest watching some of the Blazor presentations to see just how much complexity can be built in minutes compared to more traditional frontend frameworks: https://www.youtube.com/watch?v=CEjqhTGrqDY

Re: .NET MAUI: .NET Multi-Platform App UI

#102
post #68

Earlier quoted context omitted.

This. And I'll feel like Microsoft intends a UI framework to have legs when it supports more languages than just C#. Traumatized VB .NET dev over here, who has mostly given up hope, lol. I just want to write VB and it work on a phone or a Linux box.

Is it realistic to expect MS to support a language they purposely built a replacement for 18 years ago? What's stopped you "upgrading" to C# in 18 years?

When they go out of their way to say VB is a first class component and repeatadly say over many years that c# is not a replacement for VB then yes, I do think it's realistic to expect them to support it.

That said, despite what MS has said the writing has been on the wall for VB.net since day one and it was only ever a transitional path for VB classic. The companies that never made the transition are the ones you generally want to avoid, the types of companies still using VB are generally using a lot of other dead end tech like web forms or TFS.

Some design decisions in VB stood the test of time remarkably well, dim/var to declare a variable and type declaration on the right now seem to be features of most new languages.

Re: .NET MAUI: .NET Multi-Platform App UI

#103
post #38

I don’t get why MSFT keep making the same thing over and over again. Who really cares about these abstraction layers. They produce junk apps by people who rarely care to keep up with them and go obsolete quickly.

On the bright side, at least it's not Electron...

That said, a decade ago I was not happy about .NET apps, but now they are already better than the norm --- besides the noticeably startup time, "only 2-3x more" memory consumption than the equivalent native app, and occasional pauses in the UI (GC?) they feel far more native and efficient than anything web-based.

I'm a long-time Win32 programmer, so everything else feels slow and bloated.

Re: .NET MAUI: .NET Multi-Platform App UI

#105

> In addition, we are enabling developers to write fluent C# UI and implement the increasingly popular Model-View-Update (MVU) pattern. MVU promotes a one-way flow of data and state management, as well as a code-first development experience that rapidly updates the UI by applying only the changes necessary. I am very interested in this. Last year I developed a .Net Win UI/UWP app and while I enjoyed the rich library…

You can try to use Comet [1] today if you don't want to wait for MAUI [1] - https://github.com/dotnet/Comet

C# with MAUI went full OOP

Swift with SwiftUI embraced the data oriented way with structs only

They both target resource constrained devices, wich will perform better?

I can already tell, apps with MAUI will be laggy on most android phones, probably less on iPhones since the hardware/OS is just better, just like with Xamarin today

Re: .NET MAUI: .NET Multi-Platform App UI

#106
post #37

The amount of energy Microsoft is pouring into these front-end efforts is pretty incredible. A more recent development that has me very excited is Blazor Desktop: https://medium.com/young-coder/blazor-desktop-the-electron-f... > This leads to the second difference — in a Blazor Desktop app hosted in WebWindow, there’s no built-in web server. Instead, it’s pure .NET all the way down. And while we haven’t seen exactly…

> I have been able to implement things in 4 hours that would easily have taken 4 weeks if I had to argue with other developers about the shape of a JSON blob on the wire. I can’t comment on your specific circumstances because I don’t know the details, but this reads like someone who is drinking the blazer coolaid. It’s a technology like any other, with specific trade offs. If you have a front end team who lacks the b…

The entire point is to avoid javascript as much as possible and to force the few edge cases into an interop shim.

We have a very complex Blazor webapp and the JS interop shim is fewer than 200 lines of code. This is 100% of the custom javascript for the entire application. Front and back. We do things like GetClientRect, Get/Set/Delete cookies, keyboard/mouse event subscription, etc.

There is little-to-no context switching when operating with one of these codebases. The notion of "front-end" and "back-end" is completely meaningless here. The "back-end" is literally an F12 keystroke away from the "front-end".

> and very difficult to debug production issues with in my experience

What sort of production issues have you been encountering that were difficult to track down? I rather enjoy being able to set breakpoints in my view templates to confirm the state of affairs in local testing.

Re: .NET MAUI: .NET Multi-Platform App UI

#107
post #91
post #44

Earlier quoted context omitted.

Very early days and not quite "Flutter in C#" but support for C# is on the roadmap https://hydro-sdk.io/

https://github.com/hydro-sdk/hydro-sdk > "...deliver updates directly to users over the air and out of band." Whoa. You have my attention.

Over the air updates are currently a "rest of the owl" situation for users.

First party support for hosting and over the air updates is coming before the end of the year.

Re: .NET MAUI: .NET Multi-Platform App UI

#108

Earlier quoted context omitted.

> I have been able to implement things in 4 hours that would easily have taken 4 weeks if I had to argue with other developers about the shape of a JSON blob on the wire. I can’t comment on your specific circumstances because I don’t know the details, but this reads like someone who is drinking the blazer coolaid. It’s a technology like any other, with specific trade offs. If you have a front end team who lacks the b…

The entire point is to avoid javascript as much as possible and to force the few edge cases into an interop shim. We have a very complex Blazor webapp and the JS interop shim is fewer than 200 lines of code. This is 100% of the custom javascript for the entire application. Front and back. We do things like GetClientRect, Get/Set/Delete cookies, keyboard/mouse event subscription, etc. There is little-to-no context swi…

> The notion of "front-end" and "back-end" is completely meaningless here.

So to start with, a disclaimer: I carry some baggage here, from working occasionally on 10+ year old GWT app that's developed into quite a tangled mess.

Having said that -- this sort of thing doesn't seem like an obvious win to me. The notion of "front end" and "back end" represents a real-world distinction that you want to pay attention to. Making it too hard to see, or too easy to communicate across, brings some risk of losing track of which is which, and putting logic that belongs on the server into the client or vice versa. Or having the two communicate with each other much too often, which may not cause any noticeable problems during development, but, in production, can cripple the site for users with higher-latency Internet connections.

Re: .NET MAUI: .NET Multi-Platform App UI

#109

The real "Write once, run anywhere" technology is the open web platform. Now with SIMD, WebGPU, Houdini, and more. Container queries built-in for responsive layouts. Run on touchscreens, virtual reality, desktop and more. I expect HTML/CSS/JS performance optimization to be valued as a skill more. It is arguably great cross-platform technology (though lacking native widgets), but it has a lot of performance footguns,…

If the "open web platform" stops requiring an entire Chromium engine in the app, I would agree. Or if Google wasn't the sole effective standards body for it.

I wish that each web standards would have official implementation subsets.

Re: .NET MAUI: .NET Multi-Platform App UI

#110
Basically MAUI is the next phase of Xamarin/UWP as that was not fully ported on the UI side in .NET 5 which was the merging of .NET Framework 4.x and .NET Core 3.1.

.NET 6 UI is essentially being replaced with this for .NET 6.

I use Xamarin/UWP quite a bit for apps that also have to target Surface and it is great, the ability to use Xamarin.Forms and/or use CustomRenderers per platform is nice. This should follow similar lines and be ready for .NET 6 which is really the true final step in merging the .NET branches and fully making it cross-platform to the app level.

Microsoft has truly been on the cross-platform aim for a long time now which makes developers happy, they do want to push users to use Azure which is really the new OS to them, but are open about platforms which is nice.

This will be a great way to get apps across all platforms and another iteration of Xamarin which is excellent for that.

Post reply on HN