8 ms·
I don't understand why more resources aren't being put into Qt and making that easier to use or building a more "web-developer-friendly" abstraction layer on to
by hanniabu 6y ago
I don't understand why more resources aren't being put into Qt and making that easier to use or building a more "web-developer-friendly" abstraction layer on top.
- heavyset_go 6y agoQt's QML + QtQuick follow the declarative and reactive programming paradigms and use JavaScript, and were released before React existed.
- ognarb 6y agoAnd it has a very nice developer experience :)
- danShumway 6y agoI don't know if they've changed their approach over the past year, but the last time I looked at Qt demos for the web, I was solidly unimpressed. At the time, they were making almost all of the same mistakes that Flutter is, and the devs I talked to seemed to be of the opinion that those problems wouldn't be fixed until browsers started adding brand new capabilities specifically for them. Looking now at the demos at https://www.qt.io/qt-examples-for-webassembly https://www.qt.io/qt-examples-for-webassembly, a lot of the same problems are jumping out at me. A complete lack of accessibility features, poor handling of scroll events, large load times, unfocusable fields, lack of keyboard controls, etc... Halfway through playing with their pizza app, the page just froze and stopped responding to any clicks at all. Maybe those demos are outdated? Blazor and Rust are showing a lot of promise here, but from what I know about Qt I'm much less optimistic, because Qt is used to handling everything about rendering itself -- and as Flutter is showing that's just not a good approach to building web GUI frameworks. But (again, purely from what I've seen) trying to layer on a system where Qt is actually interacting with the DOM seems like it would require a somewhat difficult shift in its architecture. Maybe I'm misunderstanding the problem though.
- gagege 6y agoWhoa, yeah, none of those Qt demos are good or even seem to work properly. Yikes.
- 0xFluegel 6y ago> Looking now at the demos at https://www.qt.io/qt-examples-for-webassembly https://www.qt.io/qt-examples-for-webassembly, a lot of the same problems are jumping out at me. A complete lack of accessibility features, poor handling of scroll events, large load times, unfocusable fields, lack of keyboard controls, etc... I found that hard to believe. But, clicking that link and trying the pizza demo... Yikes. It's not exaggerated at all.
- hnedeotes 6y agoQt for WebAssembly: Pizza Shop Application exit (TypeError: undefined is not an object (evaluating 'handle[name]'))
- sombersonder 6y agoMay I ask what browser and version you ran this in? It does look dated but ran okay for me on Firefox 86 and Chrome 89.
- hnedeotes 6y agoYeap, Safari 14.0.3
- barbarbar 6y agoWhen I try that link I get: RangeError: WebAssembly.Memory(): could not allocate memory So no pizza demo for me.
- ognarb 6y agoFor the moment the only useful usecase of qt for webassembly I found is: https://qmlonline.kde.org/ https://qmlonline.kde.org/ It's really useful to share some bits of QML but otherwise I wouldn't recommend using Qt for the web as much as I wouldn't recommend to use Flutter for the web.
- qbasic_forever 6y agoIsn't the licensing for Qt a very curious and weird quagmire? Maybe it's better these days but I remember about 10 years ago there was a weird divide and unanswered questions about if you could really take a bet on using Qt and not be violating GPL.
- heavyset_go 6y agoIt's better these days. For desktop application development, Qt is available under the LGPL and the Qt commercial license. Qt for WebAssembly is available under the GPL3 and the Qt commercial license, though.
- lmm 6y agoNo. 10 years ago it was 100% fine. About 25 years ago there was a licensing issue, and the Gnome project talks about it as their reason to exist to this day (which amounts to spreading FUD at this point, IMO).
- smoldesu 6y agoQT isn't neccesarily a crowd pleaser, and in 2020 it's starting to look a little long in the tooth. Don't get me wrong though, I love QT on the desktop, and it powers some of my favorite software out there. Ultimately though, I don't think QT's fate is on the web.
- ryandrake 6y agoI don't even fully understand why "cross-platform UI development" is such a holy grail. Is it that expensive to separate your business logic from UI and write the small UI layer in whatever the platform's "best practice" native language is? Is it that hard to find developers who know more than one programming language? With a lot of these frameworks and higher level abstractions, if you go off the toy-app happy path, you end up fighting the framework and tools more than you're writing your app anyway.
- hamandcheese 6y ago> Is it that expensive to separate your business logic from UI and write the small UI layer in whatever the platform's "best practice" native language is? I mean... yes? There is a ton of incidental complexity (i.e. unrelated to the business domain) involved in creating nice user experiences. If dev salaries weren’t so high then sure, more companies would probably spend the money to repeat the same work across several platforms, but right now? No way. That said, I still think I agree that you give up more than you gain by going cross platform, at least for now, but I totally get how companies look at how much it’s costs to hire and says “you know what? I’ll take a cross-platform compromise”
- tiborsaas 6y ago+1 Furthermore users don't care about the technology used to build the application if it works, that's the unfortunate reality.
- signal11 6y agoUsers are not knowledgable enough to know what technology was used to build a product, but many have repeatedly complained about non-native UIs. Heck, Lotus Notes went from being a market leader to an also-ran and user complaints about UX to corporate IT departments definitely played a role in convincing those departments in switching away. More recently, this also happened with many mobile apps made with cross platform/HTML5 toolkits. They got low review scores and low user engagement across many firms, prompting a switch to native.
- deleted 6y ago[deleted]