> First of all: why not?
It's inefficient, unnecessarily dangerous, inordinately difficult for the
user to control (if not outright impossible), doesn't work without an
Internet connection, is inherently spyware, and unnecessary. Essentially,
it's all the same problems as SaaSS, with added security risk.
"Why not?" is not a "very good reason" to do something. It's a question.
> With web based programming languages, it's a breeze to create a gui for
your application, while on the desktop you have to deal with a huge jungle of
different libraries like gtk, qt, wxwidgets and so on.
I have no idea how easy it is to design a GUI in an HTML page, but come on,
you can't be serious. You don't need to deal with "a huge jungle" of
different libraries. You just need to choose one of them. There are even
pretty designer GUIs like Qt Designer that you can use.
> All of those require a significant amount of time to get used to their very
own way of creating a graphical frontend, showing buttons, forms, tabs,
reacting on events - all the stuff that a browser can do easily and in a very
intuitive way with html and javascript.
Are you implying that HTML and JavaScript don't have to be learned?
> Your app will very likely run on any device, at least if you take care, it
can be even used with smartphones and tablets.
Yeah, if that device has an Internet connection, and your server serving that
Web app is still up, and all HTML features your Web app depends on are
supporded and enabled. But you're approaching this from the standpoint of a
developer who wants their app to be popular. I'm sorry, but the popularity of
your app, as a developer, is egotistical and unimportant. What matters is the
liberty of the users.
> Why should I spent time and effort to learn a desktop gui library whose
future is uncertain and radius is limited in order to create an app that a
lot of people will not bother to download and install?
Are we even on the same page here? I don't have a problem with using
JavaScript as a language. I have a problem with embedding JavaScript code, or
any software, into Web pages. If all you want to do is use HTML and
JavaScript to write a desktop application that runs locally, have at it. Send
people the download the exact same way you would any other download. You can
even bundle in an HTML and JavaScript interpreter for good measure. This is
very different from making users visit a Web page any time they want to use
an app. It's not a Web application (it's not accessed through the Web), just
a local JavaScript application.