It's pretty clear to me that JavaScript is becoming the de facto standard for UI/UX programming, regardless of platform, and regardless of web vs. native targets. Even GNOME has JavaScript bindings. [0]
Same thing with KDE Plasma and its UIs being written in QML, which allows better separation of business logic (written in C++) and graphical interface (QML Javascript).
The problem is performance... requiring a web browser to draw a UI takes a LOT of CPU and memory, and not all devices have enough power to deliver a smooth experience across all potential workloads.
I worry that every year we keep increasing our processing requirements and bloat without good reason for it.
Why should every Windows release require a faster and faster CPU, and more and more RAM?
The recommended amount of memory for Windows 95 was 8 megabytes, and for Windows 11 it is 8 gigabytes. Why is this not horrifying?
My small Linux system with openbox GUI barely cracks 100MB memory usage in 2025.
Have you used other ones? Not a dig, I've primarily used HTML/CSS for UIs and have been playing around with Compose recently and haven't made up my mind what I like more.
GNOME has its own interpreter, kinda how React Native does it for mobile. But performance all boils down to the layout engine. Most native UI components take shortcuts with text which is the most difficult thing to render. And the widget tree is simpler.
And there’s the whole inspector in web browser, meaning that the layout is not done once and forget. There’s various sub components still present for whatever features. Great in the browser, not great for standalone apps.
A choice of tech stack can never be enough to prove anything. It only establishes a lower bound on resource usage, but there is never and upper bound as long as while() and malloc() are available.
It's pretty clear to me that JavaScript is becoming the de facto standard for UI/UX programming, regardless of platform, and regardless of web vs. native targets. Even GNOME has JavaScript bindings. [0]
[0]: https://gjs.guide/
Same thing with KDE Plasma and its UIs being written in QML, which allows better separation of business logic (written in C++) and graphical interface (QML Javascript).
Personally I love it. HTML/CSS is still the best, most well documented and familiar gui framework
The problem is performance... requiring a web browser to draw a UI takes a LOT of CPU and memory, and not all devices have enough power to deliver a smooth experience across all potential workloads.
I worry that every year we keep increasing our processing requirements and bloat without good reason for it.
Why should every Windows release require a faster and faster CPU, and more and more RAM?
The recommended amount of memory for Windows 95 was 8 megabytes, and for Windows 11 it is 8 gigabytes. Why is this not horrifying?
My small Linux system with openbox GUI barely cracks 100MB memory usage in 2025.
14 replies →
Have you used other ones? Not a dig, I've primarily used HTML/CSS for UIs and have been playing around with Compose recently and haven't made up my mind what I like more.
1 reply →
html/css yes
js? get that thing off of me
Atwood's law strikes again[0]
[0]: https://en.wikipedia.org/wiki/Jeff_Atwood
From what I have seen, most of the current GNOME UI is in fact just javascript. And any plugins people write for it are also javascript.
GNOME has its own interpreter, kinda how React Native does it for mobile. But performance all boils down to the layout engine. Most native UI components take shortcuts with text which is the most difficult thing to render. And the widget tree is simpler.
And there’s the whole inspector in web browser, meaning that the layout is not done once and forget. There’s various sub components still present for whatever features. Great in the browser, not great for standalone apps.
This was a false rumor: https://news.ycombinator.com/item?id=44124688
It confirms that indeed React Native is used, and not React.js/WebView, in case someone got confused.
It's used for a specific component in the start menu, it doesn't power the entire start menu.
What the fuck. Does that mean alternative start menus (e.g. Stardock Start11) are provably faster & lighter on resources?
Not by virtue of that alone.
A choice of tech stack can never be enough to prove anything. It only establishes a lower bound on resource usage, but there is never and upper bound as long as while() and malloc() are available.