People say that development of a Web GUI is less expensive than a "native" one (4 times IIRC, although IDK how it's measured: by time or costs).
But I don't quite understand why — almost any "native" cross-platform GUI should be way less prone to all sorts of technical debts than a JS "webapp".
I have a theory, that it's just because the Web allows the degrees of flakiness which are hard to reach with a "native" GUI applications…
The users don't value the reliability anyhow. Sigh.
This is actually not specific to GUI, just well-illustrated by it. This whole backwards motion in s/w dev't. Wish I knew how to interpret it. Is this a signal to leave or what?
@amiloradovsky less developers needed. And those are quite costly.
@dpwiz Sure, but why? "Web dev" is about intentionally using way inferior technologies requiring more manual work, no?
@amiloradovsky idk. Native tooling is pretty shitty too.
@dpwiz Shittiness is also relative, and the differences appear to be orders of magnitude.
re: complaints, IT
@blobyoumu How come that it's cheaper, if the programs are harder to debug and avoid bugs in the first place?
@blobyoumu Even easier — just don't.
BTW, TypeScript is a joke. Just like the "types" in Python, for example.
There are not many good cross platform GUIs that devs like to use though. And relying on JS/HTML makes it easy to develop both a website and an app using Electron. It sucks for users but the reason why it happens is pretty obvious.
@boilingsteam That's my point — the user is not a friend of the developer — the user wants what the developer wants to avoid dealing with.
The user wants a flaky, barely functioning software, yesterday. While the developer doesn't derive any pleasure from working that… more so knowing that this kind of work is going to make a lot of the users suffer in the not so long run. And even more so knowing that working on shitty software is going to destroy the good habits.
@amiloradovsky @boilingsteam Like @boilingsteam said. I did had to study the cost for a new version of the app for where I was working... The user reach you can have with a simple web-app compared to any "native" solution is really big and can justify the cost to switch (from native) alone. Just the "step" to install anything, even the electron-based web app, is a big stopper these days...
It's harder if you have never developed in Qt. Lack of familiarity is a cost. For a full stack dev whose tools is React/JS or other similar frameworks, Qt is not even on the radar and they are not going to learn Qt on the job. Even staying up to date with Web frameworks is already a huge investment of time these days.
@EP1CNESS …and if you don't want to make pot-boilers — quit "programming"…
@amiloradovsky I think it's simpler than all that: develop for one platform (web) or for Windows & Mac & Android & iOS (let's not kid ourselves that they're considering Linux here). Even if each is a bit easier, there's 4-5 of them.
@tfb So keeping a web browser, with all it's APIs, working on multiple platforms is easier than a translator and GUI library? It's counter-intuitive to say the least.
@amiloradovsky Pretty sure the usual system is to test on chrome. Full stop.
@amiloradovsky But I agree with you that there is a general vision of computer systems as being magical, even for developpers, and as a consequence, developpers tend to ignore resilience in their design choices 🙁
@amiloradovsky I think it's also because a web app is cross platform automatically while cross platform native development usually means maintaining multiple code bases and having to deal with a bunch of proprietary locked down stores to distribute the applications. 😐
@hugot WRT platform-dependence — not actually: the cross-platform libraries provide no less of APIs, abstracting away the underlying OS, yet without the restrictions and penalties of the browser.
WRT proprietary stores and distribution in general — that may be indeed a big reason.
@amiloradovsky That is true for the GUI toolkit, but any library used in a program will need to be cross platform as well. I think it's unfortunately never as simple as just using something like QT and being done with it, there will always be exceptions and different things to take into account on different platforms. Especially when trying to do something non-trivial :/
My personal policy is to only support linux when I build software, but I mostly build server stuff and docker exists so.. :p
@hugot But the browser APIs are limited as well. And all the JS libraries are bound to work within those limitations. I doubt the "native" UI libraries are more limited in this regard.
@amiloradovsky Thinking about it more, in the case of a front end application where all you need is a http lib to call REST endpoints, yeah cross platform wouldn't be more work at all!
The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!