Live data from Hacker News

Ask HN: Are you using .NET to write cross-platform desktop or mobile apps?

news.ycombinator.com

31–40 of 89 posts

Re: Ask HN: Are you using .NET to write cross-platform desktop or mobile apps?

#32
Microsoft stopped development (more or less) around May 2020 to focus on MAUI, which was released in November 2020.

Actually it wasn’t - MAUI wasn’t released until May 2022, tooling was just released July 2022 for Windows, and VS for Mac with proper support has yet to be released. If you’re used to command line that may not seem like a big deal, but the whole point of the .NET ecosystem is that you have a rich set of tools that saves time and enhances developer productivity.

So as for why Xamarin wasn’t discussed for the last few years, it’s probably because Microsoft put it in a coma for 2 years.

I was hoping MAUI would fix a lot of the quality issues, but like any big rewrite, it seems to have traded one set of problems for another. The developer experience is better, but there are lots of bugs in basic functionality that make it difficult to use. https://github.com/dotnet/maui/labels/t%2Fbug I don’t think Microsoft has enough engineers assigned to this project to make it successful.

If you don’t care about the quality of your app (e.g. your a corporate form developer and don’t care about your users) MAUI is a great choice. But if you don’t care about the UX, web technologies are almost certainly a better choice.

As for native desktop, you’d have to be really stupid to choose WinUI or UWP, unless the point of the app is to be a WinUI or UWP demo. WPF is fine, but then why on earth would you choose that over electron or WebView2, which solves some of the resource problems from pure electron.

All of this is coming from someone whose entire career is built on .NET client technology… I was really hoping (and still hope) for a turnaround. I bet big on Xamarin being the right approach; I still think it is, but Microsoft really dropped the ball since the acquisition.

Re: Ask HN: Are you using .NET to write cross-platform desktop or mobile apps?

#33
post #29

You might want to consider how much Microsoft uses it in their own products before choosing to use it. This article describes the situation pretty well: "not even Microsoft, literally the people who own Xamarin, use it in any of their big products like Teams, Outlook, and the list goes on. Instead, they reach for native development or Electron. So we can just tie a bow in it and have a minute's silence for another en…

Those products predate the purchase of Xamarin and are web products in their latest form. It's not that surprising or telling.

None of those products, as apps, predate Xamarin. Outlook for Mobile was an acquisition; Xamarin existed at the time.

Teams Mobile apps are native and built while Xamarin existed; not using Xamarin.

Re: Ask HN: Are you using .NET to write cross-platform desktop or mobile apps?

#34
I recently spoke with the tech lead of a team that is all in on .NET for web development, as well as using Xamarin.Forms to develop cross-platform mobile apps. While this achieved their goals, the lead felt that the complexity of dealing with platform-specific edge cases slowed them down enough that developing using native tooling would have taken the same amount of time. He would not choose Xamarin again if faced with the same choice.

Re: Ask HN: Are you using .NET to write cross-platform desktop or mobile apps?

#35
post #33
post #29

Earlier quoted context omitted.

Those products predate the purchase of Xamarin and are web products in their latest form. It's not that surprising or telling.

None of those products, as apps, predate Xamarin. Outlook for Mobile was an acquisition; Xamarin existed at the time. Teams Mobile apps are native and built while Xamarin existed; not using Xamarin.

Xamarin existing and MS touching it are different things, though. It's only been "official" for a short time and only after Microsoft acquired it.

Rewriting the history as if Xamarin was an option from the beginning is disingenuous.

Re: Ask HN: Are you using .NET to write cross-platform desktop or mobile apps?

#36
post #17

Earlier quoted context omitted.

You can still build a simple webview wrapper and put it to the App Store.

Not really. See 4.2. https://developer.apple.com/app-store/review/guidelines/#min...

Nothing to see.

Webview apps are still being accepted by the App Store. They don't care what tech you use to build your app, as long as it provides functionality.

Re: Ask HN: Are you using .NET to write cross-platform desktop or mobile apps?

#37
For cross platform framework. I would recommend Avalonia https://avaloniaui.net/ It has the flexibility and cleaner version of WPF but also lets you build it all in code if you choose like Flutter. They have a support business to support the project. So you know it will be well supported for years to come. The team is very responsive to the community also.

If I was Microsoft I would just fork Flutter and add C# support and call it a day. Flutter is really flexible for mobile and desktop and has a ton of community support with libraries.

Re: Ask HN: Are you using .NET to write cross-platform desktop or mobile apps?

#38
post #16

Earlier quoted context omitted.

As a user with a finite amount of memory on my computer, I also regret them choosing Electron.

They should hire better engineers, perhaps those with more experience than just leet code. The apps i built using electron for some clients have none of the issues teams has. I mean come on, teams is a basic chat app, how difficult is it to optimise it?

Yes, it's a "basic" chat app. Like google is a "basic" search engine, how hard can it be to make something like that? Just make it go search?

Re: Ask HN: Are you using .NET to write cross-platform desktop or mobile apps?

#39
post #31
post #26

MAUI is less cross-platform friendly than you might think. I'm using Avalonia right now, which works well.

How so? Buggy features on certain platforms or something else?

It doesn't run on Linux. Not sure how they can call it "cross platform" if it doesn't run on Linux. Maybe across Microsoft's platform.

Re: Ask HN: Are you using .NET to write cross-platform desktop or mobile apps?

#40
post #38

Earlier quoted context omitted.

They should hire better engineers, perhaps those with more experience than just leet code. The apps i built using electron for some clients have none of the issues teams has. I mean come on, teams is a basic chat app, how difficult is it to optimise it?

Yes, it's a "basic" chat app. Like google is a "basic" search engine, how hard can it be to make something like that? Just make it go search?

Comparing teams to google is a bit meh. There’s nothing special about that app other than how crap it is. A poorly written tool made by inexperienced devs.
Post reply on HN