8 ms·
Maybe it turns out web and electron UIs took over the world because web technologies are just a better way of building UIs, and everybody who tries them in earn
by MrPatan 4y ago
Maybe it turns out web and electron UIs took over the world because web technologies are just a better way of building UIs, and everybody who tries them in earnest realizes it.
How about "Every GUI toolkit out there trying to avoid using web tech is going to end up implementing a half-baked implementation of CSS", to coin a phrase.
- dexwiz 4y agoOr no toolkit has more engineering hours as the web toolkit put in. Even with its warts, it has so many more features and tools.
- recuter 4y agoSomebody should just sponsor a minimal browser engine written in Rust. Bet it would be uniquely well suited for it. Wait..
- BiteCode_dev 4y agoWeb UI are amazing to build for, and having the browser for free is fantastic, but if a dev manage to get the essential features without web tech, the end result is usually better. It's most of the time snappier and better integrated. The problem is it's not guarantee, and it's way more expensive and hard. Hence electron being so popular.
- ohgodplsno 4y agoThey are an easier way of building UIs. Better is an opinion. Look at the sheer amount of libraries available for the web made to abstract the dreadful task of maintaining the DOM for you. Additionally, UI work on the web is pretty much only CSS. React doesn't handle drawing elements, it delegates it to the browser. React is the easy part of drawing UIs. You could also make a fancy DSL in Rust for Qt and say "look how bad the web is my UI runs 50 times faster clearly Rust is better at rendering UIs", but we both know that's a lie. Also, CSS is an awful wart and alternatives that have popped up like Compose's Modifier system and CompositionLocals are infinitely better.
- int_19h 4y agoThe biggest problem IMO is the insanely complicated layout system that is the way it is mostly because it was originally meant to handle long text documents. It took a while to bolt on enough things to have decent equivalents of app-centric approach to layout that desktop frameworks have offered for decades, but it still has to integrate with everything else in the spec, and devs need to know exactly what to look for. Ditto for styling. If you compare either to XAML or QML hands on, it quickly becomes clear just how much easier it is to work with the stuff that was designed for apps from the get go.
- pjmlp 4y agoExcept that is usually because many don't get how native toolkits work. Ancient knowledge lost to the druids in the mountains and dead trees instead of TikTok tutorials. This mage will always pick native over Web when given the option, even though Web has paid the bills most of the time since the last 25 years.
- lagniappe 4y ago> native toolkits I get them, but I'm just not interested anymore with 3 desktop and 2 mobile platforms to think about. Sure it makes sense sometimes, but this should be fun.
- pjmlp 4y agoNot everything needs to be cross platform.
- lagniappe 4y agoI just want the most people to use my stuff with the least extra work and maintenance possible. It is personally important to build a future where OS and architecture are not a factor.
- pjmlp 4y agoMost of the software doesn't make it on one platform, let alone on many.
- xboxnolifes 4y agoIs that something we should be proud about?
- pjmlp 4y agoWhy not? Not everything has to be success.
- saidinesh5 4y agoNot really. The problem isn't about stylesheets. For the context, I have worked with Qt, QML, Gtk, jQuery, Sencha/ExtJS, React based codebases at various points of time in my career. Qt, Gtk both support stylesheets and no one complains. Everytime i had to deal with web frontend issues, I keep getting frustrated about how we are trying to make "Application UIs" out of what was meant to be a "Document description framework". Be it in Layouts. Be it in debugging. Be it when creating custom widgets/elements. "You want a button? you have to style a div to get what you want". "You want to center an element vertically? You have to use a table. You have to use these css hacks." "You want to debug the component you've written? Enjoy diving through the div soup". Of course, there's nothing stopping us from being able to use just a Canvas/WebGL/etc.. based frameworks. Hell even the imgui, qt etc.. have webassembly/webgl targets. But so far, they seem to do badly when it comes to content addressability, accessibility and search engine optimization. The only good things I have to say about electron: They have decent free tooling that makes producing cross platform binaries easy/easier than the native alternatives. Accessing http resources in javascript is nicer than trying to do the same in C++/Java/etc... The latter is a very important consideration in this day and age.
- parasti 4y agoYour anecdote about the button and vertical alignment doesn't really hold. Vertical alignment has been a solved problem for many years thanks to flexbox. And obviously, use a <button> tag to make a button.
- seanalltogether 4y agoI couldn't agree more, html was designed as a simple way for users to create documents, not interactive applications. IMO stylesheets are the only good feature from html worth pulling into the app ecosystem, but otherwise I really dislike the trend of bringing web technologies designed to solve the limitation of web pages or stateless servers into desktop/mobile application development.
- thiht 4y ago> how we are trying to make "Application UIs" out of what was meant to be a "Document description framework" We try, we can, and we do. Successfully. > "You want a button? you have to style a div to get what you want". "You want to center an element vertically? You have to use a table. You have to use these css hacks." "You want to debug the component you've written? Enjoy diving through the div soup". Honestly I don’t think you’re entitled to an opinion on this given you obviously haven’t done anything web related in the last 20 years. I mean, even <button> was there from the beginning. Flexbox layout itself is almost 10 years old now. CSS hacks are mostly unheard of since the death of Internet Explorer 9.
- bitL 4y agoDelphi designed in the 90s is still far superior to any web technology for building UI - you can make a complete standalone app in a few hours instead of weeks. IMO JavaScript was pushed by some large corps in order to commoditize developers and also because that was about as much programming as many decision makers were capable of understanding. Now we have the Node.js/React/Electron cancer everywhere making simple things overcomplicated for 99.9% of use cases.
- thiht 4y ago> Delphi designed in the 90s is still far superior to any web technology for building UI Then where is it? Also, I can make a standalone app in a few hours using Electron. I guess it would take me more than a few weeks with Delphi, given that I don’t know anything about it. So your point might just be that you know Delphi and not JavaScript.
- 2muchcoffeeman 4y ago>Then where is it? Of all people, tech workers and enthusiasts should know that being superior doesn't ensure survival.
- thiht 4y agoIt depends how you define superior. I believe Electron and web technologies are superior for UIs given their pragmatism and ubiquity. Are there even Delphi enthusiasts still, or is it just nostalgia? Would the people that claim Delphi is superior use it?
- riceart 4y ago> Are there even Delphi enthusiasts still, or is it just nostalgia? There are. There is a major commercially relevant DAW produced in Delphi. You can figure out which one. > I believe Electron and web technologies are superior for UIs given their pragmatism and ubiquity. This opinion is questionable given a clearly narrow view. Outside of this bubble they aren’t ubiquitous. There are plenty of LOB apps still used and maintained in VB6. One of the most heavily used applications in the US federal government is a C++Builder app (the C++ RAD counterpart to Delphi) - it is a piece of crap, but that’s a factor of the authors not the language - and when it was first released more than 20 years ago it started up in a few seconds on hardware at the time with slow spinning disks! Looking at the vast majority of LOB web apps - nothing has gotten better on that front.