Live data from Hacker News

.NET MAUI is coming to Linux and the browser

avaloniaui.net

261–270 of 276 posts

Re: .NET MAUI is coming to Linux and the browser

#261

Earlier quoted context omitted.

> Rust backend, WebView front end. I don't know much about it but it seems like a weird combination. If you want high performance and low memory usage, you don't want HTML, if you want fast code writing, you don't want Rust.

Use the slower but easier to write languages for front end is the norm for complex apps. Many apps that passed the trial of time are like that. Blender: frontend Python, backend C++. Houdini: frontend Python(PyQt), backend C(presumably) Sim City: frontend JavaScript, backend C++ The reason is very simple: frontend is more error tolerant, but less resistant to the product designer's whims (or the users' desire to cust…

> Blender: frontend Python, backend C++.

blender's frontend is pretty much exclusively C++? https://github.com/blender/blender/tree/main/source/blender/...

> Houdini: frontend Python(PyQt),

I would be infinitely surprised if Houdini's frontend wasn't also a majority C++. Likewise consider large apps such as Ardour, Krita, etc.

Re: .NET MAUI is coming to Linux and the browser

#262

Earlier quoted context omitted.

Never build a frontend on a .NET technology. Period. They always end up unsupported in the end. Just use standard web technologies and thank yourself later. I've been a .NET dev for a decade now and that's what I've learnt.

As wrong as it feels to have to use Electron for a desktop app, it really is the safest approach for most applications. Qt also seems to be a good option, though there are licensing considerations for commercial applications. I’m excited for various upcoming Rust options as well, but right now Electron is the battle tested option. I am curious though about Avalonia. I’ve heard good things, but it’s definitely a small…

>As wrong as it feels to have to use Electron for a desktop app, it really is the safest approach for most applications.

> Qt also seems to be a good option, though there are licensing considerations for commercial applications.

you need to respect the LGPL with Qt. You also need to with Electron which uses Chromium which is LGPL.

Re: .NET MAUI is coming to Linux and the browser

#263
I never understood these types of things, what niche are they going after?

This feels like it could be a competitor to QT, but without a real-time operating system like QNX, what's the point?

React Native won out over Fluter, Java Applets lost to HTML5 / JS, Framer is much better than Wordpress.

Time and time again, clever simulations on top of the native world are never worth it.

Re: .NET MAUI is coming to Linux and the browser

#264
post #6

This is interesting for sure. Kudos for bringing this capability to the web! One issue the demos reveal is, it doesn't _feel_ like the web. That is, I can't hit Ctrl+F to find text on a page. I can't select text with my cursor. I can't copy the address of a hyperlink. On my phone, I can't hard press on an image and share it to others. Screen readers can't handle it. I can't press a shortcut key to make everything lar…

> I can't hit Ctrl+F to find text on a page. I can't select text with my cursor. I can't copy the address of a hyperlink. I was intrigued before I read this. This stuff is a non-starter for me.

Can you ctrl-f in an iphone app? Or in vlc? It’s an app, not a document.

Re: .NET MAUI is coming to Linux and the browser

#265

It's a nice idea, but the execution is taking the wrong path in my opinion. By rendering everything to a ` ` they're sacrificing any hope of accessibility and compatibility with browser standards for UX. I would have much preferred a React-Native-style approach, where they render to true HTML instead. Even then, WASM files are too heavy for quick loading times without good internet (and sometimes even with). The proj…

It's not meant to be an HTML renderer. That's for .NET apps. While it's cool they can run in a browser, that's not meant to build websites. Would you complain that Qwasm/Dwasm doesn't follow HTML standards of accessibility?

What else do you build on the web with a UI framework if not a website? If you're making a distinction between websites and webapps, it's equally important for both to be accessible and work as expected with a browser.

Re: .NET MAUI is coming to Linux and the browser

#266

Earlier quoted context omitted.

Go is frankly the polar opposite of C#. Go compiles to a native binary with no runtime dependencies and it relies on simple garbage collection and static linking. C# runs on the .NET runtime which is heavily managed, gives you JIT, reflection, dynamic code generation and so on. Go views concurrency as fire and forget, C# views it as compose and await. Go is extremely explicit while C# is extremely implicit. Now, I un…

.NET can be compiled to native binaries. .NET can be used for embedded development. C# is more expressive and .NET comes with batteries included. Go is more explicit and more verbose. You can pick up Go faster and is easier to reason about Go code when you first encounter a new project but C# feels like it enables you to develop faster and be more productive. For web both are excellent and performant, even if they ha…

Cool I didn't know about it's AOT, but it looks very... well hobbyist. Anyway, "Go is more explicit and more verbose" is a feature, but that's a matter of personal taste.

I worked with C# for a decade, I'll likely never work with it again if I can help it. Not because it's bad, it's better than it's ever been. But because I really dislike the way they include their batteries. It leads to long debugging and refactoring sessions when tired people have written what is not their best work on years worth of thursday afternoons. I think people who like implicit frameworks must have been good enough to work in places that had better quality than the places I've worked.

Re: .NET MAUI is coming to Linux and the browser

#267

Earlier quoted context omitted.

Go is frankly the polar opposite of C#. Go compiles to a native binary with no runtime dependencies and it relies on simple garbage collection and static linking. C# runs on the .NET runtime which is heavily managed, gives you JIT, reflection, dynamic code generation and so on. Go views concurrency as fire and forget, C# views it as compose and await. Go is extremely explicit while C# is extremely implicit. Now, I un…

C# has AOT compilation which creates a single, native binary. This has gotten so much better with .NET 10 and since the introduction of source generators to deal with reflection issues. Also, check out nanoFramework for a .NET runtime that can run on MCUs like the ESP32 [1] [1] https://github.com/nanoframework/Home

Cool, I didn't know this. I see it's been a thing since .NET 8, but it also looks like something that is perhaps mostly meant for hobby projects? Or maybe I'm getting that wrong.

Re: .NET MAUI is coming to Linux and the browser

#269

Earlier quoted context omitted.

It's not meant to be an HTML renderer. That's for .NET apps. While it's cool they can run in a browser, that's not meant to build websites. Would you complain that Qwasm/Dwasm doesn't follow HTML standards of accessibility?

What else do you build on the web with a UI framework if not a website? If you're making a distinction between web sites and web apps , it's equally important for both to be accessible and work as expected with a browser.

vscode?

Re: .NET MAUI is coming to Linux and the browser

#270

Earlier quoted context omitted.

C# has AOT compilation which creates a single, native binary. This has gotten so much better with .NET 10 and since the introduction of source generators to deal with reflection issues. Also, check out nanoFramework for a .NET runtime that can run on MCUs like the ESP32 [1] [1] https://github.com/nanoframework/Home

Cool, I didn't know this. I see it's been a thing since .NET 8, but it also looks like something that is perhaps mostly meant for hobby projects? Or maybe I'm getting that wrong.

Definitely started that way for me. It was cool to see a console app written in C# be compiled straight to native and run. Since then, a lot of work has been done to make AOT viable for more workloads.

I wouldn't use it for an MVC application yet because a lot of features won't work but there are plenty of other areas that are using it now and one of the biggest examples is Avalonia apps compiling to native.

Post reply on HN