Sad state of cross platform GUI frameworks
blog.royalsloth.eu
blog.royalsloth.eu
* he reviewed the QtWidget parts, and the designer for such. This is by now 15 years old tech that has not seen any new development for years. He didn't look at the QtQuick and QtComponents parts which people use now.
* He writes: «You can always buy a commercial license that gives you the rights to statically link your application but it comes with a hefty price.».
This seems an emotional conclusion. First, most people don't actually require to statically link their apps. So this is only required for a small subset of users. Shipping your app on mobile, for instance, can be done with the open source version just fine. I think it helps to actually ask the sales team a price instead of concluding it has a heafty price. Compared to visual studio it actually is cheaper, last I checked...
* «Chart components are missing.»
Actually, there are several. Including 3rd party ones.
* he first states that QML allows one to use Javascript as a con, and then continues in his next line saying it is not nice to have to use C++. I think thats unfair. You can write your entire app in Javascript or C++. You can mix them. Your choice. This are add-ons. Like NPM can be seen as a bunch of add-ons to Node. Complaining about the ecosystem being diverse doesn't really sound like a negative to me...
I'm keeping my eye on Flutter and Avalonia as well but so far Godot seems the most mature on the desktop.
FWIW here's one more relevant option that popped up earlier today: https://news.ycombinator.com/item?id=22766639 It looks pretty Flutter-like.
All of that said - and I've said this elsewhere before - JavaScript is not the problem with Electron. I'm so weary of hearing this. Even the web is not really the problem with Electron. Electron's problem is that there's no way to share Chromium instances across installations or processes. That's it.
Without a specific example that's hard to argue against, but I would wager it has more to do with images, unnecessarily complex DOM, and possibly just poor engineering, as opposed to JavaScript itself.
> that has no regards for how a computer actually works
You mean like Python? And Lisp? If you're taking issue with the very concept of high-level languages then state it as such, and good luck making a case for that.
that's not possible. For one thing, you need https.
If you ran local code and added some plugins with permissions, it would be possible, maybe.
Also, I'd never heard of the limit of LGPL on static-linking. I have a few pure Python projects under this but don't think the rule applies.
The biggest issues I've faced:
* On a headless server you can't load any GUI components (mostly my mistakes).
* Android is still effectively Java7. I blame Oracle and Google for this.
I've even recently moved from Java 7 to Java 11 with very little issue.
I'd be interested in people's thoughts about why "new is better"? My own take: you can't sell tools, tutorials, books, conference tickets, etc for something that just works and is well documented with great IDE support.
I would say javafx produces better eye candy, and the programming model is much better in terms of properties and bindings (not that one can't reimplement a similar framework in swing, but in javafx it is just there).
I feel javafx is still lacking in many areas:
- focus handling is still buggy: one can have multiple nodes having focus and accepting keyboard input
- WebView behavior differs a lot between 8/9/10/11
- mouse subsystem has critical issues on linux
I wish javafx got more support from Oracle, but we know that neither Sun nor Oracle viewed the desktop as high priority. I don't think the situation will change, considering the fact that the majority of development switched to browser-based js.
- Delphi is great if you have a Windows machine and is still quite popular in Europe if you _really_ want to make a career out of it.
- Xojo is extremely well priced. I cannot say much about it but a friend that is a former Lazarus programmer swears by it.
- LispWorks CAPI is hands-down the best I've tried, but requires individual licenses for each platform and if you want 64bit you'll be breaking the bank.
> Pascal is showing its age and feels a bit wonky in comparison to C like languages.
What makes Pascal show its age? Proper records? Generics? :)
I'm not sure swearing evokes much confidence :-P
I've only tried the demo version of Xojo a couple of times but i found its design to be very macOS oriented. The GUI does work in Windows and Linux (and actually i've tried it on both of these systems instead of macOS) but pretty much everything about the layout and design feels macOS-y.
This is a very high quality post. It shows you really worked on learning the frameworks, as opposed to writing a superficial post after 1 hour of playing around with a framework.
That captures my own impression accurately
but, yeah, its a website they use to sell stuff. Advertisements tend to work better if they don't get stale.
On the other hand, the doc.* website (its on its own sub-domain) is almost boring and just entirely functional. And that is what techies actually use.