Live data from Hacker News

High-Level Is the Goal

bvisness.me

11–20 of 158 posts

Re: High-Level Is the Goal

#11
I think the real conclusion is: someone has to make a native cross-platform desktop UI framework that doesn't suck. (Yeah Qt exists, but it really sucks...) Until then, everyone will default to just using the browser for a desktop app, and the beatings will continue.

Because of this, I'm really looking forward for PanGUI to step up (https://www.pangui.io/), their UI framework is very promising and I would start using it in a heartbeat when the beta actually releases!

Re: High-Level Is the Goal

#12

I think the real conclusion is: someone has to make a native cross-platform desktop UI framework that doesn't suck. (Yeah Qt exists, but it really sucks...) Until then, everyone will default to just using the browser for a desktop app, and the beatings will continue. Because of this, I'm really looking forward for PanGUI to step up ( https://www.pangui.io/ ), their UI framework is very promising and I would start usi…

There was WxWidgets.

Re: High-Level Is the Goal

#13
post #12

I think the real conclusion is: someone has to make a native cross-platform desktop UI framework that doesn't suck. (Yeah Qt exists, but it really sucks...) Until then, everyone will default to just using the browser for a desktop app, and the beatings will continue. Because of this, I'm really looking forward for PanGUI to step up ( https://www.pangui.io/ ), their UI framework is very promising and I would start usi…

There was WxWidgets.

The main consensus in the native space is that Qt is still miles ahead of any other cross-platform desktop framework (including WxWidgets). Doesn't mean that Qt is anywhere good - it's just the least worst option out of all.

I hoped someday Flutter might be mature enough for desktop development, but so far they've focused most of their efforts on mobile and I don't think this will change in the future.

Re: High-Level Is the Goal

#15

I think the real conclusion is: someone has to make a native cross-platform desktop UI framework that doesn't suck. (Yeah Qt exists, but it really sucks...) Until then, everyone will default to just using the browser for a desktop app, and the beatings will continue. Because of this, I'm really looking forward for PanGUI to step up ( https://www.pangui.io/ ), their UI framework is very promising and I would start usi…

What about Flutter?

Re: High-Level Is the Goal

#16

I think the real conclusion is: someone has to make a native cross-platform desktop UI framework that doesn't suck. (Yeah Qt exists, but it really sucks...) Until then, everyone will default to just using the browser for a desktop app, and the beatings will continue. Because of this, I'm really looking forward for PanGUI to step up ( https://www.pangui.io/ ), their UI framework is very promising and I would start usi…

Never heard of PanGUI - glad to see its C#, will have to try it out.

Re: High-Level Is the Goal

#17

While I am totally on board with the idea... the article doesn't really say what to actually do to help? "we at Handmade community" - and no link to that community anywhere blog itself? 2 posts a year, and 2025 posts aren't even on the blog itself (just redirects) Yes, tooling and toolmaking should be promoted - but promotion itself should also be accessible somehow?

Yeah it's a call to action to improve the tooling but it's not the first one I've seen. Tooling really is under focused in many areas.

It would be nice if every language and library had a great working repl and a Jupyter Lab kernel and good mdn-like documentation and w3schools-like tutorials.

Re: High-Level Is the Goal

#19
The Reddit example is about two different design choices. The DOM is a tree of state that needs to stay in sync with your app state. So how to make that happen without turning your code into a mess. The old Reddit had to first construct the DOM and then for every state change, determine what DOM nodes need to change, find them and update them. Knowing what needs to change gets ugly in a lot of apps. The other alternative is to realize that constructing a DOM from any arbitrary state is pretty much the same as constructing it from initial state. But now you don’t have to track what DOM nodes must change on every state change. This is a massive reduction in code complexity. I will grant that there is something similar to the “expression” problem. Every time there is a new state element introduced it may affect the creation of every node in the DOM. As opposed to every time a UI element is added it may affect every state transition. The first Reddit can be fast, but you have to manage all the updates. The second is slow, but easier to develop. I’m not sure going any lower solves any of that. The React version can be made more efficient through intelligent compilers that are at better at detecting change and doing updates. The React model allows for tooling optimizations. These might well beat hand written changes. The web has complexity also of client/server with long delays and syncing client/server and DOM state, and http protocol. Desktop apps and game engines don’t have these problems.

Re: High-Level Is the Goal

#20

I think the real conclusion is: someone has to make a native cross-platform desktop UI framework that doesn't suck. (Yeah Qt exists, but it really sucks...) Until then, everyone will default to just using the browser for a desktop app, and the beatings will continue. Because of this, I'm really looking forward for PanGUI to step up ( https://www.pangui.io/ ), their UI framework is very promising and I would start usi…

IDK, it seems like old reddit did just fine without even trying that hard. The DOM and surrounding JS API is already a high level GUI framework, and the post illustrates that it's perfectly capable of doing useful interactions >60fps. I personally love working with native code, but the modern browser is capable of producing fast interfaces that saturate human senses without it. If you write JS like a C programmer would, it will usually be quite fast, even if it's not optimal. If you write native apps in C++ like a modern JS programmer - frameworks and deps with abandon - it will be a stuttery mess.

When the DOM is not enough, there's already WebGL and WASM. A vanishingly small sliver of use cases can't saturate human senses with these tools, and the slowest, jankiest websites tend to be the least deserving of them (ie: why is jira slow? It's literally a text box with a handful of buttons on the side!).

Post reply on HN