3 ms·
I understand and I'm trying to troll you but if you need desktop features on your software why can't you just build a desktop app?
by MarvelousWololo 8y ago
I understand and I'm trying to troll you but if you need desktop features on your software why can't you just build a desktop app?
- BjoernKW 8y agoBecause desktop apps lack several features of web applications: - links and open interfaces to other applications. Try exchanging data between two arbitrary desktop apps, for instance. Often copying & pasting or manually re-entering data is your only option in these cases. Yes, that's mostly because vendors treat desktop apps as walled gardens and yes, there are walled gardens on the web, too. The web however was designed with open standards and data exchange in mind. This shows quite clearly in the underlying protocols of the web, which is why when exchanging data between desktop apps, nowadays often HTTP is used, too. ARexx on AmigaOS (and to a limited extent AppleScript on macOS) was the only somewhat widely used technology that allowed desktop apps to communicate with each other in a manner similar to UNIX command-line applications. About the only more widely used way of calling one desktop (or mobile) app from another today ironically are customs URL schemes, which of course are quintessentially a web technology, too. - ease of software distribution and installation. This one's particularly relevant in enterprise environments. Rolling out a new version of a bespoke in-house app to the entire staff and each and every desktop machine in the company with all the individual installation issues that might occur on each local machine is a huge undertaking. Besides, you'd probably still need some sort of server application to synchronise to, which in case of a web application already comes with the package. Browsers on the other hand today are ubiquitous and other than old IE or firewall issues deploying a new version of a web app to users in enterprise contexts by and large works like a charm. - being able to declaratively define UIs. Desktop UI used to be programmed in an imperative manner whereas HTML and CSS work declaratively, which allows for faster development and immediate feedback to changes. A declarative style can make the structure of a UI easier to grasp as well. Another huge advantage of HTML - or rather browser engines - is that for the most part it abstracts over device-specific peculiarities. Again, browser engines being ubiquitous is an enormous benefit because you can expect a (largely) uniform and predictable runtime environment on each potential target device. Pretty much what JRE promised but never quite delivered (on the desktop, that is).