Live data from Hacker News

Clojure Desktop UI Framework

github.com

111–120 of 139 posts

Re: Clojure Desktop UI Framework

#111

If only Clojure wasn't tied to the fucking JVM

may I ask what this sentiment comes from?

I sincerely want to know what I am missing, because the fact that Clojure is hosted on the JVM (mainly) seems like a plus to me.

I don't much like the build tools in the jvm environment such as maven or gradle, and the error messages could be better for sure. Is there more ugliness that I should look into?

Re: Clojure Desktop UI Framework

#112
post #75

Earlier quoted context omitted.

> And Win10 on my wife's machine is a salad, reminding me of Linux desktop experience from 1998. This is pretty funny, because if you just use Gnome apps + desktop environment, you have a consistent experience. But if you only use Microsoft/Windows GUIs, panels and applications, it nowhere near as consistent. So even the Gnome team can build better UI and UX than Windows themselves can, pretty telling.

> even the Gnome team People like to hate on them, but their design is actually really good, innovative and the applications running on GTK are incredibly fast and stable.

> People like to hate on them, but their design is actually really good

I'm not complaining/hating, Gnome is my desktop environment of choice since some time ago.

Was more a nod to how awful Microsoft seems to (still) be at UI and UX.

Re: Clojure Desktop UI Framework

#113
post #109
post #94

Earlier quoted context omitted.

Having a bespoke widget tool kit with themeing etc uses more memory and cycles instead of just being a simple app with the native desktop widgets.

VS Code vs XCode situation is an exact counter example of this. Non-optimized native apps could be that much slower than well optimized Electron apps.

That's not an apt comparison because it could be the non-UI portion of that. VS Code would be even faster if it was a native app.

Re: Clojure Desktop UI Framework

#114
post #10

I'm sure Clojure is a great language for some tasks... But, looking at the examples (picked the Wordle one since I know that game): https://github.com/HumbleUI/HumbleUI/blob/main/dev/examples/... I find it extremely hard to read. Even small snippets, say line 56 to 74 which define this "color", "merge-colors" and "colors"... then the "field" one lines 76 to 117 is even harder. is it more natural read for people famil…

I've tried to learn Clojure a few times and just bounced right off every time. I found it impossible to read and frustrating and tedious to write. Everyone else who tries it seems to fall in love, but I really don't get it.

Re: Clojure Desktop UI Framework

#115
post #64

Earlier quoted context omitted.

At this point it feels like this argument is dead an buried. So many non-native apps on every platform, most platforms even have multiple official GUI toolkits/widget styles so even first party apps are inconsistent.

The most consistently-looking desktop I have runs under Linux. With a few settings and a right theme, all GTK2, GTK3, Qt, and Java apps look and feel pretty much the same, in a pleasant way. MacOS is a close second, with a few native apps that can't decide exactly what a checkbox or a button should look like. And Win10 on my wife's machine is a salad, reminding me of Linux desktop experience from 1998.

I couldn't agree more, and would even say more that Windows is just such a mess. Often even new windows programs look like they are from the days of Windows 98.

Re: Clojure Desktop UI Framework

#116
post #72

Clojure and Flatlaf [1] tick all the boxes for me. If I want declarative-ish UI, I can always throw in Seesaw [2]. Everything else I find cumbersome, pulls tons of unnecessary dependencies and (usually) ends up abandoned in a year or two. With Swing, I know it is well-documented and will work for the next 30 years. But YMMV and I'm hoping that HumbleUI could be an exception. [1] https://www.formdev.com/flatlaf/ [2] h…

Having worked with Swing recently, I worry that it will not work well on the near-distant future, because it feels frozen in time at about 2005. There are a lot of assumptions baked in that aren't holding up today. For example, high density and multi monitor aren't well supported. There's a bunch of stuff hard-coded in the JDK that no longer makes sense and you have to hack around.

I haven't worked with FX or Swing lately but I could have sworn they delivered hidpi support. Maybe in this JEP? https://openjdk.org/jeps/263

Re: Clojure Desktop UI Framework

#117
post #95
post #80

Earlier quoted context omitted.

It’s a tradeoff. You either make your app native but only for one platform, or you make it look “universal” and run on all three.

That’s not accurate, there are cross-platform toolkits that achieve at least a close-to-native look&feel. This is very different from giving up on it entirely and going web-style UI.

Do you mean the state of the art java AWT and/or Eclipse toolkit?

Re: Clojure Desktop UI Framework

#118
post #109

Earlier quoted context omitted.

VS Code vs XCode situation is an exact counter example of this. Non-optimized native apps could be that much slower than well optimized Electron apps.

That's not an apt comparison because it could be the non-UI portion of that. VS Code would be even faster if it was a native app.

Not really. VS Code does have some performance optimizations where even the web browser optimization wouldn't suffice, for example it implements its own scroll bar instead of using the web native scroll bar. But for the most part the browser render optimizations is the crucial factor. After years of optimization you can't easily beat a web browser.

Native app is just another set of layers of abstractions. As a comparison, SwiftUI doesn't render 500 items quickly enough (https://www.reddit.com/r/swift/comments/18dlgv0/improving_pe...), which is a tiny number for web.

Re: Clojure Desktop UI Framework

#119

If only Clojure wasn't tied to the fucking JVM

may I ask what this sentiment comes from? I sincerely want to know what I am missing, because the fact that Clojure is hosted on the JVM (mainly) seems like a plus to me. I don't much like the build tools in the jvm environment such as maven or gradle, and the error messages could be better for sure. Is there more ugliness that I should look into?

What you said, plus applications use a ton of RAM and are a pain in the ass to distribute.

Re: Clojure Desktop UI Framework

#120
post #10

I'm sure Clojure is a great language for some tasks... But, looking at the examples (picked the Wordle one since I know that game): https://github.com/HumbleUI/HumbleUI/blob/main/dev/examples/... I find it extremely hard to read. Even small snippets, say line 56 to 74 which define this "color", "merge-colors" and "colors"... then the "field" one lines 76 to 117 is even harder. is it more natural read for people famil…

> I find it extremely hard to read. I avoided Clojure for nearly 15 years because I thought so too. Turned out I spoke English and couldn't read Russian. But that didn't mean Russian was unreadable— I just didn't know how. It had nothing to do with whether or not it was "readable" or not, it was easy to read (and understand) once I learned how. After about two weeks, I found reading Clojure to be just as easy as any…

Can you expand on structured code editing?
Post reply on HN