Ask HN: What to use for desktop apps for Windows or Mac?
Today, when I tried to build an extremely simple UI application using Avalonia with F#, I needed many hours of help from ChatGPT and Perplexity, and even then, I didn't achieve anything remarkable. Can anyone explain what has happened that makes building a simple UI 20 times harder after 20 years???
Maybe using F# for UI is a terrible mistake, and there are more pleasant technologies for building UI easily nowadays? Can someone advise me on what's used today for quick UI development? Perhaps Python with Tkinter? Swift? Dart with Flutter? Or is it simply no longer as easy as it used to be, and it's bound to be HARDCORE difficult now?
BTW: Please, I beg you, don't tell me to try MAUI - I've already read enough to know it's not worth touching, even with a ten-foot pole
16 comments
[ 4.2 ms ] story [ 251 ms ] threadNot a day goes by without a new ui framework from microsoft.
They reiterated so many times that you might expect the new latest thing to be perfect off the shelf, but it’s already third version. Feels like microsoft simply uses a firing squad on a windows ui team every time and burns the offices. Hard to come up with more reasonable explanation.
Unfortunately web based guis are the only cross platform standard all major companies agree to support. You can have a locally running website and a pretty decent user experience these days. Not as easy as drag-n-drop win forms but it frees you from big tech company control over the ui toolkit
Also, you can always use C# in a regular way or with one of Avalonia’s declarative UI extensions which are similar to FuncUI / Elmish / SwiftUI / etc. These tend to have fewer sharp (heh) edges.
I was thinking of just using Docker containers and calling it a day lol
It is lightning fast (in execution and compilation) and compiles to fairly small executables.
For instance I developed an "image sorter" (really an everything sorter) that I regularly use on desktop and a tablet. I run it on my desktop machine and use Tailscale to use it on the go. The other day I thought I might try it on the Meta Quest 3 and it "just worked"; it could use a little enlargement of UI targets in accordance with Fitt's law but it works great now and with a little customization but being surrounded with three huge windows already feels halfway to "minority report"
In a world where web-based apps are effortlessly portable to platforms I wasn't even thinking about, it's hard to justify any investment in an application that doesn't have those wings.
Also since 2010 or so CSS and HTML have evolved with application development in mind whereas desktop frameworks aren't really moving forwards. Microsoft seems to be churning them just to churn.
[1] https://get-notes.com/
[2] https://www.get-vox.com/
[3] https://notes-foss.com/
Complexity won. It’s easier to sell for $^6, secures jobs, creates a good barrier for regular people like the one you attempted to be. Remember all those guys who built things with delphi? Now they are high-paying customers because things bring money, but they can’t build them anymore. And ui teams happily spend their money discussing cascading, hooks, reconciliation and other idiocy unrelated to any real thing.